The docker-cp deploy wrote morpquest into forum-nginx's writable layer; when the container was recreated (July 5) the files vanished and the site fell through to the forum SPA fallback. Every other game there is a host bind-mount, which survives recreation — morpquest now is too: forum/docker-compose.yml: /home/humanjing/morpquest -> .../html/morpquest:ro deploy.sh now just rsyncs into that live mount (instant, no recreate). Also fixed the .wav MIME: forum nginx.conf now maps audio/wav (the chiptunes were serving as application/octet-stream). Both changes survive container recreation (bind-mounted conf + compose volume). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> |
||
|---|---|---|
| art | ||
| music | ||
| rooms | ||
| sprites | ||
| tools | ||
| web | ||
| .gitignore | ||
| deploy.sh | ||
| DESIGN.md | ||
| game.json | ||
| README.md | ||
MORPQUEST: Record Store Day
A Sierra-AGI-style graphical adventure for the MRPGI engine, adapted from the Beyond Morp text adventure. Fourteen EGA screens, one day, five words, one white label.
Record Store Day. You're meant to be doing a quick cat-food run; Uncle's list is in the glovebox, and the cat can smell weakness. Something is wrong at the shop today. Morp itself can feel it.
Play it
From the MRPGI repo:
cargo run -p mrpgi --release -- --game /path/to/morpquest # the GUI
mrpgi-headless --game /path/to/morpquest # JSONL repl
mrpgi-headless --serve 127.0.0.1:7777 --game /path/to/morpquest # HTTP + frame.png
Arrows (or click) walk. Verbs: look take use talk drop inventory help, plus
climb wipe play pay post give fix … — the parser is generous. The BeckyWall
will not move for you. Documents move it. There is a true ending; the walls of
the toilet know the shape of it.
Score: 0 of 250 when you start, Sierra-style. There are two ways to die: one is in your car, clearly labelled, and you will eat it anyway; the other is improvising sacred words at a hive of possessed superfans. Death restarts the day. Morp is not cruel; Morp is accurate.
What's here
game.json,rooms/room0..13.json— the whole game: art stamps, walkability, objects, flags, dialogue. Hand-authored, engine-validated, fully winnable (seetools/playtest.jsonl— the scripted golden path — andtools/gatetest.jsonl— proof the locks lock).sprites/— 14 backgrounds + 6 NPCs generated with nano banana (google/gemini-3.1-flash-imagevia OpenRouter), squeezed to the engine's 160×168 double-wide-pixel frame and EGA-quantized by the engine on load; tiny item sprites are hand-placed pixels (tools/gen_items.py).tools/gen_art.py+tools/art_manifest.py— the whole art pipeline, re-runnable (deletes nothing, regenerates only what's missing;-fforces).art/raw/— original generations, kept for archaeology.DESIGN.md— the map, the flag chains, the voice rules.
Provenance
Story, puzzles, characters, and most of the best lines are adapted from the Beyond Morp design corpus (RSD storyline). The tone bible rule that matters: Morp is not cruel; Morp is accurate.
