The debug mode in Behavior Bricks is a set of features that allows to debug the execution of the Behavior Executor
component attached to your entities. In debug mode you can:
The Behavior Bricks editor enters debug mode automatically when playing a scene in the Unity editor, substituting the Behavior
tab of the Behavior Bricks editor with the Debug
tab, as shown in the Figure:
To watch the execution flow for a particular behavior tree of a given entity in the scene, you must open the behavior tree in the Behavior Bricks editor, and select the entity to debug in the Unity´s Hierarchy
panel. Alternatively, the entity can be selected in the Debug
tab, by first clicking on the Refresh List
button and then clicking on the entity name. The Debug
tab shows a list of the entities in the scene being played which contain a Behavior Executor
component, grouped by the behavior assigned, as shown in the Figure:
Once the behavior and the entity have been selected, the state of each node is depicted by changing the color of its bounding box:
MoveToGameObject
in the Figure)Completed
(IsTargetClose
in the Figure)Failed
Repeat
and Priority Selector
in the Figure)From the Debug
tab is also possible to pause the execution of an entity behavior by clicking on the Pause
button next to the entity name. Keep in mind that the pause will start after it finishes its current task. Once you have pressed the pause button you can either Resume
the behavior or Tick
it so the behavior receives one update call and then return to pause.
It is also possible to pause and resume all the entities that use a given behavior by pressing the corresponding Resume all
or Pause all
button.
In order to see the current values of the blackboard parameters for a concrete behavior of an entity you must:
Hierarchy
panel or in the Debug
tab in the Behavior Bricks Editor (For more information read Debug Tab
Section)In the tab Blackboard
you can see the current value of all blackboard parameters of the open behavior, but if you are only interested in the value of the parameters related to a concrete node you can watch it by selecting the node while having the Node
tab selected.
With this feature you can pause the execution of the game when a node for a concrete behavior tree of a specific entity reach one of the following states:
To add a breakpoint you just need to right click in a node and select Add Breakpoint
:
You can configure what events the breakpoint should be triggered in the Node
tab by marking the desired events.
In case all events are unmarked the breakpoint will be displayed as disabled with a grey color:
Remeber that a breakpoint can only be triggered when: