From 3770454c6fad66e3b71595adbd66983da38c001c Mon Sep 17 00:00:00 2001 From: Shane Wall Date: Sat, 5 Sep 2026 16:52:13 +1000 Subject: [PATCH] Stop a stalling bot deferring its own thinking forever The other half of #257, and it is a livelock rather than the goal starvation the issue title claimed. Stall recovery clears the goal and pushes ar_nextai out 1.5 s so the bot wanders before re-planning. It re-armed that deferral on EVERY stall. A bot stalling more often than every 1.5 s therefore pushes its own AI tick permanently out of reach: it never re-picks a goal, never routes, and the wander meant to free it is the thing keeping it blind. The edict dump named it. Romero on dm2, motionless at '2352.5 -103.1 56.0' for 65 s, sampled twice 28 s apart: ar_goalstart 13.9 -> 13.9 PickGoal had not run since t13.9 ar_nextai 27.2 -> 55.6 advancing, but from deferrals only ar_stalls 15.0 -> 53.0 38 stalls in 28 s, 1.4 a second ar_wanderturn 26.9 -> 55.8 the wander was running the whole time ar_goal, ar_node, ar_mode, ar_enemy, ar_failstreak, ar_traptime all absent, so all default Every branch that could have re-goaled him was reachable. None ran, because the tick they sit inside never fired. One condition: only defer if we are not already waiting. One stall buys one 1.5 s pause, later stalls inside that window cannot extend it, so the tick always lands. LADDER, dm2, three pairs. Goals is the metric the mechanism predicts, and every fix tape beats every control tape: goals 78, 86, 89 -> 100, 96, 91 worst freeze 22.3s -> 8.2s cells 120,124,114 -> 122,124,123 stalls 77, 57, 67 -> 41, 69, 78 dm4 66 cells, 6 stalls, 152 goals, no freezes. e1m2 co-op 45 cells, no freezes, no water pin. This is the shared stall path, not co-op gated, so it touches every bot on every map. Hence the wider net. METHOD NOTE. Two conclusions in this hunt were drawn from a field list that head -40 had silently truncated; ar_traptime and ar_failstreak were absent rather than unchecked, and only an explicit grep settled it. When the dump is the evidence, read all of it. Refs #257 Co-Authored-By: Claude Opus 5 --- engine/argus/progs.dat | Bin 879726 -> 879750 bytes game/argus/progs.dat | Bin 879726 -> 879750 bytes runs/ab_dm2_aitick.log | 2260 ++++++++++++++++++++++++++++++++++++ runs/ab_dm2_aitick_ctl.log | 2163 ++++++++++++++++++++++++++++++++++ src/argus.qc | 14 +- 5 files changed, 4436 insertions(+), 1 deletion(-) create mode 100644 runs/ab_dm2_aitick.log create mode 100644 runs/ab_dm2_aitick_ctl.log diff --git a/engine/argus/progs.dat b/engine/argus/progs.dat index 62bfa92de8514ff4a545d91316c2fd12a282d8ac..e058b3fc321a8ad95f77e54149f6c1a255189ffe 100644 GIT binary patch delta 14683 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 gFeJ+-&Uj;ec$}O4owP4J&VBAB% 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 gFeJ+-&Uj;ec$}O4owP4J&VBAB% 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 self.ar_nextai) + self.ar_nextai = time + 1.5; } } else if (vlen (self.origin - self.ar_lastpos) >= 12)