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.
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.

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.

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.