Skip to main content
unofficial.voyage wiki
Builder

Other

Game Modes

Player-selectable modes chosen during character creation. Each mode is a named bundle of story instructions, with an optional difficulty setting and an optional narrator-chat greeting.

Editor
Other → Game Modes
Edit via
JSON object

Example

{
  "gameModes": {
    "Adventure": {
      "name": "Adventure",
      "description": "A proactive run that frames the world as danger and opportunity, feeding the party concrete hooks when scenes go quiet while leaving chosen downtime alone.",
      "instructions": "## Core Feel\n- Treat the world as a place full of danger, need, wonder, and opportunity\n- Let people plausibly recognize the party as capable of helping with the kinds of problems ordinary people cannot easily solve\n\n## Pacing and Hooks\n- When the scene is open, slow, or exploratory, give the players one subtle, concrete hook they can act on\n- Prefer practical, concrete, legible hooks such as a warning, request for help, obstacle, rumor, clue, hint, missing person, monster problem, or risky opportunity\n- Favor problems with clear actors and stakes: theft, raids, missing people, local gangs, cult activity, dangerous beasts, faction disputes, armed skirmishes, personal feuds, or innocent people being threatened or harmed\n- Prefer hooks grounded in the story and existing worldlore\n- Let hooks come from local people, visible danger, player choices, existing threats, or consequences already in motion\n- Do not interrupt chosen downtime, social scenes, romance, shopping, recovery, or celebration with unrelated hooks\n- Do not insist on the same hook if it goes unpursued; follow the rule of \"one and done\"\n\n## Arrival in Mission Contexts\n- When the party arrives somewhere new, not recently described, on a job, mission, or exploration, establish what matters for play: what is visible, who is present, what looks useful, what invites investigation\n- In those job, mission, or exploration contexts, add one adventure-relevant detail when appropriate, rather than leaving the narration without forward momentum\n- Keep arrival details grounded in the location. Do not add random threats or mysteries just to create momentum\n\n## Characters and Opportunities\n- Let characters have real problems, limits, jobs, fears, loyalties, and practical needs\n- Characters may ask for help, offer paid work, share warnings, point toward trouble, or test whether the party is trustworthy\n- Keep opportunities optional. If the players decline or ignore a lead, let the scene move on\n- Respect is earned through action, but opportunity should be available to people willing to put themselves on the line",
      "difficulty": "medium",
      "askTheNarratorPrompt": "Welcome, adventurer! I'm the narrator, here to help you navigate this world.\n\nFeel free to ask me anything:\n• \"What can I do here?\" - I'll explain your options\n• \"Who is nearby?\" - I'll tell you about the characters around you\n• \"Something seems wrong...\" - I can help fix issues you notice\n• \"How does combat work?\" - I'll explain the mechanics\n\nYou can also ask about this region or the people in it. Just type naturally - I'm here to help your story flow smoothly."
    },
    "Slice of Life": {
      "name": "Slice of Life",
      "description": "A gentler run focused on character moments, community, downtime, and ordinary life in an extraordinary world.",
      "instructions": "## Core Feel\n- Treat ordinary life in an extraordinary world as the story\n- Let the world feel inhabited by people with homes, work, routines, families, friendships, worries, and small ambitions\n- Keep the scale personal and local: daily needs, social ties, work, money, comfort, reputation, and belonging\n\n## Life Simulator Play\n- Treat everyday activities as valid pursuits: shop, cook, craft, repair, work, gather, run errands, visit neighbors, attend festivals, take lessons, improve a home\n- Make ordinary activities playable through choices, costs, tradeoffs, small rewards, and social consequences\n- Let the player become known through repeated habits, work, relationships, kindness, purchases, promises, and mistakes\n\n## Adding Playable Material\n- First resolve what the scene already provides\n- If nothing is left to respond to, add one small, local, everyday element: a direct question, a social opening, a small favor, a purchasable item, or a character preference\n- Do not add adventure danger, villains, conspiracies, or major quests just to make the turn bigger\n\n## Drama and Comedy\n- Let small, legible tensions carry scenes: gossip, awkward flirting, family pressure, unpaid debts, shop rivalries, clashing tastes, and misunderstandings\n- Characters have lives beyond the player; they may be busy, tired, amused, lonely, or proud",
      "difficulty": "very easy",
      "askTheNarratorPrompt": "The market is just waking up and there is fresh bread on the air. Where do you want to start your day?"
    }
  }
}

Fields

FieldRequiredPurpose
nameYesDisplay name shown to the player when selecting a mode. Matches the entry key by convention, as elsewhere in the config.
descriptionYesShort summary shown to the player alongside the name during selection.
instructionsYesStory instructions for the mode, appended as a user message to initial-start and story generation so they stay active for the whole run.
difficultyNoFree-form string setting how hard combat and skill checks are for the mode. Using a standard value (very easy, easy, medium, hard, very hard) shows the difficulty-dots indicator during selection; a custom value works too but shows no dots.
askTheNarratorPromptNoThe opening message the narrator posts in the narrator chat when the session begins.

⚠️ Warning: Beyond the whole-section limit, each field has its own hard character cap (see the Size Limits panel). A field over its cap fails validation.

| Field | Required | Purpose |

|-------|----------|---------| | name | Yes | Display name shown to the player when selecting a mode. Matches the entry key by convention, as elsewhere in the config. | | description | Yes | Short summary shown to the player alongside the name during selection. | | instructions | Yes | Story instructions for the mode, appended as a user message to initial-start and story generation so they stay active for the whole run. | | difficulty | No | Free-form string setting how hard combat and skill checks are for the mode. Using a standard value (very easy, easy, medium, hard, very hard) shows the difficulty-dots indicator during selection; a custom value works too but shows no dots. | | askTheNarratorPrompt | No | The opening message the narrator posts in the narrator chat when the session begins. |

⚠️ Warning: Beyond the whole-section limit, each field has its own hard character cap (see the Size Limits panel). A field over its cap fails validation.

Behaviour

Overview

A mode is a lens over the same world, not a separate world. It does not change the world's mechanics or authored content; it is a set of instructions handed to the storyteller that steers how the story is framed and paced. The same setting can be played as its intended adventure, or as a different kind of run, for example a slice-of-life mode that leaves everything in place but shifts the focus to everyday moments so the world feels that way. The axis is up to you: a difficulty ladder (a gentler run versus a punishing one), or a tonal or genre shift (grounded and serious versus comedic) of the same setting. Set gameModes to {} or omit it to offer no custom modes.

📋 Note: Today a mode's reach is narration and feel plus the difficulty setting. It is a new feature and the developers have said they intend to widen what a mode can affect over time, for instance exploring letting a mode disable combat outright (as in a slice-of-life run). Treat anything beyond narration and the difficulty setting as not yet available.

Selection

The player picks a mode in the Game Settings step of character creation, before choosing a story start, and can change it later from the in-game settings. Modes are shown as cards listing their name and description. A mode does not replace or rename the narrator; the in-game narrator is always "Narrator" regardless of which mode is chosen.

instructions

instructions are appended as a user message to both initial-start and story generation, not as a system prompt override, so they steer narration for the entire run rather than only the opening scene. Write it as a full multi-section markdown brief stored as a single string (newlines written as \n), not a one-line summary.

📋 Note: instructions carries real weight and accepts markdown. Author it as a focused, structured brief (sections, bullets, explicit do and do-not rules), closer to an aiInstructions.generateStory block than a tagline. A one-sentence mode steers almost nothing.

⚠️ Warning: A mode's instructions are layered on top of your aiInstructions, not in place of them, so the two can contradict and leave the model with mixed signals, for example a mode asking for a gentle tone while the base instructions hardcode constant danger. If you plan to offer modes, author your AI instructions with that in mind: keep them flexible and avoid hardcoding tone or pacing a mode will later fight. Some premises also resist some modes outright; a slasher-horror world will not cleanly become a slice-of-life run no matter what the mode says.

askTheNarratorPrompt

askTheNarratorPrompt is the message shown at the top of the narrator chat when the player opens it. The narrator chat is a separate, out-of-character side conversation for asking the narrator for help; this message is not posted into the story and does not appear on its own, the player sees it only when they open that chat. Use it to set tone and show the player what the narrator is for: a short list of example questions (what can I do here, who is nearby, how does combat work) teaches new players that they can talk to the narrator about their options, the people around them, the mechanics, or anything that seems off. A line or two of important world-specific orientation can go here too. For what players can actually do once they are in that chat, see Narrator Chat Tools.

difficulty

difficulty sets how hard combat is and how hard skill checks are to pass while the mode is active. It is a free-form string: the editor offers a standard ladder, very easy, easy, medium, hard, and very hard, and using one of those (written lowercase, as labeled) shows the small difficulty-dots indicator on the mode card during selection. Sticking to the standard values as labeled is generally preferred, but a mode can also define its own value; a custom value still applies its difficulty, it just shows no dots. Difficulty is independent of a mode's feel: several modes can share one value (or all use the same), with only their instructions differing, so two equally hard modes can still play very differently.

The schema types difficulty only as a string, so validation accepts whatever you set.

Size limits

LimitValue
`gameModes` (entire section)100000
`gameModes.*.name`120
`gameModes.*.description`500
`gameModes.*.instructions`5000
`gameModes.*.askTheNarratorPrompt`1000