Condition
Condition is how a route reacts to story state. It checks variables or Roblox platform state, then sends the player down the first branch that matches.
Use Insert > Dialogue & Logic > Branch on Variable when the story should change because of earlier choices, scores, flags, or typed text.
Properties
Node-specific properties
| Field | What it does |
|---|---|
| Branches | Up to 4 checks, each with its own target node. |
| Otherwise | Optional target used when no branch matches. |
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. |
Operators
| Operator | Meaning |
|---|---|
| Equals To | Variable equals the value. |
| Does Not Equal | Variable does not equal the value. |
| Greater Than | Number variable is greater than the value. |
| Less Than | Number variable is less than the value. |
| Is True | True/False variable is true. |
| Is False | True/False variable is false. |
| Owns GamePass | Player owns the selected GamePass. |
| Has Roblox Premium | Player has Roblox Premium. |
Runtime Behavior
When the node runs, VNC checks branches in order. The first matching branch wins. If no branch matches, the node follows Otherwise when it is set.
If no branch matches and Otherwise is empty, the current path ends.
Variable operators use the selected project variable. Platform operators such as Owns GamePass and Has Roblox Premium check Roblox state directly and do not need a project variable.
Example Setups
| Goal | Setup |
|---|---|
| Route by stored choice | Branch 1 checks variable favoriteColor, operator Equals To, value red, then set Next to the next node in your route; set Otherwise to a fallback node in the route. |
| Gate a protected route | Branch 1 checks True/False variable hasBadge, operator Is True, then set Next to the next node in your route; set Otherwise to a fallback node in the route. |
| Gate a GamePass route | Branch 1 uses operator Owns GamePass, GamePass ID 123456, then set Next to the next node in your route; set Otherwise to a fallback node in the route. |
| Recall entered text | Branch 1 checks Text variable playerName, operator Does Not Equal, value "", then set Next to the next node in your route; set Otherwise to a fallback node in the route. |
Common Mistakes
| Problem | Fix |
|---|---|
| The wrong branch runs | Put the most specific branch first. |
| A branch never runs | Check the variable kind and operator. |
| A route stops unexpectedly | Set Otherwise or make sure one branch always matches. |
| Number comparison behaves strangely | Use a Number variable, not a Text variable. |
Conditions are easiest to troubleshoot when each branch points to a small named node. The Story Map then shows the route shape clearly.