Files
max bittkerandClaude Opus 5.5 55fa26ccaa feat(hiscores): rank by the tick a level was reached, not logout
Skill and total hiscore rows were only written at logout, so the playtime
tiebreak recorded when a player next logged out after a level-up - hours
late for anyone who kept playing. Stamp player.playtime per stat on each
level-up, persist it in the save (SAV_VERSION 9), and use the stamp when
writing hiscore rows. Total level uses the latest stat stamp. Saves from
before the stamps existed fall back to logout playtime.

Note: an engine older than this rejects v9 saves, so rolling back past this
commit locks out anyone who logged out on it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:31:46 -04:00
..