Skip to content

fix(playerbots): stop a runner halt where the Route Path renders the bot - #61

Merged
Mathih13 merged 2 commits into
mainfrom
fix/playerbots-stop-where-rendered
Oct 3, 2026
Merged

Mathih13 merged 2 commits into
mainfrom
fix/playerbots-stop-where-rendered

Conversation

@Mathih13

@Mathih13 Mathih13 commented Oct 3, 2026

Copy link
Copy Markdown
Contributor

When a runner decision stopped a bot between a Route leg end and the next 500 ms creature tick, the bot stopped at the last ticked point. That is up to one tick short of where the client draws it, so the client saw the bot snap back.

stop_movement now calls Core's creatures::tick::stop_where_rendered (LyraCoreProject/LyraCore#603). It stores, and sends the stop at, the point along the Route Path at the stop time. A blocked or changed path keeps the stored point, as the creature tick does.

Two new tests in playerbots_rewrite:

  • A stop between ticks stores the rendered point, and the bot faces the next waypoint.
  • A stop after the navigation inputs change keeps the stored point.

With the runner change reverted, the first test fails: it stores (1200.0, 1200.0) instead of (1210.47, 1202.71).

It stacks on #59, which pins Core with #603. Merge #59 first.

Human check: in a real client, watch a bot on a bent path when a decision interrupts it mid-leg (a cast starts, or the controller switches). It halts where it is drawn, does not snap back, and faces the next waypoint.

Refs LyraCoreProject/LyraCore#570

Made by Claude Opus 5.5 orchestrating Claude Sonnet 5.5 in Claude Code.

🤖 Generated with Claude Code

Mathih13 and others added 2 commits October 3, 2026 08:22
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
A runner decision that stops a moving bot wrote the stop at the stored
position. That position lags the leg between two creature ticks, so the
client snapped the bot back. stop_movement now calls
creatures::tick::stop_where_rendered and writes the row it returns. A
blocked or changed Route Path still keeps the stored point.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 3, 2026

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 29 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 05c82b7c-6a7b-47b4-b836-c9f43aeda793
📥 Commits

Reviewing files that changed from the base of the PR and between eda8fa2 and 88da2df.

📒 Files selected for processing (6)
  • .github/workflows/core-tip.yml
  • .github/workflows/playerbots-capacity.yml
  • .github/workflows/playerbots-class-behavior.yml
  • .github/workflows/playerbots-target-claims.yml
  • playerbots/src/runner.rs
  • playerbots/testsuite/tests/playerbots_rewrite/runner.rs
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Mathih13
Mathih13 merged commit dd2fac7 into main Oct 3, 2026
30 of 31 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant