Skip to content

Progression, Tasks & Saves

Six gates in one run

  1. First visible feedback: eight taps finish WAKE THE SEED.
  2. First automation: buy HAND for 32 Sparks.
  3. First structural choice: unlock and equip Tools, with three slots maximum.
  4. First spatial cooperation: rotate the SHOP ring into a TEAM.
  5. First physical input: tilt during STAR RUSH to collect Starlight.
  6. First permanent conversion: launch after 1M lifetime Sparks to earn Badges and unlock Gifts.

Task rewards only bridge adjacent gates. Achievements remember what the player has learned without turning the experience into a checklist.

Web save

ts
interface SaveEnvelope {
  format: 1
  checksum: string   // FNV-1a over JSON payload
  payload: SaveStateV1
}

Before writing a new primary, the web copies the old primary to backup. If localStorage is unavailable, it falls back to sessionStorage and then memory. Factory reset blocks later writes before deletion, preventing pagehide from resurrecting the removed state.

ESP32 save

  • save_primary and save_backup NVS copies.
  • Magic, schema, state size and checksum guard decoding.
  • Ordinary dirty state writes at most once per 60 seconds to reduce Flash wear.
  • Purchases, settings, first TEAM, Gifts and launch save immediately.
  • Power-off freezes ticks, commits NVS, then reads the primary back byte-for-byte; software shutdown is cancelled on failure.

By 2026-08-19, hardware had migrated from schema 1/v2 to schema 3/state v4. Older formats remain readable and invalid settings clamp to the nearest legal value.

Trusted time

If the PCF85063 integrity flag is invalid or the year is too old, firmware seeds RTC from build time. Logical time is “wall-clock epoch + monotonic delta,” so the UI thread does not wait on I²C.

Offline rewards require a trusted current RTC, a trusted old save time, non-decreasing time and an interval inside the configured cap. Otherwise the game only updates the timestamp.

Preserved and reset state

StateAfter launch
Current Sparks, tap power, Maker levelsReset
Orbit runtime structure, combo, heatReset
Run lifetime counterStarts a new run
Badges and historical earned BadgesPreserved
Purchased GiftsPreserved
Archived stars and achievementsPreserved
Language, motion, volume, tilt, ambient settingsPreserved

Input remains locked through the launch sequence, then the game returns to SEED. State commit, visual climax and the next starting point therefore have a deterministic order.