feat: module 10 spellgrid

SpellGrid capstone: Part I's card engine and Part II's grid engine joined at
three seams (rules -> aura data, hazard victims -> one destroy Sequence,
Sequence end -> write text, remove the dead, reparse). Three levels with
scripted solutions, a naive-timing test via a harness-only hook that
reverses the END_OF_PHASE list, CLIs in both tracks, the BATTLECRY IS DOUBLE
Expansion Drop, SpellGrid cards and words in course/cards and the catalog,
level schema cards/hand, and tools staging/copying of module levels.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Lucas WintherandClaude Opus 5.5 committed 2026-10-29 05:01:27 +01:00
1 parent 1f3359cfe2
commit a0cf9be214
96 files changed
+10454 -8

No files matched your search

+152
View File
@@ -412,5 +412,157 @@
"text": "a trigger type, so DEATHRATTLE IS DOUBLE doubles deathrattles",
"source": "https://github.com/utilForever/baba-is-auto/blob/main/Documents/rule-language.md",
"game": "spellgrid"
},
{
"name": "Powder Keg",
"kind": "card",
"type": "minion",
"cost": 2,
"attack": 1,
"health": 1,
"text": "Deathrattle: Deal 1 damage to all minions.",
"game": "spellgrid"
},
{
"name": "Bramble Wall",
"kind": "card",
"type": "minion",
"cost": 1,
"attack": 0,
"health": 3,
"text": "",
"game": "spellgrid"
},
{
"name": "Thorn Hedge",
"kind": "card",
"type": "minion",
"cost": 1,
"attack": 0,
"health": 2,
"text": "",
"game": "spellgrid"
},
{
"name": "Grave Warden",
"kind": "card",
"type": "minion",
"cost": 3,
"attack": 1,
"health": 1,
"text": "Your minions trigger their Deathrattles twice. (SpellGrid original: a Baron-like card with 1 Health.)",
"game": "spellgrid"
},
{
"name": "Ember Moth",
"kind": "card",
"type": "minion",
"cost": 1,
"attack": 1,
"health": 1,
"text": "Taunt. Deathrattle: Deal 2 damage to the enemy hero.",
"game": "spellgrid"
},
{
"name": "Rune Scribe",
"kind": "card",
"type": "minion",
"cost": 2,
"attack": 1,
"health": 1,
"text": "Deathrattle: Write WIN on this minion's tile.",
"game": "spellgrid"
},
{
"name": "Tin Knight",
"kind": "card",
"type": "minion",
"cost": 2,
"attack": 1,
"health": 3,
"text": "",
"game": "spellgrid"
},
{
"name": "Spark",
"kind": "card",
"type": "spell",
"cost": 1,
"text": "Deal 1 damage to a minion.",
"game": "spellgrid"
},
{
"name": "Graft",
"kind": "card",
"type": "spell",
"cost": 2,
"text": "Assemble a Deathrattle minion.",
"game": "spellgrid"
},
{
"name": "KEG",
"kind": "word",
"role": "noun",
"text": "Powder Keg's noun (a SpellGrid minion on the grid)",
"game": "spellgrid"
},
{
"name": "BRAMBLE",
"kind": "word",
"role": "noun",
"text": "Bramble Wall's noun (a SpellGrid minion on the grid)",
"game": "spellgrid"
},
{
"name": "HEDGE",
"kind": "word",
"role": "noun",
"text": "Thorn Hedge's noun (a SpellGrid minion on the grid)",
"game": "spellgrid"
},
{
"name": "WARDEN",
"kind": "word",
"role": "noun",
"text": "Grave Warden's noun (a SpellGrid minion on the grid)",
"game": "spellgrid"
},
{
"name": "MOTH",
"kind": "word",
"role": "noun",
"text": "Ember Moth's noun (a SpellGrid minion on the grid)",
"game": "spellgrid"
},
{
"name": "SCRIBE",
"kind": "word",
"role": "noun",
"text": "Rune Scribe's noun (a SpellGrid minion on the grid)",
"game": "spellgrid"
},
{
"name": "KNIGHT",
"kind": "word",
"role": "noun",
"text": "Tin Knight's noun (a SpellGrid minion on the grid)",
"game": "spellgrid"
},
{
"name": "Town Crier",
"kind": "card",
"type": "minion",
"cost": 1,
"attack": 1,
"health": 1,
"text": "Battlecry: Deal 1 damage to the enemy hero.",
"game": "spellgrid"
},
{
"name": "BATTLECRY",
"kind": "word",
"role": "meta",
"text": "a trigger type, so BATTLECRY IS DOUBLE doubles battlecries (the Module 10 Expansion Drop)",
"game": "spellgrid"
}
]