StateTree Tools

Ready-made StateTree tools for Unreal Engine 5


Project maintained by StateTreeTools Hosted on GitHub Pages — Theme by mattgraham

StateTree Tools

A plugin for Unreal Engine 5 that extends the StateTree system with ready-made tasks, components, and utilities - so you can build AI and gameplay logic faster without writing custom C++.

Hey you! Enjoying State Tree Tools? Unsure about whether you want to buy? I want to hear from you. Mail support@lunarworkshop.com with questions and suggestions.


Showcase

Examples of what you can build with StateTree Tools - patrol AI, perception-driven behaviour, ability-driven state machines, and more.


Getting Started

Install the plugin, enable it in your project, and set up your first StateTree using StateTree Tools tasks.


Building from Source

Instructions for contributors building the plugin from the source repository, including the one-time environment setup required for UE 5.5 and earlier.


Changelist

User-visible functionality changes are tracked here so readers can quickly see what changed between documentation updates.


Tasks

Tasks run when a state is entered or exited and can keep the state alive while they do work.

Category Description
Actor Find actors in the world
Audio Play and stop sounds on actors
Animation Trigger and control animation montages
Debug Draw debug shapes; flush debug lines and strings
Niagara Spawn and manage Niagara particle systems
Navigation Find random reachable points for patrol and wandering
Enhanced Input Add and remove Enhanced Input mapping contexts
Input Set player controller input modes
UI Create widgets, call widget events, and listen to widget events
Gameplay | Actions Drive async Blueprint logic from a StateTree state
Gameplay | StateTree Send events with typed payloads to StateTree components
Utilities | Events Call Blueprint events and dispatchers on actors by name
Utilities | Properties Set actor and component properties by name
Abilities Activate GAS abilities and send gameplay events
System Quit the application

Property Functions

Requires UE 5.5 or later. Property functions are not available in UE 5.4.

Property functions compute a value each time a binding is evaluated.

Category Description
Components Get root component and other component accessors
Enhanced Input Access Enhanced Input subsystems
Game Access game-level objects such as player controllers
UI Access widget-specific values such as animations
Math | Float Arithmetic, comparisons, trigonometry, and general float math
Math | Vector Vector arithmetic, measurement, and conversion
Utilities String conversion and general value utilities
Call Pure Function Call a BlueprintPure function and expose its return value as a binding
Gameplay Attributes Read GAS float attributes from an actor’s Ability System Component

Conditions

Conditions test a value and return true or false, used in transitions and state selection.

Category Description
Gameplay Tags Check gameplay tag state on an actor’s Ability System Component

Components

Component Description
Perception Event Forwarder Forwards AI perception events into the StateTree event system
Primitive Event Forwarder Forwards primitive component events (overlaps, hits, physics, input) into the StateTree event system
GAS Event Forwarder Forwards GAS gameplay events and tag changes into the StateTree event system