Skip to content

Dialog

Dialog is the node you will use most. It gives the story a voice: a speaker, a line of text, and the next place the story should go.

Use Insert > Dialogue & Logic > Say Dialogue when the player should read a line before the route continues.

Properties

Node-specific properties

Field What it does
Speaker Character or narrator speaking this line.
Text The line shown to the player. Supports variable templates such as {playerName}.
Inherit Previous Speaker Reuses the previous speaker when set.
Speaker Label Override Shows custom speaker text for this line only.
Text Continuation Chooses whether this line replaces the current text or appends on a new line, with a space, or directly with no separator.
Wait For Advance Input When off, the line continues after a timer instead of waiting for player input.
No-Input Delay Timer used when Wait For Advance Input is off. Falls back to the project no-input delay.
Typewriter Speed Overrides the project typewriter speed for this line.
Scroll Sound Set Overrides the typing sound for this line.
Skippable Controls whether advance input can finish the typewriter or bypass a no-input dialog timer.
Portrait Override Shows a specific portrait for this line.
Emphasize Sprite Emphasizes a visible sprite while the line is active.
Style Preset Override Uses a different Prompt Style preset for this line.
Cues Triggers audio or effects when specific text appears.

Inherited/common properties

Field What it does
Name Optional label used in the editor and Story Map. Leave it empty to use VNC's automatic node name.
Next Node that runs after this node finishes its own work.

Runtime Behavior

When a Dialog node runs, VNC resolves variable templates, updates the dialog UI, refreshes portrait and scroll sound choices, writes the line into the story log, then waits for input or a timer.

Text Continuation controls how the new line joins the visible text: replace it, append on a new line, append with a space, or append directly. Direct continuation supports mid-sentence speaker changes without inserting punctuation or whitespace.

Use Continue Dialogue / Change Speaker from a Dialog node's context menu or the Command Palette to create and link both halves as one undoable edit. The first Dialog hands off immediately; the new Dialog starts as a direct continuation and can inherit the speaker, choose another Speaker, or set a line-only Speaker Label Override.

Scroll sound playback keeps its authored Sound PlaybackSpeed during both editor preview and installed-runtime playback, including across character reveals and text continuations.

Cues

Cues watch for exact text as the line scrolls. Each cue can play an audio asset or trigger an effect. If the same trigger text appears more than once, VNC tracks each occurrence separately.

Effect cue options depend on the selected target. Dialog and Screen cues support Shake and Jump; Sprite cues also support Emphasize and Deemphasize and can use Target Slot. If you change a cue away from Sprite, sprite-only effects are cleared so the cue stays valid.

Example Setups

GoalSetup
Personalized lineSpeaker narrator, Text Then you're the courier, {playerName}. Trust level {score}; badge clearance confirmed., Set Next to the next node in your route.
Continued warningLeave Speaker empty, turn on Inherit Previous Speaker, set Text Continuation to Append On New Line, write choose the route you can defend., then set Next to the next node in your route.
Mid-sentence speaker changeRun Continue Dialogue / Change Speaker on the first Dialog, split the sentence between the two Text fields, then choose the second Dialog's Speaker or Speaker Label Override. Keep Text Continuation set to Append Directly.
Timed interruptionTurn off Wait For Advance Input, set No-Input Delay to 0.75 and Typewriter Speed to 1.4, then turn off Skippable so input cannot bypass the line.
Portrait and voice overrideSet Speaker first_noob, Speaker Label Override Archive Voice, Portrait Override noob, Scroll Sound Set default, Emphasize Sprite noob, and Style Preset Override episode for a line that should temporarily read differently.
Text-timed impactAdd a cue with trigger text Listen!, audio sfx/story/punchLight, Effect Target Screen, Effect Shake, Intensity 4, and Duration 0.15.

Common Mistakes

ProblemFix
The line does not runMake sure the scene starts at this node or another connected node reaches it.
The story stops after the lineSet Next unless this is intentionally the end of the path.
A portrait does not appearCheck the character default portrait or Portrait Override.
A variable template appears as blankCheck that the variable key exists and has a value before this line runs.

Dialog nodes are the spine of most routes. Once the line reads correctly, the rest of the scene has something solid to connect to.