Give each bot a continuous adaptive skill - #408
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0024881721
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| if (self.ar_fireburst > 0) | ||
| { | ||
| if (time < self.ar_fireburst) | ||
| return TRUE; |
There was a problem hiding this comment.
Enforce burst expiry during sight-loss pursuit
When a nailgun or lightning burst is active and the target has been unseen for 0.4 seconds, Argus_Combat returns from its pursuit branch before calling Argus_TriggerReady. Consequently this expiry check never runs, button0 remains asserted from the previous frame, and the stock continuous-fire think chain can keep firing at the stale aim point well past ar_fireburst until pursuit ends. Process or cancel the burst before that early pursuit return so the advertised bound applies when line of sight is lost.
Useful? React with 👍 / 👎.
| if (!self.ar_prefired && self.ar_skill >= AR_SKILL_PREFIRE | ||
| && self.weapon == IT_ROCKET_LAUNCHER | ||
| && self.ammo_rockets >= 2 | ||
| && time > self.attack_finished |
There was a problem hiding this comment.
Apply trigger cadence to speculative prefire
When sight is lost just as a rocket's stock refire clock expires, this prefire path checks only attack_finished and invokes W_Attack directly, bypassing both ar_fireready and Argus_TriggerFired. The speculative shot can therefore occur during the newly added humanized pause, and the following shot receives no added delay relative to it. Route prefire through the same trigger readiness and post-fire bookkeeping as normal discrete shots.
Useful? React with 👍 / 👎.
Closes #358. Closes #381. Closes #359. Adds continuous per-bot skill interpolation, per-slot live offsets, a unified capability ladder, humanized trigger cadence, and opt-in Reaper-style adaptation for human deathmatches. Continuous weapon chains are cancelled safely on weapon changes, and multiplayer roster controls now require the server-console scratch1 147 switch. Verification: modern FTEQCC compile (six pre-existing warnings); 52 Python tests; 188 Rust unit tests, 2 integration tests, and doc-tests; ship/tape/nav CI; fresh 65-second dm4 and dm2 smokes; live protocol-15 adaptive, authorization, and continuous-to-discrete weapon-switch checks. Independent yellow, red, and purple reviews: GO.