X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=commands.cfg;h=70ee53ecb027ade180ba8dfe4855c0e9c4709d2e;hb=332b1bfac54491c16e6ef8a806fcc1d5dd768ef6;hp=174a458347b8b76e827f4ca670412c5e29f51059;hpb=40e83082fa1797a0f55de18cda4f737af2121c19;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/commands.cfg b/commands.cfg index 174a45834..70ee53ecb 100644 --- a/commands.cfg +++ b/commands.cfg @@ -11,6 +11,10 @@ alias if_dedicated "${* asis}" _if_dedicated alias if_client "" if_client alias if_dedicated "" +// for easy access by QC +if_dedicated set is_dedicated 1 +if_client set is_dedicated 0 + if_dedicated "alias" qc_cmd_sv "sv_cmd $$*" if_client "alias" qc_cmd_sv "sv_cmd $$*" // if_client "alias" qc_cmd_sv "echo This command only works on servers: sv_cmd $${* !}" @@ -52,11 +56,13 @@ alias who "qc_cmd_svcmd who ${* ?}" // Displa // generic commands (across all programs) alias addtolist "qc_cmd_svmenu addtolist ${* ?}" // Add a string to a cvar -alias qc_curl "qc_cmd_svmenu curl ${* ?}" // curl requests alias dumpcommands "qc_cmd_svmenu dumpcommands ${* ?}" // Dump all commands on the program to *_cmd_dump.txt +alias dumpnotifs "qc_cmd_svcl dumpnotifs ${* ?}" // Dump all notifications into notifications_dump.txt alias maplist "qc_cmd_svmenu maplist ${* ?}" // Automatic control of maplist -alias nextframe "qc_cmd_svmenu nextframe ${* ?}" // do something next frame +alias nextframe "qc_cmd_svmenu nextframe ${* ?}" // Execute the given command next frame of this VM +alias qc_curl "qc_cmd_svmenu qc_curl ${* ?}" // Queries a URL alias removefromlist "qc_cmd_svmenu removefromlist ${* ?}" // Remove a string from a cvar +alias restartnotifs "qc_cmd_svcl restartnotifs ${* ?}" // Re-initialize all notifications alias rpn "qc_cmd_svmenu rpn ${* ?}" // RPN calculator //alias settemp "qc_cmd_svmenu settemp ${* ?}" // Temporarily set a value to a cvar which is restored later //alias settemp_restore "qc_cmd_svmenu settemp_restore ${* ?}" // Restore all cvars set by settemp command @@ -81,6 +87,7 @@ alias addvote "qc_cmd_svmenu addtolist sv_vote_commands ${* ?}" alias bsp "ls maps/*.bsp" alias chmap "changelevel ${* ?}" alias clearmap "disconnect" +alias devmap "set _developer_save $developer; set developer 1; changelevel ${* ?}; set developer $_developer_save" alias ply "playdemo $1" alias rec "record demos/${1 !}" alias search "apropos ${* ?}" @@ -109,6 +116,7 @@ alias menu_loadmap_prepare "disconnect; wait; g_campaign 0; menu_cmd rpn /_menu_ // ========================================================== // commented out commands are really only intended for internal use alias blurtest "qc_cmd_cl blurtest ${* ?}" // Feature for testing blur postprocessing +alias create_scrshot_ent "qc_cmd_cl create_scrshot_ent ${* ?}" // Create an entity at this location for automatic screenshots alias debugmodel "qc_cmd_cl debugmodel ${* ?}" // Spawn a debug model manually //alias handlevote "qc_cmd_cl handlevote ${* ?}" // System to handle selecting a vote or option alias hud "qc_cmd_cl hud ${* ?}" // Commands regarding/controlling the HUD system @@ -239,13 +247,54 @@ alias unban "qc_cmd_sv unban ${* ?}" // Remove // other aliases for ban commands alias bans "banlist" +// character classes (intersected with 32..126 minus ", $, ;, ^, \ - if you +// want these, include them explicitly) +// note that QC code always forbids $ and ; in VoteCommand_checknasty +set _iscntrl "" +set _isblank " " +set _ispunct "!#%&'()*+,-./:<=>?@[]_`{|}~" +set _isdigit "0123456789" +set _isupper "ABCDEFGHIJKLMNOPQRSTUVWXYZ" +set _islower "abcdefghijklmnopqrstuvwxyz" +set _isxdigit "0123456789abcdefABCDEF" + +// derived character classes +set _isalpha "$_isupper$_islower" +set _isalnum "$_isalpha$_isdigit" +set _isgraph "$_ispunct$_isalnum" +set _isascii "$_isgraph$_isblank" +set _isprint "$_isgraph$_isblank" +set _isspace "$_isblank" + +// restriction is specified as followed by instances of ';' +// and the optional character class to verify the argument by (no checking if +// empty) +// set cvar to empty string to not check the command at all +// if cvar is not set there will be a warning +set sv_vote_command_restriction_restart "0" +set sv_vote_command_restriction_fraglimit "1;$_isdigit" +set sv_vote_command_restriction_chmap "1;$_isgraph" +set sv_vote_command_restriction_gotomap "1;$_isgraph" +set sv_vote_command_restriction_nextmap "1;$_isgraph" +set sv_vote_command_restriction_endmatch "0" +set sv_vote_command_restriction_reducematchtime "0" +set sv_vote_command_restriction_extendmatchtime "0" +set sv_vote_command_restriction_allready "0" +set sv_vote_command_restriction_kick "1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" // enough space for ban reason +set sv_vote_command_restriction_kickban "1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" // enough space for ban reason +set sv_vote_command_restriction_cointoss "0" +set sv_vote_command_restriction_movetoauto "1;" +set sv_vote_command_restriction_movetored "1;" +set sv_vote_command_restriction_movetoblue "1;" +set sv_vote_command_restriction_movetoyellow "1;" +set sv_vote_command_restriction_movetopink "1;" // ================================= // voting - server/command/vote.qc // ================================= set sv_vote_call 1 "Allow users to call a vote for the commands in sv_vote_commands" set sv_vote_change 1 "Allow voters to change their mind after already voting" -set sv_vote_commands "restart fraglimit chmap gotomap nextmap endmatch reducematchtime extendmatchtime allready kick cointoss movetoauto" "these commands can be voted" +set sv_vote_commands "restart fraglimit chmap gotomap nextmap endmatch reducematchtime extendmatchtime allready kick cointoss movetoauto shuffleteams" "these commands can be voted" set sv_vote_only_commands "" set sv_vote_master_commands "movetored movetoblue movetoyellow movetopink" "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) set sv_vote_master 1 "Allows the use of the vote master system" @@ -259,6 +308,7 @@ set sv_vote_wait 120 "a player can not call a vote again for this many seconds w 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)" set sv_vote_majority_factor 0.5 "What percentage of the PLAYERS constitute a majority? (Must be at least 0.5, recommended: 0.5)" 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)" +set sv_vote_gamestart 0 "Allow voting during map change" // when disabled, don't allow game type changes "note: set these two equal to JUST support simple majorities" set sv_vote_override_mostrecent 0