Headless, deterministic game-logic kernel derived from desktop-1.0.jar.
./build-headless.sh./cli.sh [dataRoot] [saveRoot]saveRoot is the original game's user-data directory redirected for
headless use. It contains preferences/ (settings, unlocks, seen data),
saves/ (the original autosave files), and runs/ (run history). Pass a
new or empty directory to start with a clean profile:
./cli.sh data /tmp/my-saveThe CLI always uses save slot 0. unlockAll persistently unlocks every
character, every unlockable card and relic, and ascension levels 0-20 for
all four characters in that save directory:
unlockAll
The state command always exposes the full current-act map graph once a
run has been generated. Each node has id, x, y, symbol, and
children coordinates; map.current is the node the player is on.
Quick start:
new 42 IRONCLAD 0
brief
actions
step 0
state
Useful human commands:
brief compact current-state view
actions concrete executable actions for this decision point
step <index> execute the listed action at that index
map print the whole map and reachable nodes
map <x> <y> choose a map node
deck / draw / discard / exhaust
hand / relics / potions / powers
Action commands:
play <handIndex> [targetIndex] | end | potion <index> [targetIndex]
reward <i> | openCard <i> | pick <i> | skip | bowl | proceed
grid <i> | gridConfirm | hand <i> | handConfirm
event <i> | neow <i>
rest <i> | chest | bossRelic <i> | skipBossRelic
shop | buyCard <i> | buyRelic <i> | buyPotion <i> | purge <i> | leave
Use help inside the CLI for the full command list.