You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
A creature stands idle after entering view, then jumps forward to catch up #272
Expected. A creature's movement looks continuous to a client in view of it, and it engages a player who enters aggro range promptly, not after a multi-second delay.
Actual (at 87109e3c). Two causes remain from the investigation that split this issue off #252 (a third, no spline replay on a CREATE mid-leg, is already fixed).
The Gateway sheds a queued motion flush under deep egress, and a later leg supersedes the pending one in the same per-viewer slot (world_view.rs#L1810-L1822). The latest leg still reaches the client, but late: the client plays it from receipt, while the server has already advanced the mover past start_micros, so the next leg snaps the client forward.
Proximity aggro also runs on an eight-tick sense cadence, about four seconds at the 500 ms creature tick, while chase runs every tick once engaged (ai.rs#L428-L435). A player walking into aggro range can wait up to four seconds before the creature reacts.
How it shows. A creature under load stands idle, then visibly jumps to its real position on the next leg. Separately, a creature can let a player stand in aggro range for several seconds before it notices.
Fix direction. Decide whether a shed flush may be re-sent with its true start_micros so the client catches up at normal speed instead of replaying from receipt, or whether shedding should stop entirely for creature legs. For the sense cadence, either shorten SENSE_EVERY_N_TICKS or add a cheap proximity check that runs every tick. Verify with the stock 1.12 acceptance recording from #252: engage from rest, stop right after approach, kite in a straight line, with no multi-second idle followed by a compressed catch-up.
Resident creature movement now replays after CREATE in merged PR #450. A viewer that enters during an active leg receives its current interpolated position and remaining duration. The change passed all seven checks and CodeRabbit review at head 153f55f.
This completes finding 1. The issue remains open for the motion-flush shedding policy, proximity sensing cadence and the stated stock-client recording. No Realm was changed or client acceptance claimed.
changed the title [-]fix(gateway): creature spline relay shows idle-then-fast catch-up[/-][+]A creature stands idle after entering view, then jumps forward to catch up[/+]on Oct 8, 2026
Activity
Mathih13 commentedon Sep 7, 2026
Resident creature movement now replays after CREATE in merged PR #450. A viewer that enters during an active leg receives its current interpolated position and remaining duration. The change passed all seven checks and CodeRabbit review at head
153f55f.This completes finding 1. The issue remains open for the motion-flush shedding policy, proximity sensing cadence and the stated stock-client recording. No Realm was changed or client acceptance claimed.
[-]fix(gateway): creature spline relay shows idle-then-fast catch-up[/-][+]A creature stands idle after entering view, then jumps forward to catch up[/+]