Nodes
Every blueprint consists of nodes that connect to each other via different pins.
There are two common types of pins:
- Flow
pins transfer the execution flow of the scenario:
In this example, the Create Truck node will be executed after the Delay node has finished execution (that is, the delay ended). - Data
pins transfer data: actors, boolean variables, position, and so on.
In this example, the Get First Tagged Actor node finds the first actor with the tag build_1 and passes this actor as an argument to the On Enabled node.
Info
Many nodes have the word actor in the name. Actors are special objects that have some kind of behavior associated with them. Most of the objects in the scene are actors: buildings, vehicles, quest objects, and so on.
Nodes have different types, the most common ones:
- Function nodes do something with the arguments they are given. For example, the Create Truck node creates a specified type of truck at given coordinates and then transfers the execution flow further:
- Event nodes wait for a certain event associated with a specified actor and then transfer the execution flow further. For example, the On Enabled node waits until the Enable Disable property of an actor has the
true
value:
- Getter nodes either find some actors and pass them further through a data pin or get some property of an actor and pass it through a data pin:
List of nodes available in the Mod Editor:
Node |
Description |
---|---|
Scan Tagged Actors¶ |
Returns an array of actors with the specified tag in a sphere centered at a specified point.
The point can be specified as a constant or can be passed by the Get Actor Position node. |
Follow Spline 3d¶ |
Used for managing an instance of the actor_followed_spline3d prefab: a prefab that allows
to create a spline and place an actor that will follow the path created by the spline.
|
Start Route / Stop Route¶ |
Spawn/despawn an AI vehicle that moves through the specified AI route. |
Start TPL Animation¶ |
Starts the specified TPL animation of the actor. Animation can be chosen directly from.
|
On TPL Animation Begin / On TPL Animation End¶ |
Triggers the next node when the actor's animation begins/ends.
|
Actor For Each¶ |
Iterates over a given array of actors. |
Pipe¶ |
A Pipe node can be used to merge multiple flows into one, making a Blueprint diagram more readable. |
Pipe With Condition¶ |
Passes the execution flow to the next node only if the Is Enabled flag is |
Disable actor / Enable actor¶ |
Switch the Enable Disable property of the given actor to
|
On Disabled / On Enabled¶ |
Waits until the Enable Disable property of the given actor has the
|
Is Actor Enabled¶ |
Returns the value of the Enable Disable property of the given actor. The actor can be specified
either by another node or by directly selecting an actor in the scene.
|
Set Actor Transform 3d / Get Actor Transform 3d¶ |
Sets/Returns the position and rotation of the actor. The actor can be specified either by another node or by directly selecting an actor in the scene.
|
Get Actor Position¶ |
Returns only the position (without rotation) of the actor. The actor can be specified either by another node or by directly selecting an actor in the scene.
|
Actor Pipe¶ |
An Actor Pipe node can be used for distributing a single actor to multiple nodes, making a Blueprint diagram more readable. |
Check Actor InDomain¶ |
Branches the script based on whether an actor is inside or outside a domain. |
Get Actors From Domain¶ |
Returns all actors in the given domain. The domain can be specified either by another node or by directly selecting a domain in the scene. You can iterate over the
actors using the Actor For Each node: |
Subscribe To Domain Events¶ |
Triggers the next node if an actor enters the specified domain.
The actor must be tagged with one of the domain tags.
|
On Tick¶ |
Triggers the next connected node every tick (frame). Use with caution, the node consumes a lot of resources. |
On Tick Every Frame Counter¶ |
Triggers the next connected node every tick (frame) for the specified amount of ticks (frames). |
On Timeline Tick (without restart on activate)¶ |
On every tick, returns the value of the function defined by a spline.
|
Delay¶ |
Holds off the execution of the script for the specified time (in seconds). |
Schedule¶ |
Triggers the next node every Period seconds with the specified delay for the first trigger. Use with caution, the node consumes a lot of resources. |
Do Once¶ |
The execution flow can only pass through the Do Once node once: after that, the node blocks the
execution flow unless reset. For example, a Force Build node can only build a building once.
If you want to trigger the Force Build node when the player enters some domain, you need to do so
using the Do Once node: the player can enter the domain multiple times, but the Force Build node will only be triggered once. |
If¶ |
Branches the script based on a boolean value. You can set the initial state of the boolean
value by checking/unchecking the Condition pin checkbox. |
Get First Tagged Actor¶ |
Returns the first actor found in the scene that has the specified tag: If there is more than one actor with the specified tag, the first actor with the specified tag will be returned. |
Get Tagged Actors¶ |
Returns all the actors that have the specified tag. You can iterate over the actors
using the Actor For Each node: |
Force Build¶ |
Restores (builds) the building represented by a prefab with |
Draw debug message¶ |
Draws a debug message in the top left corner of the screen for the specified amount of time.
The message will always be displayed as a single string. If two debug messages are active at the same time, only one will be shown. |
Show Radio Message¶ |
Show a radio message for the player. You can add a voice-over sound: one of the built-in voiceovers or
your own voice-over created as an external sound. |
On Camera State Changed¶ |
Triggers the next node when the state of the camera changes. |
Set Behavior Phys System¶ |
Changes the behavior of a physical object:
|
Show/Hide Quest Object¶ |
Shows/hides a quest object (an instance of a prefab with |
Create Truck¶ |
Creates a truck at the given coordinates.
The typical way of passing coordinates to the Create Truck node is to create a tagged recovery_locator_private
object and get its coordinates using Get First Tagged Actor + Get Actor Trasform3d nodes: |
SetLockWinchState¶ |
Disables/enables the winch points of the specified actor.
|
Play Sound¶ |
Plays a sound using an actor with a SoundEmitter property.
|
Is Raining / Is Sandstorming¶ |
Returns the current state of the weather ( |
On Rain / On Sandstorm¶ |
Triggers the next node when the rain/sandstorm begins/stops. |
Rain power / Sandstorm power¶ |
Returns the power of the rain/sandstorm (from 0 to 1). |
Get Sun Angle¶ |
Returns the angle at which the sun currently sits (from 0 to 1.4 in radians).
Can be used to roughly determine the time of the day. |