Live demoRuns entirely in your browser

Pocket Tactics

A real MEKYRA project: a 19-line rulebook, a deterministic engine and two ghost seats. Change a rule, play it, replay the match, then break the game with thousands of seeded playtests. Your project is saved in this browser only.

Playable nowruleset v0.4.0 · 0/3 questions ruled · 0 Lab runs

pocket-tactics/rulebook.mdBlue words are dials. Click a § number to see what it compiles to.

§1 Setup

  1. Two players face each other across three lanes. Each defends a Keep.

  2. Each Keep starts with health.

  3. Shuffle your 12-card deck and draw cards.

  4. The second player draws extra cards.

    ClaudeThis is the seat-balance knob. Worth a Break-It run before anyone playtests.

§2 Your turn

  1. Gain energy equal to the number of turns you have taken, up to .

  2. Then draw a card. The first player draw on their first turn.

  3. Play units from your hand by paying their cost. Each lane holds one unit per side.

§3 Combat

  1. At the end of your turn, each ready unit attacks the enemy unit across from it, which strikes back. If that lane is empty, it hits the enemy Keep.

    Claude“Strikes back” read as simultaneous: both units deal damage in the same step.

  2. Units that entered play this turn ready.

    Question A-3Two readings are possible. Using the literal one until you rule.

  3. A unit with damage equal to its health is destroyed.

§4 Card effects

  1. When Spark Imp enters play, deal damage to an enemy unit in .

    Claude“Adjacent” read as one lane to the left or right, not the same lane. Confirm?

  2. If no enemy unit is in range, Spark Imp .

    Question A-2Two readings are possible. Using the literal one until you rule.

  3. When Cinder Drake enters play, deal 1 damage to each enemy unit.

  4. When Sniper Owl enters play, deal 2 damage to the enemy Keep.

§5 Healing

  1. When Mender enters play, heal 2 damage from a friendly unit.

  2. Whenever another friendly unit is healed, Bloom Wisp heals 1 damage from another friendly unit.

    ClaudeThis trigger can fire itself again. Whether it stops depends on §5.3.

  3. A heal that removes no damage as healing.

    Question A-1Two readings are possible. Using the literal one until you rule.

§6 Winning

  1. A player whose Keep reaches 0 health loses.

  2. After 40 turns the game is a draw.

pocket-tactics.rulespec§4.1
“When Spark Imp enters play, deal 2 damage to an enemy unit in an adjacent lane.”
# compiled from §4.1 · source line cited
when   spark_imp.enters
target 1 enemy.unit where lane in adjacent(self.lane)
do     damage(target, 2)
Compiledschema · refs · types

Dials re-parameterize the engine instantly; nothing is re-generated.

Ambiguity Ledger 3 open

  1. A-1 · §5.3Open question

    Does a heal that removes no damage still count as “healed”?

  2. A-2 · §4.2Open question

    Can Spark Imp be played when no enemy unit is in range?

  3. A-3 · §3.2Open question

    Do units attack on the turn they enter play?

Changes v0.4.0

No changes yet. This is the ruleset as written.

Computed live

The engine, the ghost seats, the replays and every Lab number run in your browser on the same code. The Lab plays real matches from numbered seeds, and the count on screen is the count played.

Where Claude fits

Claude’s margin notes, the three ledger questions and the wording of Lab findings come pre-authored with this project, so the demo opens instantly with no account. In Studio, Claude drafts them from your own rulebook.

Try this pathLeave question A-1 open and run the Lab: it finds the Mender and Bloom Wisp loop. Apply the fix, run again, then work on first-seat advantage with the dials in §1.4 and §2.2.