Skip to content

Quests in the area source, built into the JSON - #26

Merged
ctoth merged 1 commit into
masterfrom
feat/area-quests
Oct 26, 2026
Merged

ctoth merged 1 commit into
masterfrom
feat/area-quests

Conversation

@ctoth

@ctoth ctoth commented Oct 18, 2026

Copy link
Copy Markdown
Owner

A top-level quests key in an area source holds quests in the fields of the Mongoose MOO's $quest. build --format json writes them under quests with ids turned into {room|mob|object: vnum} and texts into lists of lines; --format rom refuses them.

build refuses: unknown ids, an objective that is both or neither event and state, unknown @ match words, a state whose first argument is not a role, duplicate stage names, an after naming no stage or forming a ring, needs/of out of range, credits with no giver, a missing or empty solution, and a moved objective whose object has no take wear flag.

Tests: 21 new in test_authoring.py; full suite 1743 passed. The take-flag test fails with the check removed.

Used live 2026-10-18: a two-stage quest built from this branch loaded into the Mongoose MOO and was completed by a guest over telnet typing its solution (5 credits paid from the giver).

… loader

A top-level quests key holds quests in the fields of the MOO's $quest, with rooms, mobs and objects named by id. build --format json writes them under quests with ids turned into vnums and texts into lists of lines; --format rom refuses them. build refuses unknown ids, stage rings, credits without a giver, a missing solution, and a moved objective whose object cannot be taken.
@ctoth
ctoth merged commit da48f9d into master Oct 26, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant