Change Log

v1.3 (2018-05-07)

New features & improvements

  • OnExit() notifications get as a parameter the name of the event that caused a transition. The name is ‘None’ if a sub-FSM was aborted due to a parent FSM transition. The name is an internal identifier if the transition was triggered by a timeout; you can get the internal name with the function GetTimeOutEventName().
  • C++ breaking change: the OnExit() virtual function of class UGCFSMState has changed signature to include the event parameter. Subclasses that override this function will need to be modified.
  • The objects returned by GetActiveFSMState() now have a GetStateName() accessor to get the name of the node in the FSM
  • The objects returned by GetActiveFSMState() that refer to local states have a GetGraphName() accessor to get the name of the graph that implements the state
  • Added function IsFSMRunning to check if a specific FSM is currently running

Bug fixes

  • Fixed a bug that prevented the execution of local states notification handlers
  • Fixed editor glitches when the implementation graph of a local state is deleted by the user
  • The name of a local state node should default to the graph name, if selected

v1.2 (2018-04-27)

New features & improvements

  • Local States: you can now provide the implentation (OnEnter/OnTick/OnExit functions) of a state right in the event graph of the object that runs the FSM. Not only you don’t need to define a separate blueprint class, but the state logic can now interact directly with the context object without using the Context variable. In particular, this also allows the state logic to interact with Timelines, that only live in the event graphs of their actor. (Kudos to Frederick Desimpel for suggesting the feature.)
  • Visual Logger messages have been re-designed and now include the names of the states, if provided, for ease of debugging
  • The default list of transition events in state nodes is now customizable in Project Settings/Plugin/GC FSM.

Bug fixes

  • Fixed a crash that could occur when a state node had an unconnected transition pin and the FSM receives a matching event. With this fix the event will be ignored and a warning will be emitted at compilation time.
  • Right-clicking on a state node should not open the “Create State Class” dialog

v1.1 (2018-04-14)

New features & improvements

  • Added support for Unreal 4.18
  • Added blueprint nodes to pause and resume the execution of all FSMs of a context object
  • Added blueprint nodes to make the FSMs of a context object run even if the game is paused
  • Added behaviour tree integration

v1.0 (2018-03-29)

Initial version.