-
Notifications
You must be signed in to change notification settings - Fork 0
How to configure readyscript
Readyscript needs an UDP port to be open. We won't provide any help on how to do that because it's different for every computer. Do whatever you have to do to open it. Of course, the server also needs that port open.
Now it's time to change the settings on our config.ini. This way we can customize our server info, commands, messages, admin list...
The file already comes with predefined values to make it easy to understand how it works, but here's a description of what every line means.
-
ip: Here we'll put our server IP with one of the following patterns:- XXX.XXX.XXX.XXX:XXXXX -> The IP followed by a colon and server's port.
- XXX.XXX.XXX.XXX -> Only the IP. It will try to connect to the server using HLDS' default port (27015).
- domainname.tld:27015 -> A domain name followed by a colon and server's port.
- domainname.tld -> Only the domain. It will try to connect to the server using HLDS' default port (27015).
-
rcon: Server's rcon_password. -
udpport: The UDP port number that was opened previously. -
lanip: The local IP of the computer running the script.Note: This is optional BUT we recommend setting this manually, although you can leave this blank if you don't know which IP the computer is using an the script will take care for you, taking a little longer to connect to the server.
-
wanip: The public IP of the computer running the script.Note: Same as
lanip. -
rdyloop: A number representing the seconds that the script will wait before saying message[1] (The one that tells the users how to be not/ready) again. -
players: The amount of players that will play the match, counting both teams. 5on5 -> 10. -
mr: The amount of rounds played per side. 15 has been the default rule for years. -
otmoney: The amount of money at the start of the round (mp_startmoney) on the overtime. -
otmr: Same asmrbut for the overtime. -
hltv: Name of the HLTV Proxy that will join the server after using the command[15] (.hltvrec). -
hltvpath: A path in the computer running the script to the HLTV executable. -
hltvdelay: A number representing the delay (delay) between the HLTV and the actual game.
Here's the list of available commands, its default name and an explanation on how they are used:
-
command[1]: (.ready) Sets yourself as 'ready' to play. -
command[2]: (.notready) Sets yourself as 'not ready' to play. -
command[3]: (.rdy) Alternative tocommand[1] -
command[4]: (.notrdy) Alternative tocommand[2] -
command[5]: (.info) Shows how many players are 'ready' -
command[6]: (.time) Shows the actual time. -
command[18]: (.score) Shows the actual score. -
command[22]: (.admins) Shows which players in the server are admins.
-
command[7]: (.warmup) Executes the commands inwarmup.cfg. -
command[8]: (.restart) Restarts the half being played. -
command[9]: (.stopscript) Stops the script. It will remain that way untilcommand[10]gets executed. -
command[10]: (.resumescript) Resumes the script. -
command[11]: (.setup [X_on_X mr_Y_]) Sets the amount ofplayersandmr. Also stops the current match and executeswarmup.cfg. Usage:_.setup 5on5 mr15_ <Server> 5on5 mr15 settings loaded! -
command[12]: (.kick [partial name]) Kicks the player who'snamecontains the parameter given. Can't kick master admins but can kick other admins. Usage:.kick cheat <Server> cheater kicked! -
command[13]: (.map [name without .bsp]) Changes the map which name is equal to the parameter. Usage:.map de_dust2 <Server> Map will be changed to de_dust2! -
command[14]: (.rr) Executessv_restart 1. -
command[15]: (.hltvrec [demo name]) Runs HLTV and makes it connect to the server and record a demo with the given parameter as a name. Usage:.hltvrec demo <Server> HLTV is connecting! -
command[16]: (.hltvstop) Stops the current HLTV recording and disconnects it from the server. -
command[17]: (.fready) Forces every player to be ready and starts the current half. -
command[21]: (.pw [new password]) Changes the password of the server (sv_password). Usage:.pw pcw <Server> Password is now "pcw"! -
command[23]: (.restartscript) Stops the match and restarts the script without changing the setup (players&mr).
-
command[17]: (.adminadd [partial name]) Add to the list of admins the player whose name partially matches the parameter. Usage:.adminadd aquila <Server> aquilaftw is admin! -
command[17]: (.adminrem [partial name]) Removes from the list of admins the player whose name partially matches the parameter. Cannot remove other master admins. Usage:.adminrem baz <Server> bazoo is not admin!
Here you can create you own commands and the server will respond to them. Note that this is for admins only (for now).
The commands are separated by semicolons (;), just like the way commands are separated in CS/HLDS. Usage in config.ini:
.help=say "Commands: .ready, .notready, .rdy, .notrdy"; say "Commands: .info, .time, .score, .admins"
Usage in game:
.help
<Server> Commands: .ready, .notready, .rdy, .notrdy
<Server> Commands: .info, .time, .score, .admins
This is a list of what triggers every message. Some of them proccess special text before sending the message. The messages that do this will have on them a list of the words between { and }. The explanation of what every word mean is the following:
%Player% is the name of the player that used the command or the target of an action (kick, adminadd...).
%Count% is the amount of players ready.
%MaxPlayers% is the amount of players needed to start.
%xonx% is the players that will have each team.
%mr% is the amount of rounds per half.
%Score1% is the score of the CT team in the actual half.
%Score2% is the score of the T team in the actual half.
%SumScore1% is the total score of the CT team.
%SumScore2% is the total score of the T team.
%hour%, %min%, %sec% are the actual hour, minutes and seconds respectively.
%day%, %mon%, %year% are the actual day, month and year respectively.
%Map% is the map to be changed.
%Admins% is a list of admins.
%Pass% is the server's sv_password.
%otmoney% is the mp_startmoney that will be used in the overtime.
%otmr% is the amount of rounds per half in the overtime.
-
message[1]: Message that will show in a loop. Used to inform the players on how to get ready. -
message[2]: When somebody usescommand[1/3](.ready/.rdy) and wasn't ready. {%Player%} -
message[3]: When somebody usescommand[2/4](.notready/.notrdy). {%Player%} -
message[4]: When somebody usescommand[5](.info). {%Count%, %MaxPlayers%} -
message[5]: When somebody usescommand[1/3](.ready/.rdy) and was already ready. {%Player%} -
message[6]: When warmup config is loaded. -
message[7]: When admin usescommand[11](.setup). {%xonx%, %mr%} -
message[8]: When admin usescommand[9](.stopscript) -
message[9]: When admin usescommand[10](.resumescript) -
message[10]: When user tries to use admin commands. {%Player%} -
message[11]: When the first half ends. {%Score1%, %Score2%} -
message[12]: RESERVED. -
message[13]: When a match starts, after the 3 restarts. -
message[14]: When all the players are ready to start the first half of the match. -
message[15]: When all the players are ready to start the second half of the match. -
message[16]: When somebody usescommand[6](.time).{%hour%, %min%, %sec%, %day%, %mon%, %year%} -
message[17]: When admin restarts the first half. -
message[18]: When admin restarts the second half. -
message[19]: When a match starts, after the 3 restarts. Right aftermessage[13] -
message[20]: After every round or when somebody usescommand[18](.score) and at the end of the first half. {%Score1%, %Score2%} -
message[21]: TODO {%Score1%, %Score2%, %SumScore1%, %SumScore2%} -
message[22]: When some team wins the match. {%Score1%, %Score2%} -
message[23]: When master/admin usescommand[12/19/20](.kick/.adminadd/.adminrem) and fails to find a player. -
message[24]: When admin usescommand[12](.kick) and the player gets kicked. {%Player%} -
message[25]: When admin usescommand[15](.hltvrec) and HLTV join the server. -
message[26]: When admin usescommand[15](.hltvrec) and HLTV was already connected. -
message[27]: When admin usescommand[16](.hltvstop) and HLTV was connected. -
message[28]: When admin usescommand[16](.hltvstop) and HLTV wasn't connected. -
message[29]: RESERVED. -
message[30]: RESERVED. -
message[31]: RESERVED. -
message[32]: RESERVED. -
message[33]: RESERVED -
message[34]: When master admin usescommand[19](.adminadd) and the player is already an admin. {%Player%} -
message[35]: When master admin usescommand[19](.adminadd) and the player is added as admin. {%Player%} -
message[36]: When master admin usescommand[20](.adminrem) and the player is removed from the admin lsit. {%Player%} -
message[37]: When master admin usescommand[20](.adminrem) and the player is a master admin. {%Player%} -
message[38]: When admin usescommand[19/20](.adminadd/.adminrem). -
message[39]: When admin usescommand[13](.map) and the server doesn't have the map. {%Map%} -
message[40]: When admin usescommand[13](.map) and the server has the map. {%Map%} -
message[41]: When somebody usescommand[18](.score) and game has not started yet. -
message[42]: When admin usescommand[11](.setup) and sets more than 20 rounds. -
message[43]: When somebody usescommand[22](.admins). {%Admins%} -
message[44]: When admin usescommand[21](.pw). {%Pass%} -
message[45]: When the match ends in a draw. {%SumScore1%, %SumScore2%} -
message[46]: When all the players are ready to start the first half of the overtime. -
message[47]: When all the players are ready to start the second half of the overtime. -
message[48]: Whenever a half of the overtime starts. {%otmr%, %otmoney%} -
message[49]: When admin usescommand[23](.restartscript).
Here you can set a list of player that will be able to use admin commands. There are 2 different levels of admin: normal and master. The difference is that master admins can also use command[21/22] (.adminadd/.adminrem) and normal admin cannot.
To set an admin, give it a number and an SteamID (You can get a player's SteamID by using the command status in your game console).
admin[1]=0:1:38165251
To also set him as master admin, just put an asterisk (*) at the end of the SteamID, like this:
admin[1]=0:1:38165251*
Just do not set any log command to 0 and everything should be fine.