State persistence object for the behavior tree
Allows for state to be stored between subsequent, sequential calls of a
single action node. If the executed action node changes between ticks, then
the state should be considered lost.
PID controllers (Proportional–integral–derivative controllers) are used for
automatically adapting nonlinear controls (like buoyancy for balloons)
and for damping out oscillations in control feedback loops (like vehicle
cruise control). PID controllers can monitor an error signal between a
setpoint and a process variable, and use that error to adjust a control
variable. A PID controller can only control one variable at a time.
A time used for managing agent-related timeouts. The timer is designed to
keep track of the start of any number of previous actions. However,
starting/progressing an action will end previous actions. Therefore, the
timer should be used for actions that are mutually-exclusive.