Skip to content

Values, Conditions and Filters

Picker entries from Jungle Core. Grouped by the category the picker shows them under.

Asset

Bool List Asset

Shared asset editable in the Project window.

Asset that stores a shared list of yes/no values, editable in the Project window.

Type: BoolListValueAsset · Full page

Bool List From Asset

Provided by a shared asset.

Reads a list of yes/no values from a shared Bool List Value asset.

Type: BoolListValueFromAsset

Bool Value Asset

Shared asset editable in the Project window.

Asset that stores a shared yes/no value, editable in the Project window. Reactors and transformers can subscribe to changes.

Type: BoolValueAsset · Full page

Bool Value From Asset

Provided by a shared asset.

Reads a yes/no value from a shared Bool Value asset. Reactors can subscribe to value changes.

Type: BoolValueFromAsset

Double List Asset

Shared asset editable in the Project window.

Asset that stores a shared list of numbers, editable in the Project window.

Type: DoubleListValueAsset · Full page

Double List From Asset

Provided by a shared asset.

Reads a list of numbers from a shared Double List Value asset.

Type: DoubleListValueFromAsset

Double Value Asset

Shared asset editable in the Project window.

Asset that stores a shared number, editable in the Project window.

Type: DoubleValueAsset · Full page

Double Value From Asset

Provided by a shared asset.

Reads a number from a shared Double Value asset.

Type: DoubleValueFromAsset

Float List Asset

Shared asset editable in the Project window.

Asset that stores a shared list of numbers, editable in the Project window.

Type: FloatListValueAsset · Full page

Float List From Asset

Provided by a shared asset.

Reads a list of numbers from a shared Float List Value asset.

Type: FloatListValueFromAsset

Float Value Asset

Shared asset editable in the Project window.

Asset that stores a shared number, editable in the Project window. Reactors and transformers can subscribe to changes.

Type: FloatValueAsset · Full page

Float Value From Asset

Provided by a shared ScriptableObject.

Reads a number from a shared Float Value asset. Reactors can subscribe to value changes.

Type: FloatValueFromAsset

GameObject Value Asset

Shared asset editable in the Project window.

Asset that stores a shared GameObject link. Reactors and transformers can subscribe to changes.

Type: GameObjectValueAsset · Full page

GameObject Value From Asset

Provided by a shared asset.

Reads a GameObject from a shared GameObject Value asset. Reactors can subscribe to value changes.

Type: GameObjectValueFromAsset

Int List Asset

Shared asset editable in the Project window.

Asset that stores a shared list of whole numbers, editable in the Project window.

Type: IntListValueAsset · Full page

Int List From Asset

Provided by a shared asset.

Reads a list of whole numbers from a shared Int List Value asset.

Type: IntListValueFromAsset

Int Value Asset

Shared asset editable in the Project window.

Asset that stores a shared whole number, editable in the Project window. Reactors and transformers can subscribe to changes.

Type: IntValueAsset · Full page

Int Value From Asset

Provided by a shared asset.

Reads a whole number from a shared Int Value asset. Reactors can subscribe to value changes.

Type: IntValueFromAsset

Long List Asset

Shared asset editable in the Project window.

Asset that stores a shared list of whole numbers (large range), editable in the Project window.

Type: LongListValueAsset · Full page

Long List From Asset

Provided by a shared asset.

Reads a list of whole numbers from a shared Long List Value asset.

Type: LongListValueFromAsset

Long Value Asset

Shared asset editable in the Project window.

Asset that stores a shared whole number (large range), editable in the Project window.

Type: LongValueAsset · Full page

Long Value From Asset

Provided by a shared asset.

Reads a whole number from a shared Long Value asset.

Type: LongValueFromAsset

String List Asset

Shared asset editable in the Project window.

Asset that stores a shared list of text values, editable in the Project window.

Type: StringListValueAsset · Full page

String List From Asset

Provided by a shared asset.

Reads a list of text values from a shared String List Value asset.

Type: StringListValueFromAsset

String Value Asset

Shared asset editable in the Project window.

Asset that stores a shared piece of text, editable in the Project window.

Type: StringValueAsset · Full page

String Value From Asset

Provided by a shared asset.

Reads text from a shared String Value asset.

Type: StringValueFromAsset

Combinatory

Combinatory

Merges results from multiple lookup strategies.

Runs multiple lookup strategies and merges their results into a single deduplicated set.

Type: CombinatoryLookupStrategy

Container

All In Container

All GameObjects currently held in a container.

All GameObjects currently available in a container. Pick the container directly, or read it from a shared Container Value asset so a prefab can reach a container in the scene. Reactors can subscribe to add/remove events.

Type: GameObjectsInContainer

First In Container

First GameObject currently held in a container.

Returns the first GameObject currently available in a referenced container. Reactors can subscribe to changes. Writing to it (from a Write GameObject operation, for example) replaces that first object, which makes a container a place to keep an object you found once and reuse.

Type: GameObjectFirstInContainer

From Container

GameObject picked from a container (first, last, or random).

Picks a GameObject from a container's available objects using a configurable selection mode (first, last, or random). Reactors can subscribe to changes.

Type: GameObjectFromContainer

Last Added To Container

GameObject most recently added to a container.

Returns the GameObject most recently added to a referenced container. Reactors can subscribe to changes.

Type: GameObjectLastAddedToContainer

Last In Container

Last GameObject currently held in a container.

Returns the last GameObject currently available in a referenced container. Reactors can subscribe to changes.

Type: GameObjectLastInContainer

Last Removed From Container

GameObject most recently removed from a container.

The GameObject most recently removed from a container. Reactors can subscribe to changes.

Type: GameObjectLastRemovedFromContainer

Containers

Container Condition

Evaluates a check against an item container.

Checks a container's state (empty, full, item count, contains a specific object, …).

Type: ContainerCondition

Contains GameObject

True when the container holds a specific GameObject (or owns a component on it).

Passes when the looked-up GameObject (or any component sitting on it) is in the container.

Type: ContainsGameObjectContainerCheck

Is Empty

True when the container holds no items.

Passes when the container holds no items.

Type: IsEmptyContainerCheck

Is Full

True when a bounded container has reached its capacity.

Passes when the container has a set capacity and is holding that many items. Containers with no capacity limit never pass.

Type: IsFullContainerCheck

Item Count

Compares the container's item count against a value.

Passes when the container's item count matches the chosen comparison against a target number.

Type: ItemCountContainerCheck

Context

Filtered Object

The object the enclosing filter is currently checking.

Resolves to whichever object the surrounding filter is currently testing. Drop it into a filter's value slots — for example to read the bounds, position, or components of the object being filtered. Outside a filter context it returns nothing.

Type: FilteredObject

Data

Bool Value Condition

Checks a bool value against what you expect.

Passes when the bool value matches what you're checking it against.

Type: BoolValueCondition

Double Value Condition

Checks a number against a comparison.

Passes when a number matches the comparison against another number, with a tolerance for equality checks.

Type: DoubleValueCondition

Float Value Condition

Checks a number against a comparison.

Passes when a number matches the comparison against another number, with a tolerance for equality checks.

Type: FloatValueCondition

Int Value Condition

Checks a number against a comparison.

Passes when a number matches the comparison against another number.

Type: IntValueCondition

Detection

Any Detected Matches

True when at least one detected GameObject passes the inner filter.

Passes when at least one of the detector's currently detected objects passes the GameObject filter.

Type: AnyDetectedMatchesDetectorCheck

Combinatory

Merges detections from multiple strategies.

Combines detections from multiple inner detection strategies into a single merged stream.

Type: CombinatoryDetectionStrategy

Contains GameObject

True when the detector currently contains a specific GameObject.

Passes when the looked-up GameObject is currently being detected by the Detector.

Type: ContainsGameObjectDetectorCheck

Detected Count

Compares the detector's detected count against a value.

Passes when the number of detected objects matches the chosen comparison against a target number.

Type: DetectedCountDetectorCheck

Detector Condition

Evaluates a check against a detector.

Queries a Detector (has any detection, detected count, contains specific object, …).

Type: DetectorCondition

Has Any Detection

True when the detector has at least one detected object.

Passes while the detector is detecting at least one object.

Type: HasDetectionsDetectorCheck

Last Detected Matches

Evaluates a check on the detector's most recently detected GameObject.

Passes when the most recently detected object exists and passes the GameObject filter.

Type: LastDetectedMatchesDetectorCheck

Not Just Rejected

Hides an object briefly after the detector loses it.

After the detector drops an object, this filter keeps hiding it for a short window. As long as the detector keeps looking at it, the hide stays in place. Once it leaves and stays away long enough, it's allowed back. Use to stop a slot from re-lighting the moment another filter that was blocking it relaxes.

Type: NotJustRejectedFilter

Not Rejected Until Other Seen

Hides a dropped object until a different object is seen by the detector.

After the detector loses an object, this filter keeps hiding it, even if its other conditions become valid again, until a different object shows up. Pick whether 'shows up' means 'any object the detector looks at' or 'only objects that pass the full filter chain'. Works correctly no matter where it sits in the filter list.

Type: NotRejectedUntilOtherSeenFilter

Proxy

Relays detections from another detector.

Forwards detection events from a single source detector. The host detector's filters decide what to keep.

Type: ProxyDetectionStrategy

Detector

All Detected

All GameObjects currently detected by a detector.

All GameObjects currently detected by a detector. Reactors can subscribe to add/remove events.

Type: GameObjectsFromDetector

From Detector

GameObject picked from a detector (first, last, or random).

Picks a GameObject from a Detector's currently detected objects using a configurable selection mode (first, last, or random). Add filters to narrow it down to the ones you actually want, and turn on Keep The Same Pick so a destination stays put once chosen instead of changing while something travels towards it. Reactors can subscribe to changes.

Type: GameObjectFromDetector

Last Detected

GameObject most recently detected by a detector.

Provides the GameObject most recently detected by a referenced Detector. Reactors can subscribe to changes.

Type: GameObjectLastDetected

Last Removed From Detector

GameObject most recently lost by a detector.

The GameObject most recently lost by a detector. Reactors can subscribe to changes.

Type: GameObjectLastRemovedFromDetector

Hierarchy

Hierarchy

Finds components in any combination of Self, Children, Parents.

Looks for components on the GameObject's hierarchy. Scope flags select where to search (Self, Children, Parents). Child Depth controls direct vs recursive child traversal. Mode picks the first match or every match.

Type: HierarchyLookupStrategy

Tagged Child

Finds components on descendants carrying a Jungle tag.

Walks the descendants of the source GameObject and returns components found on those whose Tagger carries the required tag. The source object itself never matches, so this resolves a specific tagged child, such as a hover label or a hologram, of whatever object a dynamic value provides, for example the object a detector currently sees.

Type: TaggedChildLookupStrategy

Input

Accumulated Input Axis

Adds an input axis up over time into a value.

Turns an axis into a value that keeps growing while the input moves: drag the mouse to turn a camera, scroll to zoom. Per Second scales by frame time for sticks and keys; turn it off for mouse and scroll deltas. Only While gates it, for example on the right mouse button. Clamp stops at the limits, Wrap loops around them (360 for an angle), None runs free. Plug it straight into an orbit target or an offset.

Type: InputAxisAccumulatedValue

Input Action

Reads an Input System action as a number (trigger, grip, stick axis).

Reads how far an input is pushed right now: 0 when a VR trigger or grip is released, 1 when fully squeezed, or a stick's position. Pick an action from an Input Actions asset, or type the binding in directly, such as <XRController>{RightHand}/{Trigger}. Buttons read 0 or 1. Requires the Input System package.

Type: InputActionValue

Input Axis

Reads a named input axis (Horizontal, Mouse X, Mouse ScrollWheel, ...).

Reads one of Unity's input axes by name, like Horizontal, Vertical, Mouse X, Mouse Y or Mouse ScrollWheel. Raw skips Unity's smoothing so the value reacts instantly. Scale multiplies the result, handy as a sensitivity setting; a negative Scale inverts the axis.

Type: InputAxisValue

Key Held

True while a key or mouse button is held down.

True while the chosen key or mouse button is held down, false otherwise. Mouse buttons work too: Mouse0 is left, Mouse1 is right, Mouse2 is middle. Use it to gate things that should only happen while a button stays pressed, like orbiting a camera while the right mouse button is held.

Type: KeyHeldValue

Modifier Held

True while Shift, Control (Command on macOS) or Alt is held, either side.

Checks the modifier keys, left or right. Control means Command on macOS, the same as Unity's own shortcuts. Any passes when at least one of the chosen keys is held, All when every one is, None when none of them is. For click selection: Shift adds, Control toggles, and None of Shift or Control replaces.

Type: ModifierKeyHeldValue

Logic

Combinatory Condition

Groups conditions with logic operators.

Passes when the sub-conditions satisfy the chosen rule: And, Or, Xor, Nand, or Nor.

Type: CombinatoryCondition

Conditional

The first object source whose conditions all pass.

Picks between object sources by condition, in order: the first entry whose conditions all pass wins, and the fallback answers when none of them does. Use it when the same choice is made from several places, so the rule lives here instead of being repeated.

Type: ConditionalGameObjectValue

External Condition

Reads its result from another component or asset that exposes a yes/no condition.

Passes when that external component or asset says yes.

Type: ExternalCondition

Random Condition

Passes randomly, based on a probability you set.

Passes randomly, based on a probability between 0 and 1.

Type: RandomCondition

Lookup

Closest

The object of a set nearest to a position, within an optional distance.

Picks, from a set of objects, the one nearest to a position you choose, for example the hand slot closest to where the cursor drags a card. Set a maximum distance to get nothing at all when every object is too far away; leave it at 0 to always get the nearest one. Set Prefer Up Along to also favour objects turned a given way, such as the grip marker on a sushi that faces the hand reaching for it, and a Max Turn Angle to skip the ones turned too far away.

Type: ClosestGameObject

GameObject At Index

Picks one GameObject from a set by index (wraps around).

Selects one GameObject from a set (a container, a detector, or a fixed list) using an index. The index loops: stepping past the last element comes back to the first, and stepping before the first goes to the last. Drive the index from a counter to rotate focus left/right through the set.

Type: GameObjectAtIndex

Indexed Object

Picks one object from a set by index.

Returns the object at Index from a set. The set defaults to a list, but can be a tag search or any other multi-object source. The index loops, so a stepping counter walks the set. Use it to select the active panel, camera or spawn point from a counter.

Type: IndexedGameObjectValue

Object Count

How many objects a set currently holds.

Counts the objects in a set: a tag search, a detector, a container or a list. When the set is live the count is too, so thresholds and tiers can watch it directly. Replaces increment-on-add and decrement-on-remove counters kept in a data store.

Type: ObjectCountValue

Value At Index

Picks one entry from a list by index.

Selects a value from a serialized array using an integer index source, wrapping around on overflow.

Type: ValueAtIndex

Math / Float

Indexed Float

Picks one of several numbers by index.

Lists several numbers and returns the one at Index. The index loops, so stepping past the last option returns to the first. Drive Index from a counter to switch between authored values without a reaction per value.

Type: IndexedFloatValue

Percent

Stores a number between 0 and 1.

A number between 0 and 1, useful for percentages.

Type: FloatPercent

Objects

Active

Checks whether the GameObject is active in the hierarchy.

Passes when the GameObject is active. Check just this object, or its whole hierarchy.

Type: ActiveCondition

Child Count

Checks the GameObject's child count against a value.

Passes when the GameObject's child count matches the comparison against a target number.

Type: ChildCountCondition

Component Condition

Evaluates a check against a Component.

Checks a Component reference (is enabled, is active-and-enabled, …).

Type: ComponentCondition

GameObject Condition

Evaluates a check against a target GameObject.

Looks up a GameObject and runs a check against it (Is Active, Name, Tag, Layer, Has Component, Parent, and more).

Type: GameObjectCondition · Full page

In GameObject List

Checks if the GameObject is one of the objects in a set.

Passes when the GameObject being checked is one of the objects in the set. The set defaults to a list you fill in, but can be a container, a detector, or a search like 'every object with a tag'.

Type: GameObjectInListCondition

Is Active And Enabled

True when a Behaviour is enabled and its GameObject is active in hierarchy.

Passes when the component is enabled and its GameObject is active in the hierarchy. Components that aren't Behaviours just check the GameObject's active state.

Type: IsActiveAndEnabledComponentCheck

Is Enabled

True when a Behaviour (or Collider/Renderer) is enabled.

Passes when the component's enabled checkbox is on. Works with scripts, Colliders, and Renderers. Components that can't be toggled always pass.

Type: IsEnabledComponentCheck

Layer

Checks whether the GameObject is on a specific layer.

Passes when the GameObject is on the specified layer.

Type: LayerCondition

Layer Mask

Checks whether the GameObject's layer is in a LayerMask.

Passes when the GameObject's layer is included in the specified LayerMask.

Type: LayerMaskCondition

Name

Checks the GameObject's name (exact or contains).

Passes when the GameObject's name matches a string using equals, contains, starts-with, or ends-with.

Type: NameCondition

On Parent

Evaluates inner filters against the parent GameObject.

Redirects inner filters to the parent of the detected GameObject. Fails if the object has no parent.

Type: OnParentFilter

Parent

Checks the GameObject's relationship to its parent.

Passes when the GameObject's parent relationship matches the chosen check (has parent, is root, specific parent, parent tag, or parent name).

Type: ParentCondition

Static

Checks whether the GameObject is marked as static.

Passes when the GameObject is marked as static.

Type: StaticCondition

Tag

Matches tags on the object's Tagger (Jungle tags, not Unity's).

Passes when the GameObject's Tagger has the required tags. Pick the match rule: All tags must match, Any one is enough, exactly One, or AnyExcept (none of these may match).

These are JUNGLE tags, listed on a Tagger component, several per object. Unity's built-in tag (the Inspector Tag dropdown, one string per object) is a different system: use the 'Unity Tag Filter' for that. An object with no Tagger matches only the AnyExcept rule.

Empty slots in the list are ignored. A list with nothing but empty slots counts as no rule at all, so every GameObject passes and an error names the problem.

Type: JungleTagFilter · Full page

Unity Tag Filter

Matches Unity's built-in tag (the Inspector Tag dropdown), not a Jungle Tagger.

Passes when the GameObject carries the specified UNITY tag, the one from the Inspector's Tag dropdown, compared with CompareTag. This is Unity's tag system: one tag per object, chosen from the project's tag list.

For Jungle's own tags, use the 'Tag' filter instead, it reads Key assets from a Tagger component and supports multiple tags per object with All / Any / One / AnyExcept rules. The two systems are independent and do not see each other.

Type: TagCondition

Within Distance

Passes when the object is close enough to a reference object.

Passes objects that are within a set distance of a reference object. Use for interaction ranges: only let a character grab or drop things that are near it. Turn on 'Ignore Height' to measure distance on the ground plane only.

Type: WithinDistanceFilter

Orchestration

Condition

Passes every object while the conditions hold.

Passes or blocks every object based on conditions that have nothing to do with the object itself: a key being held, a value in Data Storage, a timer. All conditions must pass. Use it to switch a whole filter list on or off from scene state, for example to stop the normal grab while a modifier key is down. Leave the list empty to pass everything.

Type: ConditionFilter · Full page

Physics

Has Rigidbody

Passes when the object has a Rigidbody component.

Checks whether the object has a Rigidbody attached. Invert to match objects without one (pure static colliders).

Type: HasRigidbodyFilter

Kinematic / Dynamic

Whether the Rigidbody is kinematic or dynamic.

Passes when the Rigidbody matches the selected mode. Kinematic accepts only kinematic bodies (script-driven, ignores physics forces); Dynamic accepts only dynamic bodies (driven by physics forces and collisions).

Type: KinematicCheck

Rigidbody Filter

Resolves a Rigidbody on the candidate and runs typed checks against it.

Looks for a Rigidbody on the candidate (using the lookup strategy) and passes when every check passes. Add checks for kinematic state, mass, drag, and so on — each check only sees the resolved Rigidbody, so picker options stay scoped to what's relevant. Empty checks list = pass as long as a Rigidbody is found.

Type: RigidbodyFilterGroup

Reference

From Component Reference

Uses a direct serialized component reference.

Uses a directly assigned component reference, bypassing any runtime lookup.

Type: FromComponentReferenceStrategy

Tag Mapped

Picks a component from a tag-to-component table by the source object's tag.

Reads the Tagger on the source GameObject and returns the component paired with the first tag it carries, in table order. Use it when several kinds of object flow through one command and each kind needs its own receiver, for example a smelter spawning a different bar per ore. Untagged sources, and tags missing from the table, resolve to nothing.

Type: TagMappedLookupStrategy

Scene

All In Scene

Every GameObject in the loaded scene(s).

Returns every object in the scene. This is a heavy scan, meant for setup only, so it resolves once on first use by default. Searching again later logs a warning. Turn on Re-evaluate Every Time only if objects are created or destroyed and you need the set kept current. Use it as the root of a From Selection and add a tag filter to narrow it to 'every object with a tag'.

Type: GameObjectsInScene

Scene Object

One scene object by stable id. The link survives scene unloads and works from assets.

Points at one scene object through its Scene Object Id component, so the link survives scene unloads and can live inside assets (presets, timelines). Drag any scene object in. It receives a stable id automatically. Resolves to the object while its scene is loaded, and to nothing while it is not; it never loads the scene itself. Put a Load Scene operation earlier in the sequence when the scene may be closed.

Type: SceneObjectValue

Scene Objects With Tag

Searches the whole scene for every active object whose Tagger matches the tags.

Searches the whole scene for every active object carrying a matching tag, again on every frame it is read. That is costly, so use it at setup only: find the object once (a Write GameObject on start, or a target set to Copied On Init) and reuse it. Searching again on a later frame logs a warning. Pick the tags and how they must match: All (every tag), Any (at least one), exactly One, or AnyExcept (a tagged object that has none of them).

Type: GameObjectsWithTag

Selection

Ancestor Under

The parent, grandparent or further up of an object that sits directly under a root, such as the first bone of a tentacle.

Walks up from an object until it reaches the one sitting directly under Root, and gives that one. Every bone of a tentacle gives the tentacle's first bone, so values tied to it stay the same along the whole tentacle. An object sitting directly under Root gives itself. Gives nothing when the object is not below Root.

Type: AncestorUnderValue

Children Of

The objects below a start object, such as a chain of bones.

Lists the objects below a start object, so you don't drag every bone in by hand. Chain follows the first child down, which walks one bone chain. Direct takes the start object's own children. Whole Tree takes everything below it. Max Count stops after that many objects; 0 goes to the end.

Type: GameObjectsUnder

Finds objects reached via a lookup strategy (hierarchy walk, component reference, …).

Follows the chosen lookup from the candidate and returns each object found. Use Hierarchy lookup to walk to children or parents, From Component Reference to jump to a fixed object, or a domain-specific strategy (like attachable owner) to redirect.

Type: FindRelated

From Selection

Objects found by running a selection chain from a root.

Finds objects by searching out from a starting object. Pick the root, then add selection steps — walk to children or parents, keep only objects with a tag, and so on — to build sets like 'every child of X tagged Pickup'. The search runs once by default; turn on Re-evaluate Every Time if the matching set changes while playing.

Type: GameObjectsFromSelection

Sequence

Runs selection steps in order, feeding each step's output into the next.

Chains selection steps. The candidate enters the first step; each step's output becomes the next step's input. Use to compose 'expand then filter' patterns like 'children that have a Rigidbody'.

Type: SelectionSequence

Union

Runs several selection steps on the candidate and merges their results (no duplicates).

Runs each step on the same candidate and combines what they find into one set, dropping duplicates. Use when an object can be reached more than one way, e.g. 'children OR parents that have a Rigidbody'.

Type: SelectionUnion

Walk Hierarchy

Returns the candidate's Self, Children, or Parents.

Broadens the candidate into objects from its hierarchy. Pick Self, Children, Parents (or combinations). For children, choose Direct or Recursive depth. Combine with filters in a Sequence to express things like 'children with Rigidbody' or 'parents with a Point of Interest'.

Type: HierarchyExpand

Self

Self

Finds the component on this GameObject only.

Looks for the component on the same GameObject. Does not walk into children or up to parents.

Type: SelfLookupStrategy

Spatial

Indexed Vector3

Picks one of several vectors by index.

Lists several vectors and returns the one at Index. The index loops, so stepping past the last option returns to the first. Four rotations plus a wrapping counter give a rotate-held-piece key with no reaction per facing.

Type: IndexedVector3Value

Position And Facing

A position and a facing, each typed in or read from its own source.

Builds a position and a facing from two separate values. Each one can be typed in or read from anywhere, for example one object's position with another object's facing.

Type: OrientedPositionFromParts

Spatial / Transform

Object Position And Facing

Where an object is and which way it faces, in world space.

Reads where an object is and which way it faces, both at once, in world space.

Type: GameObjectOrientedPosition

Time

Float At Speed

Counts up or down at a steady speed, with optional limits.

Starts at Start and moves by Speed every second, down if Speed is negative. Clamp stops at the limits, Wrap jumps back to Min after Max (360 for an angle), Ping Pong turns around at each limit, None runs free. Its Clock decides when the count starts again. Changing Speed while it runs rescales the whole count, so use Float Over Time to blend between two values instead.

Type: FloatAtSpeedValue

Game Time

Seconds since the game started.

The current game time in seconds, multiplied by Scale. Store it in a number when something happens, then give that number to a clock's Stored Time to count from that moment; keep Scale at 1 for that. Raise Scale to make something driven by it run faster, 2 runs twice as fast.

Type: GameTimeValue

Time Since Start

Seconds since this pipeline, this run or a stored time began.

Counts up from 0 every time its start comes round again. Pipeline restarts each time the pipeline reading it begins, including each repeat. Run restarts when the cycle or event fires. Stored Time counts from a time you stored when something happened. Put a curve on it to ramp something up from the start. Pipeline and Run read 0 outside a running process.

Type: TimeSinceStartValue

General

Asset Reference

References a ScriptableObject that provides a value.

Reads a value from an asset that itself acts as the value (the asset and the value are the same thing).

Type: ScriptableObjectReference

Bool Value

Stores a yes/no value directly on this component.

A yes/no value you set directly on this component.

Type: BoolValue

Component Reference

References a component that provides a value.

Gets a value directly from a referenced component.

Type: ComponentReference

Container

A container component in the scene or a shared container asset.

Points at a container: a GameObject List Container on an object, or a GameObject Container asset shared across scenes.

Type: GameObjectContainerValue

Context

The object this run is about. The object that entered the detector, cycle, or zone that started this process.

Resolves to the object this run of the process is about. Use it inside processes started per object — a detector's On Added / On Removed, a GameObject or Exclusive reaction, a cycle reaction, or an effect zone. Each run carries its own context, so the same process acts on the right object even when many objects are handled at the same time. In a Process Component's process it is the object the component sits on. Inside a Spawn or For Each, Context stays the outer object; the object being spawned or visited is Each Object. Inside a command, the object the command is acting on is Target. Outside such a run it resolves to nothing.

Type: ContextObjectValue

Detector

Use a detector's currently-detected objects as a source.

Wraps a Detector and exposes its current detection set as a GameObject source.

Type: DetectorSourceValue

Double Value

Stores a number directly on this component.

A number you set directly on this component.

Type: DoubleValue

Each Object

The object this step is handling: the one just spawned, or the one For Each is visiting.

The object this step is handling: the object just spawned by Spawn, or the object For Each or List Match is visiting. Context still means the outer object (the detected item, the reaction's object), so a step can act on Each Object and use Context at the same time, for example to place a spawned ring on the detected item. Outside a Spawn or For Each it resolves to nothing.

Type: EachObjectValue

Float Value

Stores a number directly on this component.

A number you set directly on this component.

Type: FloatValue

GameObject List

Several objects, each picked its own way. Drag objects onto the list to add them.

A list of objects, in order. Each entry is picked its own way: a direct reference, the context, a container, a detector, a tag search. Drag several objects onto the list to add one entry per object. Reactors update when any entry changes.

Type: CombinedGameObjects

GameObject Value

Stores a GameObject reference directly on the owner.

A GameObject reference set directly on the component.

Type: GameObjectValue

Int Value

Stores a number directly on this component.

A number you set directly on this component.

Type: IntValue

Local Array Value

Exposes items from a serialized array on the owner.

Stores an inline array of values and exposes the first element as the primary value.

Type: LocalArrayValue

Long Value

Stores a whole number directly on this component.

A whole number you set directly on this component.

Type: LongValue

Scene Value

Links a scene asset directly on the owner.

Stores a single scene link inline. Drag a scene from the Project window into the field. The link keeps working in builds as long as the scene is added to Build Settings.

Type: SceneValue

String Value

Stores text directly on this component.

Text you set directly on this component.

Type: StringValue

Target

The object this command is acting on: one of the objects its Target field picks.

The object this command is acting on right now. When the command's Target picks several objects, each one runs the operations separately, and Target is the one being handled, not the whole set. For a command acting on a component, it is that component's object. Context still means the object the run is about, and Each Object the one a Spawn or For Each is handling, so a step can use all three. Outside a command it resolves to nothing.

Type: TargetObjectValue

Value From Asset

Reads a value provided by a ScriptableObject asset.

Reads and writes a value through a Value asset, so multiple objects can share the same data.

Type: ValueFromAsset