Hand and reserve
Each hero brings a 7-card loadout. Opening hand is 3 cards, hand capacity is 7, and the remaining cards stay hidden in deck order until they are drawn.

Highest Priority
The shell is ready enough. The docs are aligned. The next work that actually de-risks the game is the combat spec, the replayable simulation harness, and the data model that feeds both.
Immediate proof points
Rules
One canonical combat spec
Engine
Deterministic battle resolver
Data
Normalized cards, abilities, and items
Slice
NPC battle that can be replayed exactly
Locked for phase one
Each hero brings a 7-card loadout. Opening hand is 3 cards, hand capacity is 7, and the remaining cards stay hidden in deck order until they are drawn.
Commander turns are separate timeline actors. A commander turn can deploy, withdraw, exchange, or use one item, but never perform multiple economy actions.
Deploy consumes the commander turn and grants one immediate arrival move up to the deployed unit's move range. It does not grant an immediate attack.
Unit turns allow one movement segment followed by one combat action, or a single wait. Movement is orthogonal and cannot pass through occupied or blocked tiles.
Attack range uses Chebyshev distance. Ranged attacks require clear line-of-sight through blocking obstacles and occupied tiles. Melee attacks do not.
Phase one now locks three attack shapes: single-target, chain arcs that bounce across adjacent enemies, and cone attacks that sweep a directional wedge of tiles.
Heroes sit off-grid on centered pads above and below the arena. The simulation still resolves hero pressure through the central approach lanes on each edge.
Each side may exchange at most two times per battle, each exchange can discard any number of hand cards to redraw from the hidden deck, and turrets remain item-driven commander actions instead of unit abilities.
A side may field at most five deployed unit cards at once. Standard battles target a three-minute pace, hard-stop at ten minutes, and use per-side chess clocks so stalling loses on time instead of exhausting the shared battle timer.
Destructible altar obstacles can project arena modifiers. Their bonuses apply while the altar stands and fall off immediately when the altar is destroyed.
Phase-one simulation assumes no permanent loss. Attached items return to inventory unless a future wager ruleset explicitly marks them as staked.
Simulation boundaries
Lock deployment, movement, turn order, range, line-of-sight, collision, and hero damage into one canonical ruleset before any polished battle UI ships.
Stand up a deterministic TypeScript battle engine with seeded RNG, replay logs, and fixtures so every combat result can be reproduced and audited.
Normalize cards, abilities, passives, items, and terrain modifiers into one schema so balance changes and PvE rewards stop depending on spreadsheet guesswork.
Use NPC encounters to prove the full loop: seeded cards, deck selection, altar modifiers, battle rewards, and no-surprise custody changes.
Why this order
Wallet custody, rewards, matchmaking, and PvP stakes all depend on the battle result being explainable and reproducible. That is why simulation comes before crypto plumbing.
Current stack
Deterministic sample replay
The `bridge skirmish` fixture runs through the combat engine at build time using seed `184723`. It validates commander deploys, arrival moves, unit timeline turns, damage rolls, defeat handling, stable blueprint identity, and per-action replay frames without any renderer dependency. The wider fixture suite now also proves altar modifiers, obstacle destruction, chain or cone targeting, live authored commands, and candidate master-sheet matches for prototype blueprints.
Fixtures
3
Total events
80
Action coverage
8
Blueprint candidates
28/28
Replay log excerpt
Fixture suite
altar breach
Seed 441903, 34 events, result In progress.
bridge skirmish
Seed 184723, 20 events, result In progress.
commander operations
Seed 92411, 26 events, result In progress.
Phase 0
Ship the public site, app shell, env wiring, and documentation baseline.
Phase 1
Lock the rules spec, seeded RNG, replay format, and deterministic battle harness before shipping polished combat UI.
Phase 2
Prove the 4x6 battle system, hero siege win condition, terrain modifiers, seeded cards, and PvE quest flow.
Phase 3
Add auth, deck ownership, the custody ledger, inventory, equipment, and level progression once the battle core is stable.
Phase 4
Ship matchmaking, ELO, bounty board, exchange, auction house, shops, and non-wagered PvP before any higher-risk asset-loss modes.
Build principle
That is the decisive architecture choice. If every in-battle move depends on chain writes, the game dies on latency and fees. If the custody ledger is authoritative during play and chain writes are reserved for deposits, withdrawals, and final settlement, the game can feel instant without giving up wallet ownership.