StateTree Integration

Documentation Unreal Engine AI StateTree

Guide to StateTree tasks, structure, and integration with the combat system.


Available StateTree Tasks

TaskPurposeWhen to Use
STTask_BuildDecisionContextGathers combat dataEvery tick in root state
STTask_AIMovementEvaluates and applies movementEvery tick in root state
STTask_PollActionScores and selects actionOn entering decision state
STTask_DoActionExecutes chosen actionOn entering execute state
STTask_UpdateActionSetSwaps ActionSetWhen changing AI behavior

Typical StateTree Structure

Root (Always Active)
├─ BuildDecisionContext [Tick]
├─ AIMovement [Tick]
│
├─ Idle State
│  └─ Transition → Combat (when target acquired)
│
└─ Combat State
   ├─ Decision State
   │  ├─ PollAction [Enter]
   │  └─ Transition → Execute (when action chosen)
   │
   └─ Execute State
      ├─ DoAction [Enter]
      └─ Transition → Decision (when complete)

Task Details

STTask_BuildDecisionContext

Inputs:

  • TargetActor (Object)

Outputs:

  • DecisionContext (FDecisionContext struct)

What it does:

  • Calculates distance and angle to target
  • Checks line of sight
  • Evaluates health percentages
  • Gathers gameplay tags from target

STTask_PollAction

Inputs:

  • Context (FDecisionContext)

Outputs:

  • ChosenAction (FChosenAction)

What it does:

  • Scores all actions in ActionSet
  • Applies range evaluations
  • Checks cooldowns
  • Selects best valid action

STTask_DoAction

Inputs:

  • ChosenAction (FChosenAction)
  • TargetActor (Object)
  • WaitForCompletion (bool)

What it does:

  • If Ability: Activates via ASC
  • If BT: Runs behavior tree sequence
  • Waits for SEC.Action.End event
  • Completes when action finishes