Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Theme and the dialogue box

Lives in: themes/default.json

Fonts, colours, and shared chrome for the whole game. The dialogue box (presets, routing, height, scroll) lives in its own part of the handbook:

→ What a panel is · How a panel looks

Where the theme lives

PieceIn themes/default.json
Fonts and sizestypography
Fallback text / empty-stage colourscolors
Dialogue box presetspanel.<name> — How a panel looks
Name-plate styleslabelplate.<name> — Name plate
Scrollbarsscrollbar (menus and panel body)
Menu / screen buttonsbuttons — Buttons and actions

Put font files under fonts/. Locale overlays can sit beside the base theme as default_<locale>.json. Pack files for choices and inputs are separate stems under themes/ — Choice and input looks.

"extends" on a panel preset merges keys — Reusing settings.

Fonts and sizes

"typography": {
  "font": "Jupiteroid",
  "font_menu": null,
  "font_dialogue": null,
  "font_label": "Jupiteroid",
  "size_scale": 1.0,
  "sizes": {
    "speaker": 45,
    "dialogue": 30,
    "choice": 30,
    "button": 30,
    "notification": 30
  }
}
KeyEffect
fontBase face under fonts/ (variants like Regular / Bold when present)
font_dialogueDialogue + choices (null → font)
font_labelSpeaker name plate
font_menuMenus / settings buttons (null → font)
sizes.*Pixel sizes for speaker, dialogue, choice, button, notification
size_scaleMultiplies all sizes.* (player text-size setting builds on this)

Change sizes.dialogue or font, reload (F5 / F6 for look), and play a line.

Colours

"colors": {
  "background_default": "#dfdcd7",
  "speaker_text": "#c4693a",
  "dialogue_text": "#e8e5e0",
  "choice_text": "#c5cad5",
  "notification_text": "#dfdcd7"
}
KeyEffect
dialogue_textBody text fallback
speaker_textName-plate text fallback
choice_textChoice caption fallback
background_defaultFill when no background picture is up
notification_textToast / some heading fallbacks

Panel plate colour is usually panel.<preset>.bg, not colors — How a panel looks.

Full map

Every allowed key in one view: themes/default.json file map. Panel, buttons, and choice/input packs: Theme detail.

Mood for one stretch of story

A mood profile is another theme file (for example themes/flashback.json) that merges over default.json for a while:

{ "type": "theme_style", "profile": "flashback" }
{ "type": "theme_style", "reset": true }

Sticky until you reset or start a new game. It does not switch choice packs — use a choice style command / pack for that — Choice and input looks.

Until you add a mood file, a second panel preset or a sticky panel command is enough for a quieter box.

Usually you need

WantDo
Bigger dialogue textRaise typography.sizes.dialogue
Warm name colourcolors.speaker_text or a labelplate style
Dimmer platepanel.default.bg
Whole scene moodtheme_style profile file

Next

Name plate