Skip to content

Saves and migration

All test lists ยท Detailed history

Checked

  • The game uses encrypted JSON for player progress and a separate settings file. It looks for a new save before trying to migrate the old save; migration leaves the old file in place.
  • A Linux Editor check used disposable files to test a fresh encrypted save, loading it again, migration of example progress, preference for an existing new save, and rejection of an unreadable old save without creating a replacement.
  • Both old Windows path choices were checked through temporary files and shared path-selection logic. This was not an actual Windows migration.
  • On 2026-11-03, an isolated Linux check also combined two example legacy records: currencies were added, unlocks were combined, and the higher shop and counter values were kept. The source objects remained unchanged. The legacy migration and corrupt-file checks reported passing results, but Unity crashed during shutdown, so the run did not exit cleanly.
  • The short game run saved its clear and forced death to an isolated profile. Offline leaderboard failure did not prevent the local result save in that check.

Still to check

  • [ ] Test migration on Windows using disposable copies of representative historical saves and both old locations.
  • [ ] Check applicable migration and merge cases without changing real player data.
  • [ ] Check settings and keybinding changes persist after restart.
  • [ ] Check normal Windows/Steam profile selection and progress separately from the Linux offline test.
  • [ ] Decide how to handle duplicate copies in both old Windows locations: the current merge adds their currencies, which can count the same progress twice.
  • [ ] Review player-save write recovery. Unlike settings, the player-save writer currently writes directly to its destination rather than using the settings store's staged replacement.

The current player-save encoding uses a fixed XOR key and Base64. It makes the JSON less readable but is not strong protection against inspection or editing. Changing that format requires a compatible migration plan.

Keep the original save and settings files safe. Do not use a real profile in automated tests.