LiveOps events Odin-decoded

Event balance decoded from the Odin Binary serialization blob (the Dictionary fields Unity can't serialize). Each blob was decoded with a from-scratch Odin BinaryDataReader and accepted only if it consumed the blob exactly and ended at EndOfStream — the same byte-verification bar as the rest of the archive.

How this was calculated — and why

How: unlike the offers, these event configs hide their real balance (difficulty tiers, reward conditions, bot intervals) in a non-empty Odin Binary blob, because they use Dictionary fields Unity can't serialize. We wrote a reader for Odin's binary protocol from the game's own BinaryEntryType enum, and only trust a blob if the reader lands on EndOfStream having consumed every byte — so a misread fails loudly instead of inventing numbers.

Why: this is the LiveOps tuning (token gates, reward ladders, bot pacing) that drives event difficulty and payout — the part hardest to get right by guesswork, so it's the strongest hallucination test.

Milestone event — FlowerFortune

Unlock level: 35 · Token: MilestoneEventToken · Loops: False

Difficulty tiers → milestones (tokens required → reward). From _difficultyTiers dictionary in the Odin blob.

DifficultyMilestones (tokens → reward)
03→BoosterUndo:3 6→BoosterWild:2 9→FreeTicket:1 12→Coin:20
16→BoosterUndo:3 12→BoosterWild:2 15→FreeTicket:1 18→Coin:20
212→BoosterUndo:3 15→BoosterWild:2 18→FreeTicket:1 21→Coin:20

Race event — Flower

Min level: 35 · Token: RaceEventToken

Bot score-update intervals by bot difficulty (seconds between bot score ticks) — from _botScoreUpdateIntervals.

Bot difficultyMin secondsMax seconds
000
1240480
2120240
360120

Cascade event — Donut

Min level: 15 · Token: CascadeToken · Looping: True · Big-reward interval: 1 · Max big reward: 10000 · Big-reward coef: 50.0 · Coins mult: 0.029999999329447746

Tokens-add condition thresholds (_tokensAddConditions).

Tokens added
5
10

Break-to-Win event — BreakToWinEvent_Default

Token: · Key: · Conversion coef: · Starting tokens:

How this was decoded

These configs are Odin SerializedScriptableObject with a non-empty Binary blob (unlike the offers). The dictionaries (difficulty tiers, reward conditions, bot intervals) live in that blob. Full machine-readable output: events.json ↓. Polymorphic reward conditions (the IEventRewardCondition keys) decode to their numeric effect; their internal type detail is partial.