X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fg_world.qc;h=cb9b6cc1cbe464848fed8f11610fe65fa69f6142;hb=907d48e5db2bd5fda1d271ce05aa91ce1f3d47ba;hp=5c792068c7fe0979ec7f5f2bfe9ba79b09cfdc2e;hpb=65115220706fa739275e3f23a1ac9d93bc9ca3f3;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/g_world.qc b/qcsrc/server/g_world.qc index 5c792068c..cb9b6cc1c 100644 --- a/qcsrc/server/g_world.qc +++ b/qcsrc/server/g_world.qc @@ -259,15 +259,34 @@ void cvar_changes_init() BADPREFIX("r_"); BADPREFIX("sbar_"); BADPREFIX("scr_"); + BADPREFIX("snd_"); BADPREFIX("userbind"); BADPREFIX("v_"); BADPREFIX("vid_"); BADPREFIX("crosshair"); BADCVAR("mod_q3bsp_lightmapmergepower"); BADCVAR("mod_q3bsp_nolightmaps"); + BADCVAR("fov"); + BADCVAR("mastervolume"); + BADCVAR("volume"); + BADCVAR("bgmvolume"); // private + BADCVAR("developer"); + BADCVAR("g_banned_list"); + BADCVAR("log_dest_udp"); + BADCVAR("log_file"); + BADCVAR("net_address"); + BADCVAR("net_address_ipv6"); + BADCVAR("port"); + BADCVAR("savedgamecfg"); BADCVAR("serverconfig"); + BADCVAR("sv_heartbeatperiod"); + BADCVAR("sv_vote_master_password"); + BADCVAR("sys_colortranslation"); + BADCVAR("sys_specialcharactertranslation"); + BADCVAR("timestamps"); + BADPREFIX("developer_"); BADPREFIX("g_ban_"); BADPREFIX("g_chat_flood_"); BADPREFIX("g_voice_flood_"); @@ -279,26 +298,23 @@ void cvar_changes_init() BADPREFIX("sv_eventlog"); BADPREFIX("sv_logscores_"); BADPREFIX("sv_master"); - BADCVAR("g_banned_list"); - BADCVAR("log_dest_udp"); - BADCVAR("log_file"); - BADCVAR("net_address"); - BADCVAR("port"); - BADCVAR("savedgamecfg"); - BADCVAR("sv_heartbeatperiod"); - BADCVAR("sv_vote_master_password"); - BADCVAR("sys_colortranslation"); - BADCVAR("sys_specialcharactertranslation"); - BADCVAR("timestamps"); - BADCVAR("net_address"); - BADCVAR("net_address_ipv6"); BADPREFIX("sv_weaponstats_"); - BADCVAR("developer"); - BADPREFIX("developer_"); + + // these can contain player IDs, so better hide + BADCVAR("g_forced_team_red"); + BADCVAR("g_forced_team_blue"); + BADCVAR("g_forced_team_yellow"); + BADCVAR("g_forced_team_pink"); // mapinfo BADCVAR("timelimit"); BADCVAR("fraglimit"); + BADCVAR("leadlimit"); + BADCVAR("g_tdm_teams"); + BADCVAR("g_keyhunt_teams"); + BADCVAR("g_domination_default_teams"); + BADCVAR("g_race_qualifying_timelimit"); + BADCVAR("g_lms"); BADCVAR("g_arena"); BADCVAR("g_ca"); BADCVAR("g_assault"); @@ -313,6 +329,7 @@ void cvar_changes_init() BADCVAR("g_runematch"); BADCVAR("g_tdm"); BADCVAR("g_nexball"); + BADCVAR("g_keepaway"); BADCVAR("teamplay"); // long @@ -339,7 +356,24 @@ void cvar_changes_init() // now check if the changes are actually gameplay relevant // does nothing visible + BADCVAR("captureleadlimit_override"); + BADCVAR("g_arena_point_leadlimit"); + BADCVAR("g_ca_point_leadlimit"); + BADCVAR("g_ctf_capture_leadlimit"); + BADCVAR("g_domination_point_leadlimit"); + BADCVAR("g_keyhunt_point_leadlimit"); + BADCVAR("g_nexball_goalleadlimit"); + BADCVAR("g_runematch_point_leadlimit"); + BADCVAR("leadlimit_and_fraglimit"); + BADCVAR("leadlimit_override"); + BADCVAR("sv_checkforpacketsduringsleep"); + BADPREFIX("crypto_"); + BADPREFIX("g_chat_"); + BADPREFIX("net_"); BADPREFIX("prvm_"); + BADPREFIX("sv_fragmessage_"); + BADPREFIX("sv_vote_"); + BADPREFIX("timelimit_"); // allowed changes to server admins (please sync this to server.cfg) // vi commands: @@ -376,6 +410,7 @@ void cvar_changes_init() BADCVAR("g_maplist_votable_abstain"); BADCVAR("g_maplist_votable_nodetail"); BADCVAR("g_maplist_votable_suggestions"); + BADCVAR("g_minstagib"); BADCVAR("g_nexball_goallimit"); BADCVAR("g_runematch_point_limit"); BADCVAR("g_start_delay"); @@ -389,11 +424,13 @@ void cvar_changes_init() BADCVAR("rcon_restricted_commands"); BADCVAR("rcon_restricted_password"); BADCVAR("skill"); + BADCVAR("sv_adminnick"); BADCVAR("sv_autoscreenshot"); BADCVAR("sv_curl_defaulturl"); BADCVAR("sv_defaultcharacter"); BADCVAR("sv_defaultplayermodel"); BADCVAR("sv_defaultplayerskin"); + BADCVAR("sv_maxidle"); BADCVAR("sv_maxrate"); BADCVAR("sv_motd"); BADCVAR("sv_public"); @@ -407,6 +444,12 @@ void cvar_changes_init() BADCVAR("sv_vote_master_password"); BADCVAR("sv_vote_simple_majority_factor"); BADCVAR("timelimit_override"); + + if(cvar("g_minstagib")) + { + BADCVAR("g_grappling_hook"); + BADCVAR("g_jetpack"); + } #undef BADPREFIX #undef BADCVAR @@ -420,6 +463,12 @@ void cvar_changes_init() } } ++cvar_purechanges_count; + // WARNING: this variable is used for the server list + // NEVER dare to skip this code! + // Hacks to intentionally appearing as "pure server" even though you DO have + // modified settings may be punished by removal from the server list. + // You can do to the variables cvar_changes and cvar_purechanges all you want, + // though. } buf_del(h); if(cvar_changes == "") @@ -657,24 +706,34 @@ void spawnfunc_worldspawn (void) MUTATOR_CALLHOOK(BuildMutatorsString); s = ret_string; + // simple, probably not good in the mutator system if(cvar("g_grappling_hook")) s = strcat(s, ":grappling_hook"); + + // initialiation stuff, not good in the mutator system if(!cvar("g_use_ammunition")) s = strcat(s, ":no_use_ammunition"); + + // initialiation stuff, not good in the mutator system if(!cvar("g_pickup_items")) s = strcat(s, ":no_pickup_items"); + + // initialiation stuff, not good in the mutator system if(cvar_string("g_weaponarena") != "0") s = strcat(s, ":", cvar_string("g_weaponarena"), " arena"); - if(cvar("g_vampire")) - s = strcat(s, ":vampire"); - if(cvar("g_laserguided_missile")) - s = strcat(s, ":laserguided_missile"); + + // TODO to mutator system if(cvar("g_norecoil")) s = strcat(s, ":norecoil"); + + // TODO to mutator system if(cvar("g_midair")) s = strcat(s, ":midair"); + + // TODO to mutator system if(cvar("g_minstagib")) s = strcat(s, ":minstagib"); + GameLogEcho(s); GameLogEcho(":gameinfo:end"); } @@ -810,6 +869,8 @@ void spawnfunc_worldspawn (void) { records_reply[i] = strzone(getrecords(i)); } + if(g_cts) + ladder_reply = strzone(getladder()); rankings_reply = strzone(getrankings());