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
| Step | Setup |
|---|---|
| Create a Text variable | Add a variable with key playerName. |
| Add Text Input | Set Prompt to What name should the archive record?. |
| Store the answer | Set Store In Variable to playerName. |
| Guide the player | Set Placeholder to Courier and Max Length to 24. |
| Handle tagged text | Set 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 route | Set Next to the next node in your route. |
| Use the answer | In 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.