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

characters/{id}/{pack}.json — file map

One art pack for a character. Folder characters/<id>/; pack file e.g. default.json. Expression names are free. Reserved filenames (not packs): sprites.json, objects.json, metadata.json, profiles.json.

The whole file

Keys with { … } open below. Linked names jump to that section. Grey notes say what each key does. Under each section, Keys lists type, If omitted, allowed values, and a short note.

{
  "display_name": "Emily",                // speaker label
  "display_name_key": "char.emily.name",  // translated label
  "ui": { … },                            // panel and draw defaults for this pack
  "drive": {},                            // mouth / focus rules
  "composition_transitions": {},          // expression swap fades
  "default": [ { … } ],                   // example expression — layers bottom → top
  "…": { … }                              // more expression ids — layer arrays or inherit objects
}

Root keys

Top-level keys that are not objects.

If omitted folder id
Name on the plate when this character talks.
display_name_key string
If omitted use display_name
Catalog key for the display name.
drive object
If omitted none
Talking and focus drive — [Drive rules](../character/drive-rules.md).
If omitted none
How layers crossfade — [Composition transitions](../character/composition-transitions.md).

Learn more: display_name · drive · composition_transitions

ui

Panel and draw defaults for this pack.

{
  "ui": {                                     // panel and draw defaults for this pack
    "default_panel_id": "main",               // panel instance
    "default_panel_preset": "default",        // panel preset
    "default_plate": "them",                  // plates mode side
    "default_labelplate_style_key": "default",  // name plate style
    "draw_layer": "behind_panel",             // draw plane
    "panel_slots": {}                         // slot art map
  }
}

Keys

default_panel_id string
If omitted routing default
Which panel this character prefers.
default_panel_preset string
If omitted routing default
Theme panel.<name> preset.
If omitted preset default_plate
Which plates.<name> this character prefers under text_mode plates.
default_labelplate_style_key string
If omitted theme default
labelplate.<name> style.
draw_layer enum
If omitted behind_panel
Values behind_panel · above_panel
In front of or behind the dialogue box.
panel_slots object
If omitted none
Which pack layers fill panel slots.

Learn more: ui

default

Example expression — layers bottom → top.

{
  "default": [ {         // example expression — layers bottom → top
    "path": "base.png",  // layer image
    "z": 0,              // draw order
    "offset": [0, 0],    // pixel nudge
    "frames": [],        // flipbook frames
    "fps": 12            // flipbook rate
  } ]
}

Keys

path path
If omitted required for still layer
Path relative to the character folder / pack.
z number
If omitted order in array
Optional explicit z.
offset array
If omitted [0,0]
[x, y] offset.
frames array
If omitted still path
Frame list instead of a single path.
fps number
If omitted pack default
Frames per second.

Learn more: default