Back to play console
Brimstone

Highest Priority

Brimstone needs a deterministic battle core before it needs wallet theatrics.

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

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.

Commander turns

Commander turns are separate timeline actors. A commander turn can deploy, withdraw, exchange, or use one item, but never perform multiple economy actions.

Deploy timing

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

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.

Range and line-of-sight

Attack range uses Chebyshev distance. Ranged attacks require clear line-of-sight through blocking obstacles and occupied tiles. Melee attacks do not.

Shaped attacks

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.

Hero targeting

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.

Exchange and item limits

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.

Board and clock limits

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.

Altars and modifiers

Destructible altar obstacles can project arena modifiers. Their bonuses apply while the altar stands and fall off immediately when the altar is destroyed.

Wager safety

Phase-one simulation assumes no permanent loss. Attached items return to inventory unless a future wager ruleset explicitly marks them as staked.

Simulation boundaries

  • Simulation owns board state, timeline order, RNG rolls, hit resolution, damage, defeat, and replay logs.
  • The renderer owns animation, camera framing, particles, and input affordances.
  • The browser client can suggest actions but never decide outcomes.
  • Replay logs must be reproducible from seed plus scripted inputs alone.

Combat rules spec

Lock deployment, movement, turn order, range, line-of-sight, collision, and hero damage into one canonical ruleset before any polished battle UI ships.

Simulation harness

Stand up a deterministic TypeScript battle engine with seeded RNG, replay logs, and fixtures so every combat result can be reproduced and audited.

Canonical data model

Normalize cards, abilities, passives, items, and terrain modifiers into one schema so balance changes and PvE rewards stop depending on spreadsheet guesswork.

PvE proving ground

Use NPC encounters to prove the full loop: seeded cards, deck selection, altar modifiers, battle rewards, and no-surprise custody changes.

Why this order

If combat is fuzzy,
every later system lies.

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

  • Web shell: Next.js 16, React 19, TypeScript, Tailwind CSS 4
  • Core backend: Supabase Auth, Postgres, Realtime, Storage, Edge Functions
  • Client services: Firebase Analytics and Cloud Messaging only
  • Authoritative matches: Dedicated TypeScript match service
  • Asset custody: Low-fee EVM L2 with SAGA-managed game custody

Deterministic sample replay

The playbook now runs a seeded skirmish, not just prose.

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

attackdeploydeployTurretexchangemovemoveAndAttackwaitwithdraw

Replay log excerpt

T1: Battle starts with seed 184723. bottom acts first.
T1: Cinder Knight enters the arena at (1, 4).
T1: Cinder Knight repositions to (1, 3).
T2: Mire Archer enters the arena at (2, 1).
T2: Mire Archer repositions to (2, 2).
T3: Cinder Knight repositions to (1, 1).
T3: Cinder Knight hits Mire Archer for 8 damage.
T3: Mire Archer falls to 3/11 HP.
T4: Mire Archer attacks Cinder Knight but misses on d20 3.
T5: Ember Mage enters the arena at (1, 4).

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

Identity and landing

Ship the public site, app shell, env wiring, and documentation baseline.

Phase 1

Combat rules and simulation

Lock the rules spec, seeded RNG, replay format, and deterministic battle harness before shipping polished combat UI.

Phase 2

NPC vertical slice

Prove the 4x6 battle system, hero siege win condition, terrain modifiers, seeded cards, and PvE quest flow.

Phase 3

Accounts, custody, and progression

Add auth, deck ownership, the custody ledger, inventory, equipment, and level progression once the battle core is stable.

Phase 4

Standard PvP and economy

Ship matchmaking, ELO, bounty board, exchange, auction house, shops, and non-wagered PvP before any higher-risk asset-loss modes.

Build principle

On-chain assets.
Off-chain combat.

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.