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

What a panel is

Lives in: theme panel.<preset> + story routing

A panel is the dialogue box — the place text, the name plate, and on-panel choices appear. Most games need only one. Extra panels are for side commentary, whisper boxes, or a second speaker’s sticky line.

Two names that matter

WordMeaning
Panel idWhich instance on screen (main, side, …). main always exists.
PresetWhich look from the theme (default, whisper, …) that instance uses

Id = which box. Preset = how that box is drawn. You can put look whisper on id main, or look default on id side.

One box is enough

Ship with a single main panel and a default preset. Speakers write into main unless you say otherwise. Name plate and Continue / Back live on that box.

HANA:
Good morning.

No panel fields required.

Where the pieces live

PieceWhere
Look (size, height ceiling, body scroll)themes/default.json → panel.<preset> — How a panel looks
Which box gets this lineStory node / character pack / panel command — How text finds a panel
Second boxes, stacking, side logsSeveral panels
What quiet boxes doPresence and quiet panels
Lines that stack in the boxAppending text
Portrait inside the boxSpeaker art on the panel

Fonts and whole-theme colours sit under Look. Character preference for a panel: pack ui — Expressions and packs.

Usually you need

WantDo
Normal dialogueNothing — use main + default
A quieter lookTheme preset whisper + node "panel": "whisper"
A second boxNew panel id — Several panels
A tall scrolling logPreset max_height + sticky append — Several panels

Next

How text finds a panel