Install Asset
Install via Godot
To maintain one source of truth, Godot Asset Library is just a mirror of the old asset library so you can download directly on Godot via the integrated asset library browser

Quick Information

uState is a barebones Finite State Machine (FSM) plugin that introduces two lightweight, powerful nodes for managing stateful logic in your projects.Ideal for those looking for a minimal and flexible approach to FSM implementation, uState provides the fundamental tools needed to build and manage behavioral states through visual node-based logic.
π§ uState
uState is a barebones Finite State Machine (FSM) plugin that introduces two lightweight, powerful nodes for managing stateful logic in your projects.
Ideal for those looking for a minimal and flexible approach to FSM implementation, uState provides the fundamental tools needed to build and manage behavioral states through visual node-based logic.
βοΈ Nodes Overview
π§© uState
The uState
node represents a single, reusable state template. It's the foundational block used by the uMachine
node to define specific behaviors.
- Encapsulates logic that executes when the state is active.
- Can be customized to represent unique behaviors or actions in your state machine.
π§ uMachine
The uMachine
node is the state machine controller. It handles the transition between different uState
nodes based on your logic.
β οΈ Important: A
uMachine
must include at least oneuState
node to function properly.
- Manages state transitions.
- Coordinates which
uState
is currently active. - Can evaluate conditions or triggers to switch states.
π Getting Started
- Install the plugin into your project.
- Install the plugin from the Asset Library or by downloading the
.zip
from the repository. - Add a
uMachine
node anduState
nodes as children. - Create scripts that extend
uState
and drag them onto youruState
nodes. (I recomend making a different base_state.gd for different enities. Example included in the plugin) - To transition to a new
uState
, in your script (eg. IdleState.gd) use the built in methodtransition_to(new_state: StringName)
. (Note that the value passed will automatically be converted to all lowecase.)
π Features
- π§Ό Minimal, clean FSM design
- π§± Modular
uState
templates for reusability - π Controlled state transitions via
uMachine
- π οΈ Easy integration with node-based environments
π License
This project is open-source and available under the MIT License.
π Contributions
Feel free to fork, submit pull requests, or suggest features and improvements!
Happy statemachining! π
uState is a barebones Finite State Machine (FSM) plugin that introduces two lightweight, powerful nodes for managing stateful logic in your projects.
Ideal for those looking for a minimal and flexible approach to FSM implementation, uState provides the fundamental tools needed to build and manage behavioral states through visual node-based logic.
Reviews
Quick Information

uState is a barebones Finite State Machine (FSM) plugin that introduces two lightweight, powerful nodes for managing stateful logic in your projects.Ideal for those looking for a minimal and flexible approach to FSM implementation, uState provides the fundamental tools needed to build and manage behavioral states through visual node-based logic.