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

Screen object

One entry in screens.json (plus optional top-level defaults).

{
  "title": {
    "role": "modal",
    "layers": [
      { "type": "background", "style": { "bg_color": "#101018" } },
      { "type": "menu", "buttons": [{ "label": "Start", "interaction": { "hooks": { "on_click": "start" } } }] }
    ]
  }
}

Usually you need

KeyTypeDefaultEffect
layersarray—Required. Ordered layers
role"modal" | "hud" | "scene""modal"Plane / input
defaults (file root)object—Shared transition / etc.

All keys

KeyTypeDefaultEffect
layersarray—Layers
roleenum"modal"Plane policy
shadershader object—Screen shader
transition / transition_in / transition_out / transition_duration / duration—instant / 0Enter/exit
pauses_treebool—Pause game tree
action_contextstring—Hook allowlist context
interactionobject—Screen-level hooks
modulate / scalehex / number or array—Tint / scale
plane / persistent / input_passthroughadvanced—Plane overrides

Layers: background · sprites · content · menu · chrome. Guide: Screens. Story control: screen.