Character keeps moving for awhile after unpressing W when i have low FPS.
Summary
When playing the game with low fps (~15), if i press a movement key(lets say W) for some time, the character will keep on moving for a time after i stop pressing W. This happens for all movement directions. Sometimes it also happens when i have an ok fps (~25-30), but it mostly happens with low fps.
The character stops moving by itself, i dont need to do anything to make it happen. If I press W for awhile and then press D(right), after the character finally stops moving forward, it will move to the right (so basically key presses arent ignored, it just takes it time to execute them).
Steps to reproduce
- set your keyboard's key repeat speed high, like 50+ keys/second.
- open the game, preferably on a weak machine.
- change the game's settings, mainly graphics, so that the game will be heavy and you'll have low fps, below 15 is great.
- start moving your character forward press W for some time, lets say 20 seconds.
- Watch your character keep moving forward after you unpressed the key.
Relevant logs and/or screenshots
Are there any logs i can provide?
System details
openSUSE tumbleweed(its a rolling release linux) latest update. DE is kde plasma 5.20.3 the pc is an old laptop with 8gb ddr3 ram, intel i5 gen 3, gpu is "intel hd graphics 4000".
Veloren version
version: 0.8.0. installed with flatpak.
My personal testing
With low graphics (so high fps) this issue rarely happens. It does happen sometimes when my fps drops occasionally (im normally on key repeat speed of 38 keys/s).
With high graphics and around 10-15 fps, the issue happened with key repeat speed of 38 keys/s. However, it barely happens with key repeat speed of 20 keys/s. Meaning after i press W for a long time, the character barely (if at all) moves after i unpress.
Just to be clear:
- the character, when moving after i unpress, does not stop moving if i press W again (like in some old games, where the character would move indefinitely until you press w again).
- I dont activate auto-walk.
- This delay/buffering can happen with other actions, but most reproducible with movement.
- My guess is that when the pc is having a hard time running the game(so low fps), key presses arent handled fast enough, and are "buffered". high key repeats makes key presses come in faster than they are processed which creates this issue. I did not debug this to verify.