Files
Bubberstation/code/controllers
SkyratBot 632b5cc6b2 [MIRROR] Fix client timers having invalid <1ds waits [MDB IGNORE] (#15982)
* Fix client timers having invalid <1ds waits (#69356)

About The Pull Request

Timers clamped their waits to >world.tick_lag and rounded it to multiples of the same, but this is invalid for clienttime timers. Clienttime timers have a resolution of one decisecond instead, so we now clamp and round it to that instead. (The stacktrace for negative waits is technically invalid but I didn't care enough to touch it.)

Thanks to LemonInTheDark and MrStonedOne for their help in tracking this issue down.
Why It's Good For The Game

These are effectively zero-wait timers, which can mess up the iteration of the clienttime timer queue by being inserted into the past or current tick's list and causing the head/index to desync, potentially leaving spent timers in the queue or firing them again.

* Fix client timers having invalid <1ds waits

Co-authored-by: Penelope Haze <110272328+out-of-phaze@users.noreply.github.com>
2022-09-02 20:30:28 -04:00
..
2022-05-26 23:29:38 +01:00