Dialogue boxes support a large amount of tags and styling options that can be inputted directly from the text field.

Name and Portrait

A character name and expression can be included before a line of dialogue to set the box’s name, portrait, and blip sound.

The level editor includes a built-in character and expression picker to handle this.

Farmer_happy: Hello everyone!

Farmer_happy: Hello everyone!

The general syntax is Character: Message. An underscore can be added to adjust the expression, and a slash can be added to change the character’s display name.

Example Message Result
Hello! The textbox displays “Hello!”. No portrait or name is shown
Samurai: Hello! Samurai says “Hello!”, with the default neutral expression
Samurai_happy: Hello! Samurai says “Hello!”, with the “happy” expression
Samurai/Patient: Hello! Samurai says “Hello!”, with the default neutral expression
The name above the textbox displays “Patient”
Samurai_missed/Patient: Hello! Samurai says “Hello!”, with the “missed” expression
The name above the textbox displays “Patient”
/Patient: Hello! The textbox displays “Hello!”. No portrait is shown.
The name above the textbox displays “Patient”

Custom characters can appear in dialogue boxes by using the same name as their spritesheet and .json file. Their files must be present in the level’s working directory.

To configure or modify a custom character’s display name, dialogue sound, and portrait position, see Custom Characters.

Dialogue Lines

When typing multiple lines into a single dialogue event, they will be read as a sequence of dialogue boxes that display one after the other.

Samurai_Happy: Some days are good.
Paige: Indeed.

Delay tags (e.g. [10]) can be used to adjust the time before the next message is displayed.

If the <sticky> tag is used on the final line, it will not disappear until a new dialogue sequence replaces it.

Dialogue Tags

Dialogue tags are enclosed in either <angle brackets> or [square brackets]