Skip to content

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

OperatorMeaning
Equals ToVariable equals the value.
Does Not EqualVariable does not equal the value.
Greater ThanNumber variable is greater than the value.
Less ThanNumber variable is less than the value.
Is TrueTrue/False variable is true.
Is FalseTrue/False variable is false.
Owns GamePassPlayer owns the selected GamePass.
Has Roblox PremiumPlayer 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

GoalSetup
Route by stored choiceBranch 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 routeBranch 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 routeBranch 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 textBranch 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

ProblemFix
The wrong branch runsPut the most specific branch first.
A branch never runsCheck the variable kind and operator.
A route stops unexpectedlySet Otherwise or make sure one branch always matches.
Number comparison behaves strangelyUse 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.