Documentation

Learn how to use NodeCanvas

Download PDF Version

FSM Node Reference

Action State

The Action State node itself holds an Action List. On Enter, the assigned actions will execute either in parallel or in order one after the other. This can be set in the inspector. The State is considered finished as soon as all actions are finished if at all. In Play mode the running actions will be marked with a play icon in front of them.

  • OnEnter: All Actions listed will Execute (OnExecute)
  • OnExit: All Actions listed will Stop (OnStop)
  • Finished: When all Actions listed have Ended (EndAction)

You can select wether or not you want listed actions to Repeat by checking the “Repeat State Actions”.
You can also set if you want to listed actions to Run In Sequence or Run In Parallel by the relevant GUI control underneath the action list.

Any State

The Any State node is used to transition from Any State to any other based on a Condition. It can have any number of Transitions that are constantely checked. If any Transition’s Condition becomes true the current State of the FSM (whatever that is) will Exit and the target one of the AnyState transition will Enter.

You can mark “Don’t Reenter Active States”, to prevent the Any State from transitioning to a state that is already active.

Concurrent State

The Concurrent State node will execute as soon as the FSM is started and in parallel to any other state. This is not a state per-se and as such it has neither incomming nor outgoing transitions. This state’s actions will stop as soon as the FSM is finished.

  • OnEnter: All Actions listed will Execute (OnExecute)
  • OnExit: All Actions listed will Stop (OnStop)
  • Finished: When all Actions listed have Ended (EndAction)

Nested Behaviour Tree

The Nested Behaviour Tree node is assigned a whole Behaviour Tree. On Enter, the Behaviour Tree will be executed either once or forever based on the chosen setting in the inspector. If set to Run Once this state will finish as soon as one Behaviour Tree cycle is done.

You can optionaly specify two events to be send, one for when the nested Behaviour Tree’s root node status returns Success and another for when it returns Failure. As soon as either happen, the event will be send. Use the Check Event Condition on this node’s transitions to make use of that event.

Nested BehaviourTree States, are very powerful, since you can have the broad states at a top level of the behaviour and at each state go deeper to define the behaviour of the state using Behaviour Trees!

  • OnEnter: The Behaviour Tree will Start
  • OnExit: The Behaviour Tree will Stop
  • Finished: When the Behaviour Tree is done

When this FSM is paused the Nested Behaviour Tree will also get paused if this node is the current FSM state.

The target Behaviour Tree of the Nested Behaviour Tree node, can be linked to a blackboard variable!

Nested FSM

The Nested FSM is assigned another entire FSM. On Enter, that FSM will execute. This State will be finished when and if the nested FSM is finished. Of course if a Transition’s Condition is true, the Transition will take place and this state will Exit as normal. Thus with Nested FSM state you are able to create the so called Hierarchical FSMs.

  • OnEnter: The FSM will Start
  • OnExit: The FSM will Stop
  • Finished: Never unless the nested FSM stops somehow

When this FSM is paused the Nested FSM will also get’s paused if this node is the current FSM state.

The target FSM of the Nested FSM node, can be linked to a blackboard variable!

Yes No Suggest edit
6 of 6 users found this section helpful
Suggest Edit