]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - commands.cfg
9218af379ebd818c7dc8f68d3ab3066e957684fb
[xonotic/xonotic-data.pk3dir.git] / commands.cfg
1 // =================================================================
2 //  Master config for managing various command aliases and settings
3 // =================================================================
4
5 // Execute commands based on whether it is dedicated a server or a client.
6 alias "_detect_dedicated_$qport" "${* asis}"
7 alias "_detect_dedicated_0" ""
8 alias _if_dedicated "_detect_dedicated_$qport ${* asis}"
9 alias if_client "${* asis}"
10 alias if_dedicated "${* asis}"
11 _if_dedicated alias if_client ""
12 if_client alias if_dedicated ""
13
14 // for easy access by QC
15 if_dedicated set is_dedicated 1
16 if_client    set is_dedicated 0
17
18 if_dedicated "alias" qc_cmd_sv     "sv_cmd $$*"
19 if_client    "alias" qc_cmd_sv     "sv_cmd $$*"
20 // if_client    "alias" qc_cmd_sv     "echo This command only works on servers: sv_cmd $${* !}"
21 if_dedicated "alias" qc_cmd_cl     "echo This command only works on clients: cl_cmd $${* !}"
22 if_client    "alias" qc_cmd_cl     "cl_cmd $$*"
23 if_dedicated "alias" qc_cmd_cmd    "echo This command only works on clients: cmd $${* !}"
24 if_client    "alias" qc_cmd_cmd    "cmd $$*"
25
26 if_dedicated "alias" qc_cmd_svmenu "sv_cmd $$*"
27 if_client    "alias" qc_cmd_svmenu "menu_cmd $$*"
28 if_dedicated "alias" qc_cmd_svcl   "sv_cmd $$*"
29 if_client    "alias" qc_cmd_svcl   "cl_cmd $$*"
30 if_dedicated "alias" qc_cmd_svcmd  "sv_cmd $$*"
31 if_client    "alias" qc_cmd_svcmd  "cmd $$*"
32
33 if_dedicated "alias" help "sv_cmd help"
34 if_client    "alias" help "cl_cmd help; cmd help"
35
36
37 // ========
38 //  common
39 // ========
40 // networked/server common commands
41 alias cvar_changes         "qc_cmd_svcmd  cvar_changes         ${* ?}" // Prints a list of all changed server cvars
42 alias cvar_purechanges     "qc_cmd_svcmd  cvar_purechanges     ${* ?}" // Prints a list of all changed gameplay cvars
43 alias editmob              "qc_cmd_svcmd  editmob              ${* ?}" // Modifies a monster or all monsters
44 alias info                 "qc_cmd_svcmd  info                 ${* ?}" // Request for unique server information set up by admin
45 alias ladder               "qc_cmd_svcmd  ladder               ${* ?}" // Get information about top players if supported
46 alias lsmaps               "qc_cmd_svcmd  lsmaps               ${* ?}" // List maps which can be used with the current game mode
47 alias printmaplist         "qc_cmd_svcmd  printmaplist         ${* ?}" // Display full server maplist reply
48 alias rankings             "qc_cmd_svcmd  rankings             ${* ?}" // Print information about rankings
49 alias records              "qc_cmd_svcmd  records              ${* ?}" // List top 10 records for the current map
50 alias teamstatus           "qc_cmd_svcmd  teamstatus           ${* ?}" // Show information about player and team scores
51 alias time                 "qc_cmd_svcmd  time                 ${* ?}" // Print different formats/readouts of time
52 alias timein               "qc_cmd_svcmd  timein               ${* ?}" // Resume the game from being paused with a timeout
53 alias timeout              "qc_cmd_svcmd  timeout              ${* ?}" // Call a timeout which pauses the game for certain amount of time unless unpaused
54 alias vote                 "qc_cmd_svcmd  vote                 ${* ?}" // Request an action to be voted upon by players
55 alias who                  "qc_cmd_svcmd  who                  ${* ?}" // Display detailed client information about all players
56
57 // generic commands (across all programs)
58 alias addtolist            "qc_cmd_svmenu addtolist            ${* ?}" // Add a string to a cvar
59 alias bufstr_get           "qc_cmd_svmenu bufstr_get           ${* ?}" // Examine a string buffer object
60 alias cvar_localchanges    "qc_cmd_svmenu cvar_localchanges    ${* ?}" // Print locally changed cvars
61 alias dumpcommands         "qc_cmd_svmenu dumpcommands         ${* ?}" // Dump all commands on the program to *_cmd_dump.txt
62 alias dumpnotifs           "qc_cmd_svmenu dumpnotifs           ${* ?}" // Dump all notifications into notifications_dump.txt
63 alias dumpitems            "qc_cmd_svmenu dumpitems            ${* ?}" // Dump all items to the console
64 alias dumpturrets          "qc_cmd_svmenu dumpturrets          ${* ?}" // Dump all turrets into turrets_dump.txt
65 alias dumpweapons          "qc_cmd_svmenu dumpweapons          ${* ?}" // Dump all weapons into weapons_dump.txt
66 alias find                 "qc_cmd_svmenu find                 ${* ?}" // Search through entities for matching classname
67 alias findat               "qc_cmd_svmenu findat               ${* ?}" // Search through entities for matching origin
68 alias maplist              "qc_cmd_svmenu maplist              ${* ?}" // Automatic control of maplist
69 alias mx                   "qc_cmd_svmenu mx                   ${* ?}" // Send a matrix command
70 alias nextframe            "qc_cmd_svmenu nextframe            ${* ?}" // Execute the given command next frame of this VM
71 alias qc_curl              "qc_cmd_svmenu qc_curl              ${* ?}" // Queries a URL
72 alias removefromlist       "qc_cmd_svmenu removefromlist       ${* ?}" // Remove a string from a cvar
73 alias restartnotifs        "qc_cmd_svmenu restartnotifs        ${* ?}" // Re-initialize all notifications
74 alias rpn                  "qc_cmd_svmenu rpn                  ${* ?}" // RPN calculator
75 alias runtest              "qc_cmd_svmenu runtest              ${* ?}" // Run unit tests
76 //alias settemp            "qc_cmd_svmenu settemp              ${* ?}" // Temporarily set a value to a cvar which is restored later
77 //alias settemp_restore    "qc_cmd_svmenu settemp_restore      ${* ?}" // Restore all cvars set by settemp command
78 alias version              "qc_cmd_svmenu version              ${* ?}" // Print the current version
79
80 // other aliases for common commands
81 alias g_hitplots_add "qc_cmd_svmenu rpn /g_hitplots_individuals g_hitplots_individuals ${1 !} union def"
82 alias g_hitplots_remove "qc_cmd_svmenu rpn /g_hitplots_individuals g_hitplots_individuals ${1 !} difference def"
83
84 alias g_maplist_add     "qc_cmd_svmenu maplist add ${* ?}"
85 alias g_maplist_remove  "qc_cmd_svmenu maplist remove ${* ?}"
86 alias g_maplist_putfirst        "qc_cmd_svmenu maplist remove ${* ?} ; qc_cmd_svmenu maplist add ${* ?}"
87 alias g_maplist_shufflenow      "qc_cmd_svmenu maplist shuffle"
88 alias g_maplist_cleanup "qc_cmd_svmenu maplist cleanup" // removes maps that don't exist from the map list
89
90 alias addfav "qc_cmd_svmenu addtolist net_slist_favorites ${* ?}"
91 alias delfav "qc_cmd_svmenu removefromlist net_slist_favorites ${* ?}"
92 alias addvote "qc_cmd_svmenu addtolist sv_vote_commands ${* ?}"
93 alias delvote "qc_cmd_svmenu removefromlist sv_vote_commands ${* ?}"
94
95
96 // ========================
97 //  engine command aliases
98 // ========================
99 alias bsp "ls maps/*.bsp"
100 alias chmap "changelevel ${* ?}"
101 alias clearmap "disconnect"
102 alias devmap "set _developer_save $developer; set developer 1; changelevel ${* ?}; set developer $_developer_save"
103 alias ply "playdemo $1"
104 alias rec "record demos/${1 !}"
105 alias search "apropos ${* ?}"
106 alias sv_loadconfig "exec $serverconfig"
107 alias sv_restart "say \"Server will restart at the end of the match, you will all be reconnected automatically. ${* ?} \"; quit_and_redirect self"
108 alias tdem "timedemo $1"
109
110
111 // ===============================================
112 //  menu_cmd (menu command) - menu/command/menu_cmd.qc
113 // ===============================================
114 alias menu_showteamselect "menu_cmd directmenu TeamSelect"
115 alias menu_showhudexit "menu_cmd directmenu HUDExit"
116 alias menu_showhudoptions "menu_cmd directpanelhudmenu ${* ?}"
117 alias menu_showsandboxtools "menu_cmd directmenu SandboxTools"
118 alias menu_showquitdialog "menu_cmd directmenu Quit"
119 alias menu_showmonstertools "menu_cmd directmenu MonsterTools"
120
121 // command executed before loading a map by the menu
122 // makes sure maxplayers is at least minplayers or minplayers_per_team * 4 or bot_number + 1
123 alias _menu_loadmap_prepare_maxpl "maxplayers $_menu_loadmap_maxplayers"
124 alias menu_loadmap_prepare "disconnect; wait; g_campaign 0; menu_cmd rpn /_menu_loadmap_maxplayers menu_maxplayers minplayers bot_number 1 add max minplayers_per_team 4 mul max max def; _menu_loadmap_prepare_maxpl; g_maplist_shufflenow"
125
126
127 // ==========================================================
128 //  cl_cmd (client local command) - client/command/cl_cmd.qc
129 // ==========================================================
130 // commented out commands are really only intended for internal use
131 alias blurtest             "qc_cmd_cl     blurtest             ${* ?}" // Feature for testing blur postprocessing
132 alias boxparticles         "qc_cmd_cl     boxparticles         ${* ?}" // Spawn particles manually
133 alias create_scrshot_ent   "qc_cmd_cl     create_scrshot_ent   ${* ?}" // Create an entity at this location for automatic screenshots
134 alias debugmodel           "qc_cmd_cl     debugmodel           ${* ?}" // Spawn a debug model manually
135 //alias handlevote         "qc_cmd_cl     handlevote           ${* ?}" // System to handle selecting a vote or option
136 alias hud                  "qc_cmd_cl     hud                  ${* ?}" // Commands regarding/controlling the HUD system
137 alias localprint           "qc_cmd_cl     localprint           ${* ?}" // Create your own centerprint sent to yourself
138 //alias mv_download        "qc_cmd_cl     mv_download          ${* ?}" // Retrieve mapshot picture from the server
139 alias sendcvar             "qc_cmd_cl     sendcvar             ${* ?}" // Send a cvar to the server (like cl_weaponpriority)
140 alias weapon_find          "qc_cmd_cl     weapon_find          ${* ?}" // Show spawn locations of a weapon
141
142 alias exit                 "quit"
143
144 // other aliases for local commands
145 alias hud_configure "qc_cmd_cl hud configure"
146 alias hud_save "qc_cmd_cl hud save ${* ?}"
147 alias radar "qc_cmd_cl hud radar ${* ?}"
148 alias scoreboard_columns_help "qc_cmd_cl hud scoreboard_columns_help"
149 alias scoreboard_columns_set "qc_cmd_cl hud scoreboard_columns_set ${* ?}"
150
151
152 // ========================================================
153 //  cmd (client-to-server command) - server/command/cmd.qc
154 // ========================================================
155 set sv_clientcommand_antispam_time 1 "Amount of seconds after a command before another command can be called again without being considered spam. (Use -1 for no antispam limit)"
156 set sv_clientcommand_antispam_count 8 "Amount of commands considered spam before commands are rejected."
157 seta sv_status_privacy 1 "hide IP addresses from \"status\" and \"who\" replies shown to clients"
158 seta cl_autoswitch 1 "automatically switch to newly picked up weapons if they are better than what you are carrying"
159
160 // commented out commands are really only intended for internal use, or already have declaration in the engine
161 alias autoswitch           "qc_cmd_cmd    autoswitch           ${* ?}" // Whether or not to switch automatically when getting a better weapon
162 alias clientversion        "qc_cmd_cmd    clientversion        ${* ?}" // Release version of the game
163 alias join                 "qc_cmd_cmd    join                 ${* ?}" // Become a player in the game
164 alias minigame             "qc_cmd_cmd    minigame             ${* ?}" // Start a minigame
165 //alias mv_getpicture      "qc_cmd_cmd    mv_getpicture        ${* ?}" // Retrieve mapshot picture from the server
166 alias physics              "qc_cmd_cmd    physics              ${* ?}" // Change physics set
167 alias ready                "qc_cmd_cmd    ready                ${* ?}" // Qualify as ready to end warmup stage (or restart server if allowed)
168 //alias say                "qc_cmd_cmd    say                  ${* ?}" // Print a message to chat to all players
169 //alias say_team           "qc_cmd_cmd    say_team             ${* ?}" // Print a message to chat to all team mates
170 alias selectteam           "qc_cmd_cmd    selectteam           ${* ?}" // Attempt to choose a team to join into
171 alias selfstuff            "qc_cmd_cmd    selfstuff            ${* ?}" // Stuffcmd a command to your own client
172 alias sentcvar             "qc_cmd_cmd    sentcvar             ${* ?}" // New system for sending a client cvar to the server
173 alias spectate             "qc_cmd_cmd    spectate             ${* ?}" // Become an observer
174 alias suggestmap           "qc_cmd_cmd    suggestmap           ${* ?}" // Suggest a map to the mapvote at match end
175 //alias tell               "qc_cmd_cmd    tell                 ${* ?}" // Send a message directly to a player
176 alias voice                "qc_cmd_cmd    voice                ${* ?}" // Send voice message via sound
177 alias wpeditor             "qc_cmd_cmd    wpeditor             ${* ?}" // Waypoint editor commands
178
179 // other aliases for client-to-server commands
180 alias autoswitch "set cl_autoswitch ${1 ?} ; cmd autoswitch ${1 ?}" // todo
181
182 alias team_red "cmd selectteam red; cmd join"
183 alias team_blue "cmd selectteam blue; cmd join"
184 alias team_pink "cmd selectteam pink; cmd join"
185 alias team_yellow "cmd selectteam yellow; cmd join"
186 alias team_auto "cmd selectteam auto; cmd join"
187
188 alias spec "spectate ${* ?}"
189
190 // mutator aliases
191 alias sandbox "cmd g_sandbox ${* ?}"
192
193
194 // monster aliases
195 alias killmob "editmob kill ${* ?}"
196 alias spawnmob "editmob spawn ${* ?}"
197 alias skinmob "editmob skin ${* ?}"
198 alias namemob "editmob name ${* ?}"
199 alias movemob "editmob movetarget ${* ?}"
200 alias butcher "editmob butcher ${* ?}"
201 alias mobbutcher "editmob butcher ${* ?}"
202
203
204 // ============================================================
205 //  sv_cmd (server console command) - server/command/sv_cmd.qc
206 // ============================================================
207 alias adminmsg             "qc_cmd_sv     adminmsg             ${* ?}" // Send an admin message to a client directly
208 alias allready             "qc_cmd_sv     allready             ${* ?}" // Restart the server and reset the players
209 alias allspec              "qc_cmd_sv     allspec              ${* ?}" // Force all players to spectate
210 alias animbench            "qc_cmd_sv     animbench            ${* ?}" // Benchmark model animation (LAGS)
211 alias anticheat            "qc_cmd_sv     anticheat            ${* ?}" // Create an anticheat report for a client
212 alias bbox                 "qc_cmd_sv     bbox                 ${* ?}" // Print detailed information about world size
213 alias bot_cmd              "qc_cmd_sv     bot_cmd              ${* ?}" // Control and send commands to bots
214 alias cointoss             "qc_cmd_sv     cointoss             ${* ?}" // Flip a virtual coin and give random result
215 alias database             "qc_cmd_sv     database             ${* ?}" // Extra controls of the serverprogs database
216 alias defer_clear          "qc_cmd_sv     defer_clear          ${* ?}" // Clear all queued defer commands for a specific client
217 alias defer_clear_all      "qc_cmd_sv     defer_clear_all      ${* ?}" // Clear all queued defer commands for all clients
218 alias delrec               "qc_cmd_sv     delrec               ${* ?}" // Delete race time record for a map
219 alias effectindexdump      "qc_cmd_sv     effectindexdump      ${* ?}" // Dump list of effects from code and effectinfo.txt
220 alias extendmatchtime      "qc_cmd_sv     extendmatchtime      ${* ?}" // Increase the timelimit value incrementally
221 alias gametype             "qc_cmd_sv     gametype             ${* ?}" // Simple command to change the active gametype
222 alias gettaginfo           "qc_cmd_sv     gettaginfo           ${* ?}" // Get specific information about a weapon model
223 alias gotomap              "qc_cmd_sv     gotomap              ${* ?}" // Simple command to switch to another map
224 alias lockteams            "qc_cmd_sv     lockteams            ${* ?}" // Disable the ability for players to switch or enter teams
225 alias make_mapinfo         "qc_cmd_sv     make_mapinfo         ${* ?}" // Automatically rebuild mapinfo files
226 alias moveplayer           "qc_cmd_sv     moveplayer           ${* ?}" // Change the team/status of a player
227 alias nospectators         "qc_cmd_sv     nospectators         ${* ?}" // Automatically remove spectators from a match
228 alias printstats           "qc_cmd_sv     printstats           ${* ?}" // Dump eventlog player stats and other score information
229 alias radarmap             "qc_cmd_sv     radarmap             ${* ?}" // Generate a radar image of the map
230 alias reducematchtime      "qc_cmd_sv     reducematchtime      ${* ?}" // Decrease the timelimit value incrementally
231 alias setbots              "qc_cmd_sv     setbots              ${* ?}" // Adjust how many bots are in the match
232 alias shuffleteams         "qc_cmd_sv     shuffleteams         ${* ?}" // Randomly move players to different teams
233 alias stuffto              "qc_cmd_sv     stuffto              ${* ?}" // Send a command to be executed on a client
234 alias trace                "qc_cmd_sv     trace                ${* ?}" // Various debugging tools with tracing
235 alias unlockteams          "qc_cmd_sv     unlockteams          ${* ?}" // Enable the ability for players to switch or enter teams
236 alias warp                 "qc_cmd_sv     warp                 ${* ?}" // Choose different level in campaign
237
238 // other aliases for server commands
239 alias endmatch "timelimit -1"
240 alias bots "minplayers 4; minplayers_per_team 2"
241 alias nobots "minplayers 0; minplayers_per_team 0"
242
243 alias savedb "sv_cmd database save \"${1 ?}\""
244 alias dumpdb "sv_cmd database dump \"${1 ?}\""
245 alias loaddb "sv_cmd database load \"${1 ?}\""
246
247 alias movetored "moveplayer ${1 ?} red"
248 alias movetoblue "moveplayer ${1 ?} blue"
249 alias movetopink "moveplayer ${1 ?} pink"
250 alias movetoyellow "moveplayer ${1 ?} yellow"
251 alias movetoauto "moveplayer ${1 ?} auto"
252 alias movetospec "moveplayer ${1 ?} spec"
253
254
255 // =======================================================
256 //  Aliases for settemp subsystem. Warning: Do not touch.
257 //  Usage: settemp variable value, next map resets it.
258 // =======================================================
259 alias settemp "qc_cmd_svcl settemp $*"
260 alias settemp_restore "qc_cmd_svcl settemp_restore"
261
262
263 // ===================================
264 //  banning - server/command/ipban.qc
265 // ===================================
266 alias ban                  "qc_cmd_sv     ban                  ${* ?}" // Ban an IP address or a range of addresses (like 1.2.3)
267 alias banlist              "qc_cmd_sv     banlist              ${* ?}" // List all existing bans
268 alias kickban              "qc_cmd_sv     kickban              ${* ?}" // Disconnect a client and ban it at the same time
269 alias mute                 "qc_cmd_sv     mute                 ${* ?}" // Disallow a client from talking by muting them
270 alias unban                "qc_cmd_sv     unban                ${* ?}" // Remove an existing ban
271 alias unmute               "qc_cmd_sv     unmute               ${* ?}" // Unmute a client
272
273 // other aliases for ban commands
274 alias bans "banlist"
275
276 // character classes (intersected with 32..126 minus ", $, ;, ^, \ - if you
277 // want these, include them explicitly)
278 // note that QC code always forbids $ and ; in VoteCommand_checknasty
279 set _iscntrl ""
280 set _isblank " "
281 set _ispunct "!#%&'()*+,-./:<=>?@[]_`{|}~"
282 set _isdigit "0123456789"
283 set _isupper "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
284 set _islower "abcdefghijklmnopqrstuvwxyz"
285 set _isxdigit "0123456789abcdefABCDEF"
286
287 // derived character classes
288 set _isalpha "$_isupper$_islower"
289 set _isalnum "$_isalpha$_isdigit"
290 set _isgraph "$_ispunct$_isalnum"
291 set _isascii "$_isgraph$_isblank"
292 set _isprint "$_isgraph$_isblank"
293 set _isspace "$_isblank"
294
295 // restriction is specified as <minargs> followed by <maxargs> instances of ';'
296 // and the optional character class to verify the argument by (no checking if
297 // empty)
298 // set cvar to empty string to not check the command at all
299 // if cvar is not set there will be a warning
300 set sv_vote_command_restriction_restart "0"
301 set sv_vote_command_restriction_fraglimit "1;$_isdigit"
302 set sv_vote_command_restriction_chmap "1;$_isgraph"
303 set sv_vote_command_restriction_gotomap "1;$_isgraph"
304 set sv_vote_command_restriction_nextmap "1;$_isgraph"
305 set sv_vote_command_restriction_endmatch "0"
306 set sv_vote_command_restriction_reducematchtime "0"
307 set sv_vote_command_restriction_extendmatchtime "0"
308 set sv_vote_command_restriction_allready "0"
309 set sv_vote_command_restriction_kick "1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" // enough space for ban reason
310 set sv_vote_command_restriction_kickban "1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" // enough space for ban reason
311 set sv_vote_command_restriction_cointoss "0"
312 set sv_vote_command_restriction_movetoauto "1;"
313 set sv_vote_command_restriction_movetored "1;"
314 set sv_vote_command_restriction_movetoblue "1;"
315 set sv_vote_command_restriction_movetoyellow "1;"
316 set sv_vote_command_restriction_movetopink "1;"
317 set sv_vote_command_restriction_movetospec "1;"
318
319 // help messages for votes that aren't implemeneted in the game code
320 // examples used here are based on the usage output of implemented votes
321 set sv_vote_command_help_restart "\nUsage:^3 vcall restart\n^7  No arguments required."
322 set sv_vote_command_help_gotomap "\nUsage:^3 vcall gotomap mapname\n^7  Where 'mapname' is the name of the map to go to.\n  Type ^3lsmaps^7 to get a list of available maps to vote for."
323
324 // =================================
325 //  voting - server/command/vote.qc
326 // =================================
327 set sv_vote_call 1 "Allow users to call a vote for the commands in sv_vote_commands"
328 set sv_vote_change 1 "Allow voters to change their mind after already voting"
329 set sv_vote_commands "restart fraglimit gotomap nextmap endmatch reducematchtime extendmatchtime allready kick cointoss movetoauto shuffleteams bots nobots" "these commands can be voted by players or used directly by masters (vdo) in addition to sv_vote_master_commands"
330 set sv_vote_only_commands ""
331 set sv_vote_limit 160 "Maximum allowed length of a vote command"
332 set sv_vote_master_commands "movetored movetoblue movetoyellow movetopink movetospec" "Extra commands which vote masters can execute by themselves, along with the normal sv_vote_commands." // maybe add kickban here (but then sv_vote_master 0)
333 set sv_vote_master 0    "Allows the use of the vote master system"
334 set sv_vote_master_callable 0 "When set, users can use \"vmaster\" to call a vote to become master of voting commands"
335 set sv_vote_master_password "" "when set, users can use \"vlogin PASSWORD\" to log in as master, then run master commands directly using vdo"
336 set sv_vote_master_playerlimit 2 "Minimum number of players needed for a player to be allowed to vote for master"
337 set sv_vote_no_stops_vote 1 "Allow the vote caller to stop his own vote simply by voting no"
338 set sv_vote_singlecount 0       "set to 1 to count votes once after timeout or to 0 to count with every vote"
339 set sv_vote_timeout 24  "a vote will timeout after this many seconds"
340 set sv_vote_wait 120    "a player can not call a vote again for this many seconds when his vote was not accepted"
341 set sv_vote_stop 15     "a player can not call a vote again for this many seconds when he stopped this vote (e.g. to correct it)"
342 set sv_vote_majority_factor 0.5 "What percentage of the PLAYERS constitute a majority? (Must be at least 0.5, recommended: 0.5)"
343 set sv_vote_majority_factor_of_voted 0.5 "What percentage of the VOTERS constitute a majority too? (Must be at least 0.5, recommended: 0.5)"
344 set sv_vote_gamestart 0 "Allow voting during map change"
345 // when disabled, don't allow game type changes "note: set these two equal to JUST support simple majorities"
346 set sv_vote_override_mostrecent 0
347
348 // aliases for client only
349 alias vmaster   "qc_cmd_cmd vote master"
350 alias vlogin    "qc_cmd_cmd vote master login ${* ?}"
351 alias vdo       "qc_cmd_cmd vote master do ${* ?}"
352 alias vyes      "qc_cmd_cl handlevote yes"
353 alias vno       "qc_cmd_cl handlevote no"
354 alias vdontcare "qc_cmd_cmd vote abstain"
355 alias vabstain  "qc_cmd_cmd vote abstain"
356
357 // aliases for both client and server
358 alias vcall     "qc_cmd_svcmd vote call ${* ?}"
359 alias vhelp     "qc_cmd_svcmd vote help ${* ?}"
360 alias vstatus   "qc_cmd_svcmd vote status"
361 alias vstop     "qc_cmd_svcmd vote stop"
362
363 // general
364 alias vmap "vcall gotomap ${1 ?}"
365 alias vnextmap "vcall nextmap ${1 ?}"
366 alias vkick "vcall kick ${* ?}"
367 alias vkickban "vcall kickban ${* ?}"
368 alias vend "vcall endmatch"
369 alias vdomap "vdo gotomap ${1 ?}"
370 alias vdokick "vdo kick ${* ?}"
371 alias vdokickban "vdo kickban ${* ?}"
372 alias vdoend "vdo endmatch"
373 alias vext "vcall extendmatchtime"
374
375 // ======================
376 //  rcon server commands
377 // ======================
378 rcon_secure 1
379 set rcon_restricted_commands "restart fraglimit chmap gotomap nextmap endmatch reducematchtime extendmatchtime allready kick cointoss movetoauto shuffleteams bots nobots movetored movetoblue movetoyellow movetopink movetospec kickban \"sv_cmd bans\" \"sv_cmd unban *\" status \"sv_cmd teamstatus\""