X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fworld.qc;h=311800dcd10eee8509b43ea99352d738835b0594;hb=704448e416ff06afd946c46830d7d37dc46fa7b0;hp=db614661cf2c3f80a4efc7d2b4467cd963ac67af;hpb=2c788b04f4df7326baccf0f6a8d19613b3a9db7b;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/world.qc b/qcsrc/server/world.qc index db614661c..311800dcd 100644 --- a/qcsrc/server/world.qc +++ b/qcsrc/server/world.qc @@ -236,8 +236,9 @@ void cvar_changes_init() BADCVAR("timeformat"); BADCVAR("timestamps"); BADCVAR("g_require_stats"); - BADCVAR("g_muteban_list"); + BADCVAR("g_chatban_list"); BADCVAR("g_playban_list"); + BADCVAR("g_playban_minigames"); BADCVAR("g_voteban_list"); BADPREFIX("developer_"); BADPREFIX("g_ban_"); @@ -413,7 +414,6 @@ void cvar_changes_init() BADCVAR("w_prop_interval"); BADPREFIX("chat_"); BADPREFIX("crypto_"); - BADPREFIX("gameversion"); BADPREFIX("g_chat_"); BADPREFIX("g_ctf_captimerecord_"); BADPREFIX("g_hats_"); @@ -457,6 +457,7 @@ void cvar_changes_init() BADCVAR("g_ban_sync_uri"); BADCVAR("g_buffs"); BADCVAR("g_ca_teams_override"); + BADCVAR("g_ca_prevent_stalemate"); BADCVAR("g_ctf_fullbrightflags"); BADCVAR("g_ctf_ignore_frags"); BADCVAR("g_ctf_leaderboard"); @@ -662,14 +663,18 @@ void GameplayMode_DelayedInit(entity this) if (!g_duel) MapReadSizes(mapname); - if (autocvar_g_maxplayers < 0 && teamplay) + if (autocvar_g_maxplayers < 0) { - // automatic maxplayers should be a multiple of team count - if (map_maxplayers == 0 || map_maxplayers > maxclients) + if (map_maxplayers <= 0) map_maxplayers = maxclients; // unlimited, but may need rounding - int d = map_maxplayers % AVAILABLE_TEAMS; - int u = AVAILABLE_TEAMS - d; - map_maxplayers += (u <= d && u + map_maxplayers <= maxclients) ? u : -d; + map_maxplayers = bound(max(2, AVAILABLE_TEAMS * 2), map_maxplayers, maxclients); + if (teamplay) + { + // automatic maxplayers should be a multiple of team count + int down = map_maxplayers % AVAILABLE_TEAMS; + int up = AVAILABLE_TEAMS - down; + map_maxplayers += (up < down && up + map_maxplayers <= maxclients) ? up : -down; + } } if (warmup_stage < 0) @@ -680,9 +685,9 @@ void GameplayMode_DelayedInit(entity this) if (teamplay) { // automatic minplayers should be a multiple of team count - int d = map_minplayers % AVAILABLE_TEAMS; - int u = AVAILABLE_TEAMS - d; - map_minplayers += (u < d && u + map_minplayers <= m) ? u : -d; + int down = map_minplayers % AVAILABLE_TEAMS; + int up = AVAILABLE_TEAMS - down; + map_minplayers += (up < down && up + map_minplayers <= m) ? up : -down; } } else @@ -2148,16 +2153,26 @@ void readlevelcvars() g_pickup_respawntime_weapon = cvar("g_pickup_respawntime_weapon"); g_pickup_respawntime_superweapon = cvar("g_pickup_respawntime_superweapon"); g_pickup_respawntime_ammo = cvar("g_pickup_respawntime_ammo"); - g_pickup_respawntime_short = cvar("g_pickup_respawntime_short"); - g_pickup_respawntime_medium = cvar("g_pickup_respawntime_medium"); - g_pickup_respawntime_long = cvar("g_pickup_respawntime_long"); + g_pickup_respawntime_armor_small = cvar("g_pickup_respawntime_armor_small"); + g_pickup_respawntime_armor_medium = cvar("g_pickup_respawntime_armor_medium"); + g_pickup_respawntime_armor_big = cvar("g_pickup_respawntime_armor_big"); + g_pickup_respawntime_armor_mega = cvar("g_pickup_respawntime_armor_mega"); + g_pickup_respawntime_health_small = cvar("g_pickup_respawntime_health_small"); + g_pickup_respawntime_health_medium = cvar("g_pickup_respawntime_health_medium"); + g_pickup_respawntime_health_big = cvar("g_pickup_respawntime_health_big"); + g_pickup_respawntime_health_mega = cvar("g_pickup_respawntime_health_mega"); g_pickup_respawntime_powerup = cvar("g_pickup_respawntime_powerup"); g_pickup_respawntimejitter_weapon = cvar("g_pickup_respawntimejitter_weapon"); g_pickup_respawntimejitter_superweapon = cvar("g_pickup_respawntimejitter_superweapon"); g_pickup_respawntimejitter_ammo = cvar("g_pickup_respawntimejitter_ammo"); - g_pickup_respawntimejitter_short = cvar("g_pickup_respawntimejitter_short"); - g_pickup_respawntimejitter_medium = cvar("g_pickup_respawntimejitter_medium"); - g_pickup_respawntimejitter_long = cvar("g_pickup_respawntimejitter_long"); + g_pickup_respawntimejitter_armor_small = cvar("g_pickup_respawntimejitter_armor_small"); + g_pickup_respawntimejitter_armor_medium = cvar("g_pickup_respawntimejitter_armor_medium"); + g_pickup_respawntimejitter_armor_big = cvar("g_pickup_respawntimejitter_armor_big"); + g_pickup_respawntimejitter_armor_mega = cvar("g_pickup_respawntimejitter_armor_mega"); + g_pickup_respawntimejitter_health_small = cvar("g_pickup_respawntimejitter_health_small"); + g_pickup_respawntimejitter_health_medium = cvar("g_pickup_respawntimejitter_health_medium"); + g_pickup_respawntimejitter_health_big = cvar("g_pickup_respawntimejitter_health_big"); + g_pickup_respawntimejitter_health_mega = cvar("g_pickup_respawntimejitter_health_mega"); g_pickup_respawntimejitter_powerup = cvar("g_pickup_respawntimejitter_powerup"); g_pickup_shells = cvar("g_pickup_shells");