Timing API: KERNEL32.dll!GetTickCount IAT 0x005a0464
GetTickCount refs: 0x00401946, 0x0040197c, 0x00401a18
Frame interval: 48 ms at 0x0059e37c; nominal tick: 20.833 fps; catch-up cap: 3
Web tile step: 48 ms from 1 actor-controller command * 48 ms.
Historical four-frame step: 192 ms from 4 moving frames * 48 ms.
actor movement consumer still inferred: False
The original executable uses KERNEL32!GetTickCount around the main update loop and stores a 0x30 ms frame interval at 0x0059e37c. The loop waits until elapsed time covers the current frame count, computes a catch-up count, caps it at 3, and calls 0x00411476 with that count. The browser runtime therefore uses 48 ms as the original timing tick and, with the actor-controller tile mutation evidence from runtime_movement, maps one actor-controller pass to one tile step. The old four-moving-frame 192 ms browser default is retained only as historical context.
| check | value |
|---|---|
| frameIntervalMatchesExpected | True |
| frameIntervalGlobalMatchesExpected | True |
| frameCapMatchesExpected | True |
| getTickIatMatchesExpected | True |