MRPGI/games/lost-fuse/expansion/roof.jsonl
type-two 2fdd730cde Add the updated manual and a teaching game: The DJ's Lost Fuse
- MANUAL.md brought up to the workspace era: game folders + manifest,
  flags & gated puzzles, hidden dialogue choices, audio file
  overrides, a Programmatic control section (CLI/HTTP/MCP/Python),
  and the new two-crate architecture map.
- games/lost-fuse: three rooms that demonstrate every mechanic in one
  chain — item, needs-lock, object sets_flag, a dialogue choice hidden
  behind requires_flag, dialogue sets_flag, and a flag-locked wins
  finale. Verified winnable headlessly, gate included.
- games/lost-fuse/expansion/roof.jsonl: a live lore drop that upserts
  a fourth room into a running game and rewires an exit — the "drop
  JSON lore in" workflow, runnable as a one-liner.
- games/README.md: the guided tour — mechanic-to-JSON map, the live
  expansion demo, and how to prompt an LLM (or point Claude's MCP at
  the engine) to write valid lore.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-05 09:18:50 +10:00

8 lines
1.3 KiB
JSON

# Lore drop: adds a Roof Afterparty above the club, LIVE, while the game runs.
# Try it: target/debug/mrpgi-headless --script games/lost-fuse/expansion/roof.jsonl --game games/lost-fuse
# (Add "persist":true / use save_room to keep it on disk.)
{"cmd":"upsert_room","n":3,"doc":{"strokes":[{"Rect":{"x":0,"y":0,"w":160,"h":168,"color":1,"meaning":"None"}},{"Rect":{"x":6,"y":16,"w":148,"h":146,"color":8,"meaning":"Floor"}},{"Rect":{"x":0,"y":0,"w":160,"h":16,"color":0,"meaning":"Wall"}},{"Rect":{"x":0,"y":160,"w":65,"h":8,"color":0,"meaning":"Wall"}},{"Rect":{"x":95,"y":160,"w":65,"h":8,"color":0,"meaning":"Wall"}},{"Rect":{"x":0,"y":0,"w":6,"h":168,"color":0,"meaning":"Wall"}},{"Rect":{"x":154,"y":0,"w":6,"h":168,"color":0,"meaning":"Wall"}},{"Ellipse":{"x":20,"y":2,"w":14,"h":10,"color":14,"meaning":"None"}},{"Rect":{"x":30,"y":30,"w":100,"h":4,"color":13,"meaning":"None"}}],"spawn":[80,144],"exits":[null,null,2,null],"objects":[{"name":"punch","sprite":"barrel","x":40,"y":126,"look":"Afterparty punch. It is fizzing in a way liquids should not.","synonyms":"drink barrel"},{"name":"skyline","sprite":"sign","x":110,"y":60,"look":"The whole neon city, humming below. Worth saving a party for.","synonyms":"city view"}],"music":1}}
{"cmd":"goto_room","n":2}
{"cmd":"set_exit","dir":0,"target":3}
{"cmd":"query"}