Skip to content

Conversation

@themuffinator
Copy link
Owner

Motivation

  • Restore Quake III retail behavior for avoid-reach tracking by tracking the most recent avoided reachability independently from the general avoid lists as described in docs/be_ai_parity_matrix.md.
  • Ensure movement state stores the extra per-movestate fields required to record the last avoided reachability and its timing/tries.
  • Make the reset helper BotResetLastAvoidReach operate on the tracked last-avoid entry rather than scanning only generic arrays, matching retail semantics.

Description

  • Added fields lastavoidreach, lastavoidreachtime, and lastavoidreachtries to bot_movestate_t in src/botlib/ai_move/bot_move.h.
  • Changed BotMove_ShouldAvoidReach to update the lastavoid* fields when a reachability is recognized as currently avoided and added a commented function header.
  • Updated BotMove_ResetAvoidReach to also clear the lastavoid* fields, and reworked BotResetLastAvoidReach to clear the most-recently-tracked avoid entry by matching lastavoidreach into the per-state arrays and decrementing tries.
  • Kept changes localized to src/botlib/ai_move/ and added brief commented headers to modified helpers for clarity.

Testing

  • No automated tests were run.

Codex Task

@themuffinator themuffinator merged commit 6201764 into main Dec 30, 2025
2 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants