Movement planned in full, then committed: a Planner builds a plan (moving and destroyed ids) by running content's movement responses (OPEN/SHUT, PUSH, STOP) for every step, rolling back failed branches. Edge of level blocks; YOU objects move furthest-ahead first; rules are reparsed once after movement. Harness: move/move_dir(Dir), posOf, kindsAt. Expansion Drop: PULL as one word plus one content response. Co-Authored-By: Claude Opus 5.5 <[email protected]>
19 lines
638 B
JSON
19 lines
638 B
JSON
[
|
|
{ "name": "BABA", "role": "noun" },
|
|
{ "name": "ROCK", "role": "noun" },
|
|
{ "name": "WALL", "role": "noun" },
|
|
{ "name": "FLAG", "role": "noun" },
|
|
{ "name": "LAVA", "role": "noun" },
|
|
{ "name": "KEY", "role": "noun" },
|
|
{ "name": "DOOR", "role": "noun" },
|
|
{ "name": "SKULL", "role": "noun" },
|
|
{ "name": "WATER", "role": "noun" },
|
|
{ "name": "YOU", "role": "property" },
|
|
{ "name": "WIN", "role": "property" },
|
|
{ "name": "PUSH", "role": "property" },
|
|
{ "name": "STOP", "role": "property" },
|
|
{ "name": "OPEN", "role": "property" },
|
|
{ "name": "SHUT", "role": "property" },
|
|
{ "name": "PULL", "role": "property" }
|
|
]
|