Game state

Observed transitions

  1. Load with ?token= -> init call (body not captured) -> splash -> START NOW (no API call) -> base game.
  2. Plain spin -> POST /spin -> closed: true, nextFeature: null. (base-game/)
  3. Spin triggering free spins -> POST /spin -> closed: false, nextFeature: "freespins", featureResults[0] with currentCount: 0, totalCount: 10. Balance debited by bet. (free-spins/01)
  4. Client then loops POST /feature with featureName base64 of freespins, one call per free spin, currentCount 1..10, closed: false until the last. No user input between calls in this session (auto-play after dismissing the dialog; I did not test whether the client waits for a click in other conditions).
  5. Last feature call -> closed: true, nextFeature: null, featureResults[0].closed: true, balance credited with total feature win. (free-spins/04)

State machine as observed

idle –spin(no trigger)–> idle idle –spin(3 scatters)–> feature pending (freespins) –feature x10–> idle

Fields that carry state

  • data.closed, data.result.nextFeature (null or "freespins"), featureResults[0].closed, currentCount / totalCount.
  • roundId / id stays the same across the trigger spin and all feature calls (hntyIlVxTCmvEICFxiRbS). The feature request does not send it, so the server tracks the open round per player (INFERRED).
  • playerInfo.balance is updated only on the trigger spin (bet debit) and the final feature call (win credit). endTime appears only on closed responses.
  • data.result.reelView in feature responses stays at the trigger grid; per-spin grids are under spinResults[0].reelView.

Not observed

Resume of a pending feature after reload, buy bonus, retrigger, and error/rejected-request states.

Built with LogoFlowershow