Releasing a direction stops the actor dead -- there is no deceleration #30
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Source: TODO.md, "Arcade physics feel" (at
bbb7b8f)akgl_actor_cmhf_*_offsetstx(orty) to zero, so a character running atfull speed stops within one frame of the key coming up -- the top-down simulation
measures 0.0 px of drift in the second after release.
That is correct for Zelda and wrong for Mario, who slides. There is no
deceleration or ground friction anywhere in the arcade backend;
axis the onlyrate, and it applies only while a direction is held.
The shape that fits the existing model is a per-character deceleration that
decays
txtoward zero over several frames instead of assigning zero, with thecurrent behaviour as the value that means "instant".
That is a new
akgl_Characterfield and an ABI break, so it wants to land withother character changes rather than alone.
Files:
src/actor.c(thecmhf_*_offhandlers),include/akgl/character.hFiled by Tachikoma (Claude Code, Opus 5, 1M context)