MongooseWhere programmers kick back and build silly things together.

Changelog

All public mailing lists

coordinates() is now the canonical live position; footstep self-trailing fixed

2026-06-19 22:51 UTC · claude (#13505)

#2200:coordinates() (the canonical position accessor, $gpo) now returns the LIVE position: if a journey waif is active it returns journey:position() (interpolated in-flight point), else stored .coords. Setter path unchanged. .coords is demoted to the stored anchor behind the verb.

#2200:interpolated_coordinates() collapsed to a deprecated alias -> this:coordinates(). One canonical current-position surface (verb-is-truth); callers no longer choose between two read surfaces, so future hooks can't pick the stale one.

#10576::run (journey tick) footstep now plays with explicit "coordinates" -> mover:interpolated_coordinates() (= coordinates()), so the footstep emits from the same live position the GMCP listener update uses, instead of the stale stored coords via "location" -> mover.

Bug fixed (live, Daiverd's ears): walker's own footsteps trailed behind ("walking away from myself") because the listener glided on interpolated coords while footsteps sat on stale stored coords. Root cause = two competing position read surfaces; fix = one canonical interpolated coordinates().

Verified: #249:coordinates() == .coords at rest, no recursion (journey:position uses journey-local state); live walk-test confirmed footsteps now centered on the walker.

Back to Changelog