Files
systemic-game-design-course/course/schema/level.schema.json
T
Lucas WintherandClaude Opus 5.5 a0cf9be214 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 <[email protected]>
2026-10-29 05:01:27 +01:00

15 lines
935 B
JSON

{
"$comment": "x grows right, y grows down. Module 10 (SpellGrid): cards are minions in play for player 0, each also a grid object whose noun is the card's noun; hand is the card names in player 0's hand.",
"type": "object",
"required": ["width", "height", "objects"],
"properties": {
"width": { "type": "integer", "minimum": 1 },
"height": { "type": "integer", "minimum": 1 },
"objects": { "type": "array", "items": { "type": "object", "required": ["kind", "x", "y"],
"properties": { "kind": { "type": "string" }, "x": { "type": "integer", "minimum": 0 }, "y": { "type": "integer", "minimum": 0 } } } },
"cards": { "type": "array", "items": { "type": "object", "required": ["card", "x", "y"],
"properties": { "card": { "type": "string" }, "x": { "type": "integer", "minimum": 0 }, "y": { "type": "integer", "minimum": 0 } } } },
"hand": { "type": "array", "items": { "type": "string" } }
}
}