Curitor
Low-Code Scripting · Reference

Stock Conditions & Instructions

The built-in vocabulary you compose rules from — all 60 entries, generated from the toolkit source so the reference cannot drift from the code.

How to read this page

Everything below is generated from the same [Doc] attributes that power the in-editor picker, and a test gate fails whenever this page's data no longer matches the code. Parameters marked (resolved) are not plain values: they resolve when the rule runs, so the same parameter can be a typed-in constant, this object, whoever triggered the event, or a live stat reading.

Conditions (9)

Character/Combat

Took Damage TookDamageCondition

Passes for a short window after the character's health drops, whatever caused it -- a weapon hit, a hazard, or a drain replicated from another machine.

Example: Flash a screen effect for a moment when the local player is hit.

FieldTypeWhat it does
TargetObject (resolved)Which character to watch. Defaults to whatever this event is about.
Within SecondsNumber (resolved)How long after a health drop this condition keeps passing.

Character/Inventory

Has Item HasItemCondition

Passes while the subject's inventory holds at least the given count of an item. Reads the inventory directly, so it agrees with the hotbar the instant a pickup, a drop or a container deposit changes it.

Example: Gate a locked door's Open instruction on Has Item: Key, so the door only opens once the subject is carrying it.

FieldTypeWhat it does
TargetObject (resolved)Which character's inventory to check. Defaults to whatever this event is about.
ItemItemDefinitionThe item to look for.
Min CountNumber (resolved)Minimum number of that item the subject must be carrying.

Character/State

Is Alive IsAliveCondition

Passes while the character is alive -- or while they are dead, if you untick Expect Alive. Reads the kit's single definition of alive, so it always agrees with health bars and death handling.

Example: Gate a revive interaction on Is Alive of the Target with Expect Alive unticked.

FieldTypeWhat it does
TargetObject (resolved)Which character to check. Defaults to whatever this event is about.
Expect AliveOn/offUntick to invert: pass when the character is dead.

Logic

Compare Number CompareNumberCondition

Passes when two numbers compare the way you pick -- equal, not equal, greater, greater-or-equal, less, or less-or-equal. Both sides are resolved through the number resolver family, so this reaches a stat, an item count, a distance, or a literal with the same one condition.

Example: Compare Number: Stat Value (Health, Fraction) of Subject <= 0.25 gates a low-health warning without a bespoke condition.

FieldTypeWhat it does
ANumber (resolved)The left-hand number.
ComparisonChoiceHow the left side must relate to the right side for this to pass.
BNumber (resolved)The right-hand number.

Object/Motion

Is Moving IsMovingCondition

Passes while the object is moving faster than the threshold. Uses the Rigidbody velocity when there is one and measures real displacement otherwise, so hand-moved and animated objects work too.

Example: Play a rattling sound while a cart is rolling.

FieldTypeWhat it does
TargetObject (resolved)Which object to watch. Defaults to the object this rule lives on.
Speed ThresholdNumber (resolved)Speed above which the object counts as moving, in units per second.

Round

Round Phase RoundPhaseCondition

Passes while the active round is in the given phase: waiting, counting down, running or finished.

Example: Let a gate button work only while the round is Running.

FieldTypeWhat it does
PhaseChoice
Expect In PhaseOn/offUntick to invert: pass in every phase EXCEPT the one above.

Round/Race

Lap Reached LapCondition

Passes once the subject has completed at least this many laps.

Example: Gate a reward zone to players on their final lap.

FieldTypeWhat it does
Min LapsNumber (resolved)Passes when the subject has completed at least this many full laps.

Saving

Has Save Data HasSaveDataCondition

True when the given save slot contains anything. Checks only that data exists; it does not read or validate it, so a corrupt save still counts as present.

Example: On a Continue button's Conditions: Has Save Data — so a first-time player is not offered a game to continue.

FieldTypeWhat it does
SlotWhole numberWhich save slot to look in. 0 is the default slot.

Scene Flow

Is In Level IsInLevelCondition

Passes while a level is loaded and the game is not sitting in the lobby.

Example: Make the menu hotkey do nothing while in the lobby.

FieldTypeWhat it does
Expect In LevelOn/offUntick to invert: pass when in the lobby (Main scene).

Instructions (31)

Character/Combat

Apply Damage ApplyDamageInstruction

Deals damage through the combat pipeline, so armour, invulnerability and death are handled exactly as they are for a weapon hit.

Example: A spike trap volume that respects invulnerability frames.

FieldTypeWhat it does
AmountNumber (resolved)Points of damage to deal. Positive -- damage subtracts from health. 0 is legal only with a knockback/effect payload below (a damage-free bumper). For healing use Modify Stat with a positive amount instead.
Affected GroupsChoiceWhich sides this damage may hit. A hazard usually hits Everyone; a player's attack usually should not hit their own side.
Can Hit InstigatorOn/offMay this damage hit the object that owns the trigger, if that object is itself damageable? Irrelevant for plain hazard volumes (they are not damageable), so the default stays permissive.
Knockback ForceNumberKnockback impulse pushing the subject AWAY from the trigger's owner (m/s change) -- a bumper. 0 = no knockback. With amount 0 this is a damage-free shove.
Knockback Up ForceNumberUpward lift added to the knockback so grounded targets pop loose. Only used while knockbackForce > 0.
Target EffectStatEffectDefinitionStat effect applied to the TARGET on each hit (a poison pool that also bites). Optional. Online, the target must list this asset in its CharacterStats knownEffects.
Instigator EffectStatEffectDefinitionStat effect applied to the trigger's OWNER on each hit -- only meaningful when the owner is a character. Optional.

Character/Inventory

Add Item AddItemInstruction

Puts an item in the subject's inventory and tells them about it. Aborts the rest of the list when it does not fit -- which is what leaves a pickup in the world instead of destroying it for nothing.

Example: Add Item then Destroy Self is a complete pickup.

FieldTypeWhat it does
ItemItemDefinition
AmountNumber (resolved)How many to give.

Character/Stats

Apply Stat Effect ApplyStatEffectInstruction

Applies a buff or debuff asset to the subject. Runs exactly once even when the trigger that started it fires on every machine.

Example: A poison volume: On Enter Apply Stat Effect, On Exit Remove Stat Effect.

FieldTypeWhat it does
EffectStatEffectDefinition

Modify Stat ModifyStatInstruction

Adds to or subtracts from one of a target's stats, once. Fires on every connected machine like any trigger-driven instruction, but only the machine that owns the target's CharacterStats actually writes -- gated on CharacterStats.IsAuthoritative, so a volume firing everywhere still counts once. Target defaults to the subject (whoever fired this rule), so every existing rule keeps its old behaviour; point it at a named object (a fort, a door, any CharacterStats holder) to change a shared target instead.

Example: Ten health off whoever touches a hazard, or off a named Fort object instead.

FieldTypeWhat it does
StatStatDefinition
TargetObject (resolved)Whose stat to change. Defaults to the subject -- the object that fired this rule -- so an existing rule with this left unset behaves exactly as before. Point it at a named object (a fort, a door, any CharacterStats holder) to change a shared target instead of whoever entered.
AmountNumber (resolved)How much to add. Negative subtracts -- a ten-health hazard is -10.

Remove Stat Effect RemoveStatEffectInstruction

Takes a buff or debuff off the subject. Removing one that is not active does nothing.

Example: The On Exit half of a poison volume.

FieldTypeWhat it does
EffectStatEffectDefinition

Debug

Debug Log DebugLogInstruction

Writes a line to the console. The first thing to reach for when a rule is not doing what you expected.

Example: Log the instigator's name to see which object set a trigger off.

FieldTypeWhat it does
MessageText (resolved)What to write to the console.
TargetObject (resolved)Which object the console line highlights when clicked. Defaults to the object this rule lives on.

Effects

Play Feedback PlayFeedbackInstruction

Plays a Feedback Definition -- particle, camera shake, hit-stop, sound -- at a target's position. Runs on every connected machine, which is the correct behaviour for a cosmetic effect: everyone present sees and hears it.

Example: A trap springing plays a puff and a small camera shake for whoever triggered it.

FieldTypeWhat it does
FeedbackFeedbackDefinitionWhat to play. Left empty, this instruction does nothing -- feedback slots are optional everywhere in this module.
TargetObject (resolved)Where to play it. Defaults to the subject -- the object that fired this rule.

Flow

Repeat Every Seconds RepeatEverySecondsInstruction

Runs its own instruction list on a timer, for a count or until the round leaves Running or this object is switched off. It fires on every connected machine like any trigger-driven instruction, so gate any stat write inside it on CharacterStats.IsAuthoritative, or it multiplies by the connection count.

Example: Every 20 seconds, enable the next wave object -- paired with Toggle Object.

FieldTypeWhat it does
Interval SecondsNumber (resolved)Seconds between repeats. Zero or less still yields one frame between ticks, so it can never freeze the game.
First Run Delay SecondsNumber (resolved)Optional delay before the first run. Zero starts the first run immediately.
Repeat CountWhole numberHow many times to repeat. 0 or less repeats until the round leaves Running or this object is switched off.
InstructionsInstructions (nested list)Runs every tick, in order -- this instruction's own nested list.

Wait WaitInstruction

Pauses the rest of the list for a while. Game time, so it pauses when the game does, and it survives the behaviour being disabled.

Example: Toggle Off, Wait 3s, Toggle On is a timed effect with no code.

FieldTypeWhat it does
SecondsNumber (resolved)Seconds to wait before the rest of the list continues. Game time, so it pauses with the game.

Wait Until WaitUntilInstruction

Pauses the rest of the list until a condition holds, or until it gives up waiting.

Example: Wait Until every player is in the zone, then start the round.

FieldTypeWhat it does
ConditionConditionThe condition to wait for. Polled once per frame, so keep it cheap.
Timeout SecondsNumber (resolved)Give up after this many seconds. Zero waits forever -- a rule that never finishes.
Continue On TimeoutOn/offUntick (the default) and timing out aborts the rest of the list. Tick to carry on anyway.

Object

Destroy Self DestroySelfInstruction

Removes the object this rule lives on. Put it last: instructions after it would still run, because destruction happens at the end of the frame.

Example: The tail of a pickup, straight after Add Item.

Launch LaunchInstruction

Throws THIS object -- the one carrying this instruction, via its Interactable or Trigger -- upward and forward at a fixed speed, regardless of how heavy it is. Does not launch whoever triggered the rule; for that, use Launch Subject.

Example: A crate that pops out of a chest, or a launcher that fires its own carried prop.

FieldTypeWhat it does
SpeedNumber (resolved)Launch speed, applied as a velocity change -- mass-independent, so the same instruction throws crates and boulders alike.
Upward ArcNumberUpward fraction added to the launch direction for an arc (0 = flat shove, 0.5 = steep lob).

Launch Subject LaunchSubjectInstruction

Launches whoever triggered this rule (the Subject) upward and forward at a fixed speed -- a real jump pad or knockback pad. For a PartyCharacter this goes through the character's own knockback motor, so movement steers back toward input afterward the same way combat knockback does.

Example: A bounce pad a player walks onto, or a launcher that flings whoever enters it.

FieldTypeWhat it does
SpeedNumber (resolved)Launch speed, applied as a velocity change -- mass-independent, so a light or heavy character launches the same distance.
Upward ArcNumberUpward fraction added to the launch direction for an arc (0 = flat shove, 0.5 = steep lob).

Move Object MoveObjectInstruction

Opens, closes or toggles a movable object -- a gate, a door, a barrier. Toggle is for single-machine sources like buttons and hotkeys; a volume firing on every machine should open or close explicitly.

Example: A button that opens the parkour gate.

FieldTypeWhat it does
TargetMovableObject
ActionChoice

Toggle Object ToggleGameObjectInstruction

Shows, hides, or flips the visibility of an object. Needs an explicit target: hiding the object the rule lives on would switch off the rule that is running.

Example: A hotkey that shows and hides the inventory panel.

FieldTypeWhat it does
TargetObject (resolved)What to show or hide. Deliberately empty by default: hiding the object this rule lives on would switch off the rule itself.
ModeChoice

Player

Out Of Bounds OutOfBoundsInstruction

Puts the subject through the scene's out-of-bounds rule -- respawn, or end the round -- instead of hard-wiring one consequence into the volume.

Example: One volume under the course turns every fall into the right consequence.

Respawn Player RespawnPlayerInstruction

Sends the subject back to their last checkpoint, or to the start if they have none.

Example: A volume under the course is a complete kill plane.

Set Checkpoint SetCheckpointInstruction

Makes this the place the subject respawns from next time.

Example: A volume midway through a course, so a fall does not send you back to the start.

FieldTypeWhat it does
CheckpointTransformWhere to respawn. Empty = the owning object's own transform (the volume itself).

Saving

Load Game LoadGameInstruction

Re-reads a save slot and applies it. Also picks up changes made to the save files by hand, which makes it the quickest way to check that a save contains what you think it does.

Example: On a Continue button: Load Game, then Load Level.

FieldTypeWhat it does
SlotWhole numberWhich save slot to read. 0 is the default slot.

Save Game SaveGameInstruction

Writes everything that participates in saving -- settings, remembered objects, progress -- to a save slot. Settings already save themselves when they change, so this is for the moments a game decides are worth recording.

Example: On a checkpoint trigger: Save Game. On the quit button: Save Game, then Load Level.

FieldTypeWhat it does
SlotWhole numberWhich save slot to write. 0 is the default slot.

Scene Flow

Load Level LoadLevelInstruction

Switches to another level. In a live session only the host actually switches and clients follow, so on a client this aborts the rest of the list.

Example: Round over: Load Level.

FieldTypeWhat it does
LevelLevelDefinitionThe level to load, from the level catalog.

Return To Lobby ReturnToLobbyInstruction

Leaves the level. On the host this ends the session for everyone; on a client only that client leaves.

Example: The button on the results screen.

Stats

Set Stat Enabled SetStatEnabledInstruction

Switches a stat off (or back on) for the subject. A disabled stat behaves as if the character never had it: nothing changes it, nothing gates on it, and its bar hides. Re-enabling refills it.

Example: Disable on a volume's On Enter and Enable on its On Exit: inside that area sprinting costs no stamina, and the no-sprint-when-empty rule stops applying.

FieldTypeWhat it does
StatStatDefinitionWhich stat to switch. The same asset the character's CharacterStats lists.
EnabledOn/offOff = disable the stat while the subject is here. On = release THIS volume's hold and refill the stat.

UI

Dismiss Notification DismissNotificationInstruction

Fades out the notifications of one shape that are currently on the subject's screen. Pair it with Show Notification: show on enter, dismiss on exit, so messages stop stacking up.

Example: A briefing volume: On Enter, Show Notification as a message; On Exit, Dismiss Notification message -- so walking through five rooms leaves one card on screen, not five.

FieldTypeWhat it does
ShapeChoiceWhich shape to take off the screen. Matches the shape on Show Notification.

Show Notification ShowNotificationInstruction

Shows a toast, a banner or a readable message popover to the subject. The no-code way to turn any rule into something the player can actually see.

Example: A goal volume: On Enter, Show Notification You Win as a banner. An entrance volume: On Enter, Show Notification as a message, explaining the room.

FieldTypeWhat it does
MessageText (resolved)What the notification says.
ShapeChoice
StyleChoice

Value

Set Value SetValueInstruction

Copies a number into a destination -- a stat, a remembered number, or nowhere (Discard, the safe default before a destination is chosen).

Example: Source: Distance to Target. Destination: Stat of Self = Speed -- a stat that tracks how close another object is.

FieldTypeWhat it does
SourceNumber (resolved)The value to write.
DestinationPropertySetNumberWhere to write it. Discard by default -- the explicit, safe 'nowhere'.

World/Building

Place Object PlaceObjectInstruction

Places a copy of a placeable item into the world in front of the subject, through the same construction a player's own build commit uses -- a scripted placement looks, saves and picks up identically to one the player built by hand.

Example: A shop rule that hands over a placeable already built instead of dropped, or a starter structure a level seeds on round start.

FieldTypeWhat it does
ItemPlaceableDefinition
Forward OffsetNumberHow far in front of the subject (metres) the object is placed.

Remove Placed Object RemovePlacedObjectInstruction

Removes the placed object this rule lives on (or lives under), pruning its placement-ledger row first -- the same clean removal a hammer pickup performs. Use this instead of Destroy Self on a placed object's own rule.

Example: A rule on a placed structure that removes it after a timer or a game event.

World/Containers

Deposit Into Container DepositContainerInstruction

Moves the item the player has selected into the container on this object.

Example: A storage chest that accepts items as well as handing them out.

Open Container OpenContainerInstruction

Opens the container window for the storage on this object, or closes it if it is already showing.

Example: The default chest interaction.

Take From Container LootContainerInstruction

Takes the next stack out of the container on this object and gives it to the player.

Example: A grab-all crate that empties in one press.

Object parameters (11)

Context

Player Of GameObjectPlayer

The player an object belongs to, found by walking up to the character root. An event's cause is often a collider deep inside a rig; this is how a rule reaches the player instead.

FieldTypeWhat it does
OfObject (resolved)Which object to find the owning player of. Defaults to whatever this event is about.

Self GameObjectSelf

The object this rule lives on.

Subject GameObjectSubject

The target when the event has one, otherwise self. The historical default of every node that carried a plain object field.

Target GameObjectTarget

The object that caused this event -- whoever entered the trigger, pressed the button or fired the hotkey. Nothing on a polled tick, which has no cause.

Hierarchy

Child Of GameObjectChild

A named child of another object. Takes a path like Body/Lid, so nested children need no second resolver.

FieldTypeWhat it does
PathTextChild name, or a path like Body/Lid. Same rules as Transform.Find.
OfObject (resolved)Which object to look under. Defaults to whatever this event is about.

Component Owner GameObjectComponentOwner

The nearest ancestor carrying a chosen kind of component -- Player Of generalized to component types other than a character.

FieldTypeWhat it does
OfObject (resolved)Which object to search upward from. Defaults to whatever this event is about.
KindChoiceThe kind of component to look for on the way up.

Parent Of GameObjectParent

The immediate parent of an object -- one level up. An object at the top of its hierarchy (no parent) resolves to nothing.

FieldTypeWhat it does
OfObject (resolved)Which object to find the parent of. Defaults to whatever this event is about.

Scene Root Of GameObjectSceneRoot

The top-most ancestor of an object -- the root of its transform hierarchy. An object with no parent resolves to itself.

FieldTypeWhat it does
OfObject (resolved)Which object to find the scene root of. Defaults to whatever this event is about.

Value

Object GameObjectConstant

A specific object, dragged in. What every parameter used to be.

FieldTypeWhat it does
ValueObject

World

By Name GameObjectByName

An object anywhere in the scene, found by its exact name. Searches the whole loaded scene on every resolve -- fine for an occasional lookup, expensive on a condition polled every frame.

FieldTypeWhat it does
Object NameTextExact object name to search for, anywhere in the loaded scenes.

By Tag GameObjectByTag

The first object in the scene wearing a tag. A tag not yet defined in this project resolves to nothing with one warning, rather than erroring.

FieldTypeWhat it does
TagTextTag to search for, anywhere in the loaded scenes.

Number parameters (3)

Character

Stat Value NumberStat

A stat read off a character -- current value, maximum, or current as a fraction of maximum.

FieldTypeWhat it does
OfObject (resolved)Which character to read the stat from.
StatStatDefinitionThe stat definition to read. A stat the character does not have reads as zero.
ReadChoiceCurrent value, maximum, or current as a fraction of maximum.

Value

Number NumberConstant

A number, typed in.

FieldTypeWhat it does
ValueNumber

World

Distance NumberDistance

How far apart two objects are, optionally ignoring height so it measures on the ground plane.

FieldTypeWhat it does
FromObject (resolved)One end of the measurement.
ToObject (resolved)The other end.
Ignore HeightOn/offIgnore height, measuring on the ground plane only -- usually what a proximity rule means.

Text parameters (2)

Value

Text StringConstant

Text, typed in.

FieldTypeWhat it does
ValueText

World

Object Name StringObjectName

The name of an object -- so a message can say who it is about instead of being generic. Reading a name allocates, so use it in messages rather than in conditions that run every frame.

FieldTypeWhat it does
OfObject (resolved)Whose name to use. Defaults to whatever this event is about.

On/off parameters (2)

Logic

Condition BoolCondition

Whatever a condition currently says, optionally inverted. This makes every condition in the library available to every on-off parameter.

FieldTypeWhat it does
ConditionConditionThe condition to read. Unassigned reads as off.
InvertOn/offTick to invert -- read as on while the condition does NOT hold.

Value

On/Off BoolConstant

A fixed on or off.

FieldTypeWhat it does
ValueOn/off

Position parameters (2)

Value

Position PositionConstant

A fixed point in the world.

FieldTypeWhat it does
ValuePosition

World

Position Of PositionOf

Where an object is, plus an optional offset that can follow the object's own axes.

FieldTypeWhat it does
OfObject (resolved)Whose position to use. Defaults to whatever this event is about.
OffsetPositionAdded to that position.
Offset Is LocalOn/offTick to read the offset in the object's own axes, so 'forward' follows it as it turns.