Conditions Reference

All built-in conditions for choice visibility checks and conditional logic.


Built-in Conditions

ConditionDescriptionExample
_propertyGet a game property value (supports nested paths)_property(gold) > 100
_room_visitedWhether a room has been visited_room_visited(room5) = true
_sceneWhether a scene is currently active_scene = true
_selected_characterID of currently selected character_selected_character = alice
_item_onWhether character has item equipped_item_on(alice, sword) = true
_charGet a character property value_char(alice.stat.strength) > 10
_skillGet learned skill level (0 if not learned)_skill(alice.fire_magic.fireball) > 0

_property Nested Paths

For object-type properties, access nested values with dot notation:

_property(settings.volume) > 50
_property(config.ui.theme) = dark

_char Types

The _char condition accesses character properties by path: characterId.type.key

TypeDescriptionExample
traitCharacter traits_char(alice.trait.name) = Alice
attributeCharacter attributes_char(alice.attribute.class) = warrior
statCharacter stats (computed value)_char(alice.stat.strength) > 10
resourceCharacter resources_char(alice.resource.health) >= 50
skinStyleActive skin layer styles_char(alice.skinStyle.hat) = wizard

_skill Formats

The _skill condition returns the learned level of a skill (0 if not learned).

FormatDescription
_skill(treeId.slotId)Uses selected character
_skill(characterId.treeId.slotId)Specific character
_skill(fire_magic.fireball) > 0        // check if learned
_skill(alice.fire_magic.fireball) >= 3 // check level >= 3