Modding:BehaviorTrees:Composite

From Starbounder - Starbound Wiki
Jump to: navigation, search
Mining Hazard Sign.png
Work In Progress!
Mining Hazard Sign.png

This article or section is currently in the process of an expansion or major restructuring.
You are welcome to assist in its construction by editing it as well.

Last edited by Lunar Eye Gaming on 2020-10-03 03:23:28.

Composite Nodes may contain as much children as you want. They are mainly used to fire a sequence of functions. Different composite nodes fire its children in different ways.

Return to the Behavior tree page.

Node Name Node Type Description
sequence Compositenode.png Runs its children from top to bottom in sequence until one of them fails. Returns success if and only if every one of its children also return success.
selector Compositenode.png Runs its children from top to bottom in sequence until one of them succeeds. Returns failure if and only if every one of its children also return failure.
randomize Compositenode.png Picks a random child node and runs it. Returns the result of the chosen node.
dynamic Compositenode.png Runs its children from top to bottom and ignores failures. Once it finds a node that is running, it will wait for the node to stop running, while constantly firing higher nodes every tick. If a higher node starts running at that time, it waits for THAT node to run out. Finally, if a node returns success, the dynamic node stops reading lower nodes and returns success. Else, if all nodes fired and none were successful, it returns failure.
parallel Compositenode.png Accepts 2 arguments: "fail" and "success". By default, both are set to -1. Parallel will run every single child node every single tick (if they are already running, it will restart them). The Parallel node keeps track of when its children have returned success and failure. Whenever the number of successes reaches the "success" argument, the node stops and returns success itself. Similarly, whenever the number of failures reaches the "fail" argument, the node stops and returns failure. When stopping, Parallel will wait for children listed before the last finished child to complete, but stop those listed after. If "fail" or "success" is set to -1, then parallel will stop when every child fails or succeeds respectively. If both "fail" and "success" are set to -1 then parallel will run its children until all of them either fail or succeed.


Quick Navigation