Docs/Atom library/Conditions (IF)
Conditions (IF)
Every condition atom — 23 gates you can drop into the IF slot of a rule.
Last updated 2026-06-06
Conditions re-evaluate every time the event fires — there's no “global” condition that runs continuously. If you need to react to a value changing, pair the condition with an event like on_variable_threshold.
📌 Note
economy1
Has Enough Currency
has_enough_currencyChecks if the player has at least the specified amount of a variable-backed currency.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
variableId | string | "player_coins" | Variable |
amount | int | 100 | Minimum amount |
logic1
Random Chance
random_chanceSucceeds with a given percentage probability (1–100%).
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
percentage | int | 50 | Chance % |
phase1
Is Phase
is_phaseChecks if the current game phase matches a given phase ID (e.g. warmup, combat).
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
phaseId | string | "" | Phase ID |
player3
Agent is Player
agent_is_playerCasts the agent to a player. Required for actions that need a player reference (HUD, inventory, etc.).
Player Count <=
player_count_lteChecks if the number of players in the experience is less than or equal to a threshold.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
threshold | int | 2 | Max Players |
Player Count >=
player_count_gteChecks if the number of players in the experience is greater than or equal to a threshold.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
threshold | int | 2 | Min Players |
score3
Score <=
score_lteChecks if the player score is less than or equal to a threshold.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
threshold | int | 10 | Threshold |
Score =
score_equalsChecks if the player score is exactly equal to a value.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
threshold | int | 10 | Value |
Score >=
score_gteChecks if the player score is greater than or equal to a threshold.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
threshold | int | 10 | Threshold |
tags1
Near Tagged Object
check_distance_to_tagChecks if the player is within a maximum distance of any object with the specified tag.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
tagName | tag | "my_tag" | Tag Name |
maxDistance | float | 1000 | Max Distance (cm) |
team1
Is On Team
is_on_teamChecks if the agent is on the device's configured team. Failable expression.
timer1
Is Timer Active
is_timer_activeChecks if the timer is currently running. Tracked via an internal variable.
tracker2
Is Tracker Active
is_tracker_activeChecks if the agent currently has the tracker active. Failable expression.
Tracker Reached Target
tracker_reached_targetChecks if the agent has reached the target value of a tracker device (e.g. collected enough items).
trade-system2
Has All Items
has_all_itemsChecks if the agent has all items required by a Conditional Button device. Failable expression.
Is Referenced Player
is_referenced_playerChecks if the agent is the player currently tracked by a Player Reference device. Failable expression.
variable2
Compare Two Variables
compare_two_variablesCompares two player variables against each other (e.g. trade_offer + 10 <= trade_coins).
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
variableIdA | string | "my_var_a" | Variable A |
operator | select | "<=" | Operator |
variableIdB | string | "my_var_b" | Variable B |
offsetA | int | 0 | Offset on A |
Compare Variable
compare_variableChecks a variable against a value using comparison operators (>=, <=, ==, >, <, !=).
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
variableId | string | "my_var" | Variable |
operator | select | ">=" | Operator |
value | int | 0 | Value |
zone1
Is In Zone
is_in_zoneChecks if the agent is inside a volume device (ZoneTrigger). Failable expression.
other4
Inventory Has Item
inventory_has_itemTrue when the slot Inventory contains at least one slot holding the given item id.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
inventoryId | string | "inv_slot" | Inventory |
itemId | int | 1 | Item ID |
Inventory Is Full
inventory_is_fullTrue when the slot Inventory has no empty slot left for a new item (every slot is occupied).
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
inventoryId | string | "inv_slot" | Inventory |
Is Chair Occupied
is_chair_occupiedChecks if the Chair device is currently occupied by any player. Useful for musical chairs logic.
Is Player Seated
is_seatedChecks if a specific player is currently sitting on the Chair device.
See also