Skip to content

Text Input

Text Input is how a story asks the player to type something, such as a name, nickname, password, or short answer.

Use Insert > Dialogue & Logic > Ask for Text when the story needs text from the player before it can continue. For the variable side of this flow, see Variables & Text.

Properties

Node-specific properties

Field What it does
Prompt Text shown above the input. Supports variable templates.
Speaker Controls the speaker shown with the prompt. Automatic (default) keeps the previous speaker while their dialog line is still on screen and shows no speaker for a standalone prompt. Inherit Previous always keeps the previous dialog speaker. No Speaker clears the name, portrait, and sprite emphasis.
Store In Variable Text variable that receives the submitted text.
Placeholder Faint text shown inside the input before the player types. Supports variable templates.
Max Length Optional character limit from 1 to 256. New Text Input nodes start at 24; leave it unset to use the runtime safety maximum.
Filtered Text Choose what happens when Roblox turns submitted text into tags: continue normally or use a separate branch.
If Text Is Filtered Appears when Filtered Text is set to Use Filtered Branch. Choose the node that runs when Roblox text filtering tags the submitted text.

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.
Style Preset Override Use a preset for this node, or leave empty to inherit Scene Style > Project Style.

Runtime Behavior

Preview types the prompt text with the same pacing policy used by the installed runtime, so you can evaluate the prompt before entering play mode.

When the player submits text, the installed runtime filters it before it enters story state. Local Studio testing may use the unfiltered value when Roblox text filtering is unavailable, so use Testing Runtime before relying on name-entry flows.

By default, VNC stores the filtered value in the selected Text variable and continues to Next.

While the prompt is open, Speaker decides whether the previous dialog speaker stays visible. Choose No Speaker when the prompt should read as narration; it leaves the dialog text already shown on screen.

If the filtered result changes the player's answer into tagged text, set Filtered Text to Use Filtered Branch. Then set If Text Is Filtered to a retry line, such as Hm, I didn't quite get that. Try again?, and point that dialog back to the same Text Input node. In this mode, VNC follows the filtered-text route instead of writing the tagged value into the variable.

In the Explorer and Properties, Text Input only shows an If Text Is Filtered branch row after Filtered Text is set to Use Filtered Branch. Select that row before inserting a Dialog or Jump if you want the new node to become the filtered-text route automatically. When that row is selected, Properties shows Filtered Text Goes To for the same route.

In the Story Map, connecting the If Text Is Filtered handle turns Filtered Text on for that node and points the filtered route at the connected card. When deletes, pastes, or route changes adjust node targets, VNC keeps hidden filtered routes aligned so retry paths are less likely to be lost accidentally.

Example Use

StepSetup
Create a Text variableAdd a variable with key playerName.
Add Text InputSet Prompt to What name should the archive record?.
Store the answerSet Store In Variable to playerName.
Guide the playerSet Placeholder to Courier and Max Length to 24.
Handle tagged textSet Filtered Text to Use Filtered Branch, set If Text Is Filtered to a retry Dialog node, then point that Dialog back to this Text Input.
Continue the routeSet Next to the next node in your route.
Use the answerIn a later Dialog node, write Then you're the courier, {playerName}.

Text Input is small, but it can make a route feel personal. Test it anywhere the player's answer affects later choices or dialog.

An unfinished answer remains in the same Text Input prompt when a menu or settings update refreshes it.