Skip to content

Commit

Permalink
Fix AI Tank "repsawn" with 5000HP (#866)
Browse files Browse the repository at this point in the history
* l4d_tank_control_eq: Fix AI tank "respawn" with 5000HP

* Update configs to further prevent AI Tank suicide
  • Loading branch information
jensewe authored Jan 5, 2025
1 parent 0d5ecf6 commit 35dea4f
Show file tree
Hide file tree
Showing 12 changed files with 30 additions and 4 deletions.
Binary file modified addons/sourcemod/plugins/optional/l4d_tank_control_eq.smx
Binary file not shown.
14 changes: 10 additions & 4 deletions addons/sourcemod/scripting/l4d_tank_control_eq.sp
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,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.26",
version = "0.0.27",
url = "https://github.com/SirPlease/L4D2-Competitive-Rework"
}

Expand Down Expand Up @@ -173,13 +173,19 @@ public Action L4D_OnTryOfferingTankBot(int tank_index, bool &enterStatis)
public void L4D_OnLeaveStasis(int tank)
{
// Tank is always AI here, delay by a frame.
RequestFrame(L4D_OnLeaveStasis_Post, tank);
RequestFrame(L4D_OnLeaveStasis_Post, GetClientUserId(tank));
}

void L4D_OnLeaveStasis_Post(int tank)
void L4D_OnLeaveStasis_Post(int userid)
{
int tank = GetClientOfUserId(userid);
// Tank passed from AI to a player, nothing to do here.
if (!IsClientInGame(tank))
if (!tank || !IsClientInGame(tank))
return;

// @Forgetest:
// AI Tank may have committed suicide at the moment
if (!IsPlayerAlive(tank) || GetEntProp(tank, Prop_Send, "m_isIncapacitated")) // Thanks to @sheo for noting the tank incap
return;

if (hTankDebug.BoolValue)
Expand Down
2 changes: 2 additions & 0 deletions cfg/cfgogl/acemodrv/shared_cvars.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,8 @@ confogl_addcvar versus_tank_flow_team_variation 0
confogl_addcvar versus_boss_flow_max 0.9
confogl_addcvar versus_boss_flow_min 0.10
confogl_addcvar tank_stuck_time_suicide 999999999
confogl_addcvar tank_stuck_visibility_tolerance_suicide 999999999
confogl_addcvar tank_visibility_tolerance_suicide 999999999
confogl_addcvar director_tank_lottery_selection_time 3
confogl_addcvar z_witch_damage_per_kill_hit 100
confogl_addcvar z_witch_personal_space 500
Expand Down
2 changes: 2 additions & 0 deletions cfg/cfgogl/apex/shared_cvars.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,8 @@ confogl_addcvar versus_tank_flow_team_variation 0
confogl_addcvar versus_boss_flow_max 0.9
confogl_addcvar versus_boss_flow_min 0.10
confogl_addcvar tank_stuck_time_suicide 999999999
confogl_addcvar tank_stuck_visibility_tolerance_suicide 999999999
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
Expand Down
2 changes: 2 additions & 0 deletions cfg/cfgogl/deadman/confogl.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,8 @@ confogl_addcvar z_brawl_chance 0
confogl_addcvar versus_boss_flow_max 0.85
confogl_addcvar versus_boss_flow_min 0.10
confogl_addcvar tank_stuck_time_suicide 999999999
confogl_addcvar tank_stuck_visibility_tolerance_suicide 999999999
confogl_addcvar tank_visibility_tolerance_suicide 999999999
confogl_addcvar director_tank_lottery_selection_time 3
confogl_addcvar z_witch_damage_per_kill_hit 75
confogl_addcvar z_witch_personal_space 240
Expand Down
2 changes: 2 additions & 0 deletions cfg/cfgogl/eq/shared_cvars.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,8 @@ confogl_addcvar versus_tank_flow_team_variation 0
confogl_addcvar versus_boss_flow_max 0.9
confogl_addcvar versus_boss_flow_min 0.10
confogl_addcvar tank_stuck_time_suicide 999999999
confogl_addcvar tank_stuck_visibility_tolerance_suicide 999999999
confogl_addcvar tank_visibility_tolerance_suicide 999999999
confogl_addcvar director_tank_lottery_selection_time 3
confogl_addcvar z_witch_damage_per_kill_hit 100
confogl_addcvar z_witch_personal_space 500
Expand Down
2 changes: 2 additions & 0 deletions cfg/cfgogl/neomod/shared_cvars.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,8 @@ confogl_addcvar versus_tank_flow_team_variation 0
confogl_addcvar versus_boss_flow_max 0.85
confogl_addcvar versus_boss_flow_min 0.20
confogl_addcvar tank_stuck_time_suicide 999999999
confogl_addcvar tank_stuck_visibility_tolerance_suicide 999999999
confogl_addcvar tank_visibility_tolerance_suicide 999999999
confogl_addcvar director_tank_lottery_selection_time 3
confogl_addcvar z_frustration_spawn_delay 25
confogl_addcvar z_frustration_los_delay 1.2
Expand Down
2 changes: 2 additions & 0 deletions cfg/cfgogl/nextmod/shared_cvars.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,8 @@ confogl_addcvar versus_tank_flow_team_variation 0
confogl_addcvar versus_boss_flow_max 0.85
confogl_addcvar versus_boss_flow_min 0.20
confogl_addcvar tank_stuck_time_suicide 999999999
confogl_addcvar tank_stuck_visibility_tolerance_suicide 999999999
confogl_addcvar tank_visibility_tolerance_suicide 999999999
confogl_addcvar director_tank_lottery_selection_time 3
confogl_addcvar z_frustration_spawn_delay 25
confogl_addcvar z_frustration_los_delay 1.2
Expand Down
2 changes: 2 additions & 0 deletions cfg/cfgogl/pmelite/confogl.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,8 @@ confogl_addcvar versus_tank_flow_team_variation 0
confogl_addcvar versus_boss_flow_max 0.80
confogl_addcvar versus_boss_flow_min 0.20
confogl_addcvar tank_stuck_time_suicide 999999999
confogl_addcvar tank_stuck_visibility_tolerance_suicide 999999999
confogl_addcvar tank_visibility_tolerance_suicide 999999999
confogl_addcvar director_tank_lottery_selection_time 3
confogl_addcvar z_witch_damage_per_kill_hit 75
confogl_addcvar z_witch_personal_space 240
Expand Down
2 changes: 2 additions & 0 deletions cfg/cfgogl/zonehunters/shared_cvars.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,8 @@ confogl_addcvar versus_tank_flow_team_variation 0
confogl_addcvar versus_boss_flow_max 0.85
confogl_addcvar versus_boss_flow_min 0.20
confogl_addcvar tank_stuck_time_suicide 999999999
confogl_addcvar tank_stuck_visibility_tolerance_suicide 999999999
confogl_addcvar tank_visibility_tolerance_suicide 999999999
confogl_addcvar director_tank_lottery_selection_time 3
confogl_addcvar z_frustration_spawn_delay 20
confogl_addcvar z_frustration_los_delay 1.2
Expand Down
2 changes: 2 additions & 0 deletions cfg/cfgogl/zonemod/shared_cvars.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,8 @@ confogl_addcvar versus_tank_flow_team_variation 0
confogl_addcvar versus_boss_flow_max 0.85
confogl_addcvar versus_boss_flow_min 0.20
confogl_addcvar tank_stuck_time_suicide 999999999
confogl_addcvar tank_stuck_visibility_tolerance_suicide 999999999
confogl_addcvar tank_visibility_tolerance_suicide 999999999
confogl_addcvar director_tank_lottery_selection_time 3
confogl_addcvar z_frustration_spawn_delay 20
confogl_addcvar z_frustration_los_delay 1.2
Expand Down
2 changes: 2 additions & 0 deletions cfg/cfgogl/zoneretro/shared_cvars.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,8 @@ confogl_addcvar versus_tank_flow_team_variation 0
confogl_addcvar versus_boss_flow_max 0.85
confogl_addcvar versus_boss_flow_min 0.20
confogl_addcvar tank_stuck_time_suicide 999999999
confogl_addcvar tank_stuck_visibility_tolerance_suicide 999999999
confogl_addcvar tank_visibility_tolerance_suicide 999999999
confogl_addcvar director_tank_lottery_selection_time 3
confogl_addcvar z_frustration_spawn_delay 20
confogl_addcvar z_frustration_los_delay 1.2
Expand Down

0 comments on commit 35dea4f

Please sign in to comment.