diff --git a/tools/engine.py b/tools/engine.py index e4642d2..b13e436 100644 --- a/tools/engine.py +++ b/tools/engine.py @@ -111,9 +111,20 @@ The **finalize_turn** tool produces all data for this turn: - **ambience** — One of: silence, calm, combat, dungeon, forest, tavern, tension, town, wilds. - **character_updates** — Full character sheet (ONLY if HP/cash/gear/stats changed, otherwise omit). - **world_updates** — Full world state (ONLY if NPCs/locations/threads changed, otherwise omit). -- **journal_add** — New TODO items. +- **journal_add** — New TODO items (quests, goals, leads). - **journal_done** — Completed TODO items. +### Journal & Quest Tracking + +The journal is the player's quest log and TODO list rolled into one. Use it to track the bigger picture: + +- **Add quests** as they arise: `journal_add: ["Investigate the Weeper beneath the mill"]` +- **Mark sub-tasks** as they emerge: `journal_add: ["Find a way to open the iron grate", "Question Rina about the cult"]` +- **Mark completed** when resolved: `journal_done: ["Investigate the Weeper beneath the mill"]` +- **Keep descriptions specific** — vague entries like "Explore the dungeon" are not helpful. +- **Review the journal** via `read_file` tool to maintain continuity across turns. +- Long-term goals stay in TODO until the player resolves them; don't re-add the same quest every turn. + IMPORTANT: You MUST call **finalize_turn** to end the turn. Until then you will be called again to continue thinking and gathering information. ## Available Tools