From 0809a5bad02e312a5675e8f6f5f74ecb74a69354 Mon Sep 17 00:00:00 2001 From: Altair Sossai Date: Sat, 22 Aug 2026 10:23:43 -0300 Subject: [PATCH] Add circular tank assignment feature and related configuration options --- .../plugins/optional/l4d_tank_control_eq.smx | Bin 17711 -> 18040 bytes .../scripting/l4d_tank_control_eq.sp | 57 ++++++++++++------ cfg/cfgogl/acemodrv/shared_cvars.cfg | 1 + cfg/cfgogl/apex/shared_cvars.cfg | 1 + cfg/cfgogl/eq/shared_cvars.cfg | 1 + cfg/cfgogl/neomod/shared_cvars.cfg | 1 + cfg/cfgogl/nextmod/shared_cvars.cfg | 1 + cfg/cfgogl/pmelite/confogl.cfg | 1 + cfg/cfgogl/zonehunters/shared_cvars.cfg | 1 + cfg/cfgogl/zonemod/shared_cvars.cfg | 1 + cfg/cfgogl/zoneretro/shared_cvars.cfg | 1 + 11 files changed, 49 insertions(+), 17 deletions(-) diff --git a/addons/sourcemod/plugins/optional/l4d_tank_control_eq.smx b/addons/sourcemod/plugins/optional/l4d_tank_control_eq.smx index aa5eaf04c02a29ea83872030d2d0f841a021eb8f..7ef1b7de85ba21473ba85192ad7bcc16c4b98a0f 100644 GIT binary patch literal 18040 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

|EJJzn)=evJdSd%v<@iIMA*J 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 literal 17711 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 #include -#define TEAM_SPECTATOR 1 -#define TEAM_INFECTED 3 -#define ZOMBIECLASS_TANK 8 -#define IS_SPECTATOR(%1) (GetClientTeam(%1) == TEAM_SPECTATOR) -#define IS_INFECTED(%1) (GetClientTeam(%1) == TEAM_INFECTED) +#define IS_SPECTATOR(%1) (GetClientTeam(%1) == L4D_TEAM_SPECTATOR) +#define IS_INFECTED(%1) (GetClientTeam(%1) == L4D_TEAM_INFECTED) #define IS_VALID_INFECTED(%1) (IsClientInGame(%1) && IS_INFECTED(%1)) #define IS_VALID_SPECTATOR(%1) (IsClientInGame(%1) && IS_SPECTATOR(%1)) ArrayList h_whosHadTank; ArrayList h_tankQueue; -ConVar +ConVar hTankPrint, - hTankWindow, - hTankDebug; + hTankWindow, + hTankDebug, + hCircularTankAssignment; GlobalForward hForwardOnTryOfferingTankBot, hForwardOnTankSelection; -char +char queuedTankSteamId[64], tankInitiallyChosen[64]; @@ -54,7 +52,7 @@ public Plugin myinfo = name = "L4D2 Tank Control", author = "arti, (Contributions by: Sheo, Sir, Altair-Sossai)", description = "Distributes the role of the tank evenly throughout the team, allows for overrides. (Includes forwards)", - version = "0.0.29", + version = "0.0.30", url = "https://github.com/SirPlease/L4D2-Competitive-Rework" } @@ -87,6 +85,7 @@ public void OnPluginStart() hTankPrint = CreateConVar("tankcontrol_print_all", "0", "Who gets to see who will become the tank? (0 = Infected, 1 = Everyone)"); hTankWindow = CreateConVar("tankcontrol_force_window", "0.0", "Give player that was initially going to be Tank (or was Tank and dced) back the Tank this long after Tank was given to somebody else (0 = Off)"); hTankDebug = CreateConVar("tankcontrol_debug", "0", "Whether or not to debug to console"); + hCircularTankAssignment = CreateConVar("tankcontrol_circular_tank_assignment", "0", "Assign the Tank in a circular rotation so players keep the same order across cycles and never become Tank twice in a row (0 = Off, 1 = On)"); } @@ -275,7 +274,7 @@ void PlayerTeam_Event(Event hEvent, const char[] name, bool dontBroadcast) if (client < 1 || client > MaxClients) return; - if (oldTeam == TEAM_INFECTED) + if (oldTeam == L4D_TEAM_INFECTED) { /* * Triggers for disconnects as well as forced-swaps and whatnot. @@ -284,7 +283,7 @@ void PlayerTeam_Event(Event hEvent, const char[] name, bool dontBroadcast) if (!IsFakeClient(client)) { int zombieClass = GetEntProp(client, Prop_Send, "m_zombieClass"); - if (zombieClass == ZOMBIECLASS_TANK) + if (zombieClass == view_as(L4D2ZombieClass_Tank)) { dcedTankFrustration = GetTankFrustration(client); fTankGrace = CTimer_GetRemainingTime(GetFrustrationTimer(client)); @@ -308,7 +307,7 @@ void PlayerTeam_Event(Event hEvent, const char[] name, bool dontBroadcast) } } - if (team == TEAM_INFECTED && !IsFakeClient(client) && !StrEqual(tankInitiallyChosen, "")) + if (team == L4D_TEAM_INFECTED && !IsFakeClient(client) && !StrEqual(tankInitiallyChosen, "")) { GetClientAuthId(client, AuthId_Steam2, tmpSteamId, sizeof(tmpSteamId)); if (StrEqual(tankInitiallyChosen, tmpSteamId)) @@ -391,7 +390,7 @@ void PlayerDeath_Event(Event hEvent, const char[] eName, bool dontBroadcast) if (victim && IS_VALID_INFECTED(victim) && gotTankAt > 0.0) { int zombieClass = GetEntProp(victim, Prop_Send, "m_zombieClass"); - if (zombieClass == ZOMBIECLASS_TANK) + if (zombieClass == view_as(L4D2ZombieClass_Tank)) { if (hTankDebug.BoolValue) PrintToConsoleAll("[TC] Tank died (player_death), choosing a new tank"); @@ -521,6 +520,12 @@ void chooseTank(any data) nextTankIndex = PeekNextTankIndexInTheQueue(); } + if (nextTankIndex == -1 && hCircularTankAssignment.BoolValue) + { + RequeuePlayersWhoHadTank(); + nextTankIndex = PeekNextTankIndexInTheQueue(); + } + if (nextTankIndex == -1) { RemoveAllInfectedFrom(h_tankQueue); @@ -593,7 +598,7 @@ int getTankPlayer() int zombieClass = GetEntProp(i, Prop_Send, "m_zombieClass"); - if (zombieClass == ZOMBIECLASS_TANK) + if (zombieClass == view_as(L4D2ZombieClass_Tank)) return i; } @@ -667,6 +672,24 @@ int PeekNextTankIndexInTheQueue() return -1; } +void RequeuePlayersWhoHadTank() +{ + char steamId[64]; + + for (int i = 0; i < h_whosHadTank.Length; i++) + { + h_whosHadTank.GetString(i, steamId, sizeof(steamId)); + + int client = getInfectedPlayerBySteamId(steamId); + if (client == -1 || h_tankQueue.FindString(steamId) != -1) + continue; + + h_tankQueue.PushString(steamId); + h_whosHadTank.Erase(i); + i--; + } +} + void EnqueueNewInfectedPlayers() { char steamId[64]; @@ -676,7 +699,7 @@ void EnqueueNewInfectedPlayers() for (int client = 1; client <= MaxClients; client++) { - if (!IsClientInGame(client) || IsFakeClient(client) || GetClientTeam(client) != TEAM_INFECTED) + if (!IsClientInGame(client) || IsFakeClient(client) || GetClientTeam(client) != L4D_TEAM_INFECTED) continue; GetClientAuthId(client, AuthId_Steam2, steamId, sizeof(steamId)); @@ -699,7 +722,7 @@ void RemoveAllInfectedFrom(ArrayList arrayList) for (int client = 1; client <= MaxClients; client++) { - if (!IsClientInGame(client) || IsFakeClient(client) || GetClientTeam(client) != TEAM_INFECTED) + if (!IsClientInGame(client) || IsFakeClient(client) || GetClientTeam(client) != L4D_TEAM_INFECTED) continue; GetClientAuthId(client, AuthId_Steam2, steamId, sizeof(steamId)); diff --git a/cfg/cfgogl/acemodrv/shared_cvars.cfg b/cfg/cfgogl/acemodrv/shared_cvars.cfg index f70d468d4..1a87fdabe 100644 --- a/cfg/cfgogl/acemodrv/shared_cvars.cfg +++ b/cfg/cfgogl/acemodrv/shared_cvars.cfg @@ -135,6 +135,7 @@ confogl_addcvar z_witch_personal_space 500 confogl_addcvar z_frustration_spawn_delay 25 confogl_addcvar z_frustration_los_delay 2 confogl_addcvar tankcontrol_print_all 1 +confogl_addcvar tankcontrol_circular_tank_assignment 0 confogl_addcvar tank_ground_pound_duration 0.1 // Stripper Path diff --git a/cfg/cfgogl/apex/shared_cvars.cfg b/cfg/cfgogl/apex/shared_cvars.cfg index a0dd809ee..d67f2af66 100644 --- a/cfg/cfgogl/apex/shared_cvars.cfg +++ b/cfg/cfgogl/apex/shared_cvars.cfg @@ -132,6 +132,7 @@ confogl_addcvar tank_visibility_tolerance_suicide 999999999 confogl_addcvar director_tank_lottery_selection_time 3 confogl_addcvar z_frustration_spawn_delay 25 confogl_addcvar tankcontrol_print_all 0 +confogl_addcvar tankcontrol_circular_tank_assignment 0 confogl_addcvar tank_ground_pound_duration 0.1 // Stripper Path diff --git a/cfg/cfgogl/eq/shared_cvars.cfg b/cfg/cfgogl/eq/shared_cvars.cfg index 347a7f2c5..c17b636d7 100644 --- a/cfg/cfgogl/eq/shared_cvars.cfg +++ b/cfg/cfgogl/eq/shared_cvars.cfg @@ -137,6 +137,7 @@ confogl_addcvar z_witch_damage_per_kill_hit 100 confogl_addcvar z_witch_personal_space 500 confogl_addcvar z_frustration_spawn_delay 25 confogl_addcvar tankcontrol_print_all 0 +confogl_addcvar tankcontrol_circular_tank_assignment 0 confogl_addcvar tank_ground_pound_duration 0.1 // Stripper Path diff --git a/cfg/cfgogl/neomod/shared_cvars.cfg b/cfg/cfgogl/neomod/shared_cvars.cfg index c9b4dff27..ff533c71b 100644 --- a/cfg/cfgogl/neomod/shared_cvars.cfg +++ b/cfg/cfgogl/neomod/shared_cvars.cfg @@ -132,6 +132,7 @@ confogl_addcvar director_tank_lottery_selection_time 3 confogl_addcvar z_frustration_spawn_delay 25 confogl_addcvar z_frustration_los_delay 1.2 confogl_addcvar tankcontrol_print_all 1 +confogl_addcvar tankcontrol_circular_tank_assignment 0 confogl_addcvar tank_ground_pound_duration 0.1 // Stripper Path diff --git a/cfg/cfgogl/nextmod/shared_cvars.cfg b/cfg/cfgogl/nextmod/shared_cvars.cfg index 0fd739841..d5ccb1f57 100644 --- a/cfg/cfgogl/nextmod/shared_cvars.cfg +++ b/cfg/cfgogl/nextmod/shared_cvars.cfg @@ -137,6 +137,7 @@ confogl_addcvar director_tank_lottery_selection_time 3 confogl_addcvar z_frustration_spawn_delay 25 confogl_addcvar z_frustration_los_delay 1.2 confogl_addcvar tankcontrol_print_all 1 +confogl_addcvar tankcontrol_circular_tank_assignment 0 confogl_addcvar tank_ground_pound_duration 0.1 // Stripper Path diff --git a/cfg/cfgogl/pmelite/confogl.cfg b/cfg/cfgogl/pmelite/confogl.cfg index 43c7e901b..b93413abd 100644 --- a/cfg/cfgogl/pmelite/confogl.cfg +++ b/cfg/cfgogl/pmelite/confogl.cfg @@ -169,6 +169,7 @@ confogl_addcvar z_frustration_spawn_delay 20 confogl_addcvar z_frustration_lifetime 18 confogl_addcvar z_frustration_los_delay 1 confogl_addcvar tankcontrol_print_all 0 +confogl_addcvar tankcontrol_circular_tank_assignment 0 confogl_addcvar tank_ground_pound_duration 0.1 confogl_addcvar crc_global 1 diff --git a/cfg/cfgogl/zonehunters/shared_cvars.cfg b/cfg/cfgogl/zonehunters/shared_cvars.cfg index c99c15ff6..e158eac03 100644 --- a/cfg/cfgogl/zonehunters/shared_cvars.cfg +++ b/cfg/cfgogl/zonehunters/shared_cvars.cfg @@ -113,6 +113,7 @@ confogl_addcvar director_tank_lottery_selection_time 3 confogl_addcvar z_frustration_spawn_delay 20 confogl_addcvar z_frustration_los_delay 1.2 confogl_addcvar tankcontrol_print_all 1 +confogl_addcvar tankcontrol_circular_tank_assignment 0 confogl_addcvar tank_ground_pound_duration 0.1 // Stripper Path diff --git a/cfg/cfgogl/zonemod/shared_cvars.cfg b/cfg/cfgogl/zonemod/shared_cvars.cfg index b85e1655f..cb58e856a 100644 --- a/cfg/cfgogl/zonemod/shared_cvars.cfg +++ b/cfg/cfgogl/zonemod/shared_cvars.cfg @@ -133,6 +133,7 @@ confogl_addcvar director_tank_lottery_selection_time 3 confogl_addcvar z_frustration_spawn_delay 20 confogl_addcvar z_frustration_los_delay 1.2 confogl_addcvar tankcontrol_print_all 1 +confogl_addcvar tankcontrol_circular_tank_assignment 0 confogl_addcvar tank_ground_pound_duration 0.1 // Stripper Path diff --git a/cfg/cfgogl/zoneretro/shared_cvars.cfg b/cfg/cfgogl/zoneretro/shared_cvars.cfg index 15eed964d..526dfabe0 100644 --- a/cfg/cfgogl/zoneretro/shared_cvars.cfg +++ b/cfg/cfgogl/zoneretro/shared_cvars.cfg @@ -124,6 +124,7 @@ confogl_addcvar director_tank_lottery_selection_time 3 confogl_addcvar z_frustration_spawn_delay 20 confogl_addcvar z_frustration_los_delay 1.2 confogl_addcvar tankcontrol_print_all 1 +confogl_addcvar tankcontrol_circular_tank_assignment 0 confogl_addcvar tank_ground_pound_duration 0.1 // Stripper Path