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 (no item id = the active item)_item_on(alice, sword) = true, _item_on(mc) = true
_item_countQuantity of an item in an inventory (party by default; unequipped stacks only)_item_count(pickaxe) > 0, _item_count(chest.gold) >= 100
_chosen_itemWhether the last choose_item pick was this template id_chosen_item(key_mansion) = 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. If the key is a skin layer id (not an attribute), returns whether the layer is active (true/false)_char(alice.attribute.class) = warrior, _char(mc.attribute.wings) = true
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
statusWhether the character has a status (1/0)_char(alice.status.poisoned) = 1

_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