Dialogue Editor
The Dialogue Editor is a powerful side panel that provides a dedicated interface for editing Dialogue nodes with support for text, player options, background images, and more.
Overview
The Dialogue Editor is a collapsible side panel that appears on the right side of the visual scripting system (also referred to as the node editor) when you're working with Dialogue nodes. It provides a rich editing experience with dedicated fields for all dialogue properties, making it easier to create complex interactive conversations than editing directly in the node visual.
Key Features:
- Dedicated Text Editing: Large text area with multiline support for dialogue content
- Visual Image Selector: Browse and preview background images from your project's Content folder
- Option Management: Add, edit, reorder, and delete player response options with drag-and-drop
- Unsaved Changes Tracking: See what you've modified before applying changes
- Auto-Preserve State: Your edits are preserved when switching between nodes or files
Opening the Editor
To open the Dialogue Editor, double-click any Dialogue node in the node graph. The editor panel will expand automatically from the right side of the screen.
The panel stays open as you work, allowing you to double-click different Dialogue nodes to instantly switch between editing them. The panel will automatically collapse when you select a non-Dialogue node (like a Branch node or Variable node), keeping your workspace clean.
User Interface
The Dialogue Editor is organized into four main sections, each handling a different aspect of your dialogue.
Title Field
The Title field is an optional text field that appears in the dialogue node header. It's primarily used for organization within the editor and is not displayed to players during playback.
- Optional: Can be left empty if not needed
- Display: Visible in the editor node header, but not shown to players during runtime
- Common uses: Speaker identification ("Narrator", "Alice"), scene labels ("Town Square - Morning"), conversation topics ("Quest Intro"), or any organizational text
Editor Organization
The Title field helps you organize and identify dialogue nodes at a glance when working with large conversation trees. For example, labeling a node "Captain Elena - Quest Start" makes it easy to find later.
Background Image
Add visual context to your dialogue with background images. Perfect for visual novels, illustrated stories, or creating atmosphere in your narrative.
Image Selection Features:
- Visual Browser: Browse all images from your project's Content folder with live previews
- Drag-and-Drop: Drag images directly from the Content Browser into the image selector
- Search Functionality: Filter images by filename to quickly find what you need
- Quick Actions:
- Show in Content Browser: Locate the selected image in your file tree
- Open File: View the image in your system's default image viewer
- Preview: See a thumbnail of the selected image directly in the editor
Supported Formats
The image selector displays all image files from your Content folder. Supported formats are PNG and JPEG/JPG only. Images are referenced by their relative path from the Content folder.
Drag-and-Drop Workflow:
- Navigate to your images folder in the Content Browser (e.g.,
Content/Images/) - Drag an image file from the Content Browser
- Drop it onto the image selector area in the Dialogue Editor
- The image is automatically selected and previewed
Text Area
The Text field contains the main dialogue content that players will read. This is the core of your narrative.
Features:
- Multiline Support: Press
Shift + Enterto create new lines within your dialogue - Large Editing Area: Expanded text area makes it easy to write and edit longer passages
- Real-time Display: Text appears in the dialogue box exactly as you type it
- Variable Interpolation: Use
{variableName}syntax to insert variable values dynamically
Using Variables in Dialogue
You can insert variable values directly into your dialogue text using curly braces: {variableName}. This allows you to create dynamic, personalized dialogue.
Examples:
"Hello, {playerName}!"displays as "Hello, Alice!" if playerName = "Alice""You have {gold} coins."displays as "You have 150 coins." if gold = 150"Your health is {health}%."displays as "Your health is 75.5%." if health = 75.5
Note: If a local and global variable share the same name, the local variable takes precedence and will be used.
Options Management
Options are the dialogue responses that create branching narratives. Each option represents a button the player can click, leading to different story paths.
Managing Options:
- Add Option: Click the "Add Option" button to create a new option. Options are automatically assigned unique IDs.
- Edit Text: Click on an option's text to edit what the player will see (e.g., "Accept the quest", "Decline politely", "Ask for more information"). You can also use
{variableName}syntax in option text to display variable values. - Reorder Options: Drag and drop options to change their display order. Players will see them in this order from top to bottom.
- Delete Option: Click the delete button (×) to remove an option. This cannot be undone.
Option Connections
When you delete an option, any connections from that option's output handle will also be deleted. Make sure to reconnect your story flow if needed.
Option Handles:
Each option in a Dialogue node has two handles in the node graph:
- Left Handle (Condition Input): Connect a boolean value to show/hide the option based on game state (e.g., only show "Use key" if player has the key)
- Right Handle (Execution Output): Connect to the next node that executes when the player selects this option
Audio
Dialogue nodes can play audio when displayed. This is perfect for voice lines, ambient sounds, or musical cues tied to specific dialogue.
Adding Audio to Dialogue
In the Dialogue Editor sidebar, you'll find the Audio section below the Background Image:
- Audio Selector: Click to choose an audio file (MP3 or WAV) from your project
- Loop Checkbox: Enable to repeat the audio continuously
- Preview Controls: Play/stop button with progress bar to preview audio in the editor
- Reset Checkbox: Enable to stop any playing audio when this dialogue displays
Audio Behavior
- Audio starts playing when the dialogue node is reached
- Non-looping audio plays once and stops
- Looping audio continues until stopped by another node or reset
- The Reset option stops any currently playing audio
Tip
For background music that should persist across multiple dialogues, use the Play Audio node instead. Dialogue audio is best for voice lines and sound effects tied to specific text.
Characters
Dialogue nodes can be associated with a character, displaying their name and portrait in the runtime.
Selecting a Character
In the Dialogue Editor sidebar, use the Character selector to choose from your project's character files (.sfc):
- Character Dropdown: Shows all available characters with their portraits
- Search: Type to filter characters by name
- None Option: Clear the character selection
When a character is selected, the runtime will display their name and portrait alongside the dialogue text.
One-Time Options
Options can be marked as "one-time" so they disappear after being clicked. This is perfect for exploration-based narratives where you want players to exhaust dialogue options.
Enabling One-Time
Each option in the Dialogue Editor has a "Once" checkbox. When enabled:
- The option displays normally the first time
- After the player clicks it, the option is hidden on subsequent visits
- This state persists within the current story session
Use Cases:
- NPCs with multiple topics to discuss (each topic disappears after being covered)
- Investigation scenes where clues can only be examined once
- Tutorial prompts that shouldn't repeat
- Side conversations that shouldn't clutter the main dialogue
Unsaved Changes
The Dialogue Editor intelligently tracks your modifications and provides clear feedback about unsaved changes.
How It Works:
- Automatic Tracking: The editor compares your current edits against the saved node data
- Visual Indicator: A "Reset Changes" button appears when you have unsaved modifications
- State Preservation: Your edits are preserved when you switch to other nodes or files, allowing you to continue editing later
- Click to Revert: Click "Reset Changes" to discard your edits and restore the node to its saved state
When Unsaved Changes Are Cleared:
- When you click "Reset Changes"
- When you click "Save Changes" (because there are no unsaved changes anymore)
Tips & Tricks
Organizing Large Dialogues
- Write descriptive option text that clearly indicates the player's selection
- Keep individual dialogue nodes focused on one exchange or topic
- Use the Title field consistently (e.g., showing character names) for visual clarity
- Add Comment nodes to annotate complex dialogue trees
Image Workflow
- You can organize images in subfolders within Content (e.g.,
Content/Backgrounds/,Content/Characters/) - Consistent naming conventions can make searching easier (e.g.,
char_elena_happy.png) - You can drag and drop images directly from the Content Browser for quick selection
- The search field in the image selector lets you filter by filename when you have many images
Option Design
- Many developers use 2-4 options per dialogue node for readability
- Active and specific option text ("Search the ruins" compared to "Okay") can be clearer
- You can use conditional options (boolean variables) to reveal options based on player progress
- You can order options however you prefer based on your game's design
Next Steps
- Node Types Reference - Learn about all 56 node types including Dialogue nodes
- Connections - Understand how to connect options to create branching narratives
- Content Browser - Manage your images and script files
- Variables - Use boolean variables to create conditional dialogue options