Check out our latest project ✨ OpenChapter.io: free ebooks the way its meant to be πŸ“–

uState

An asset by Umbr4x
The page banner background of a mountain and forest
uState hero image

Quick Information

0 ratings
uState icon image
Umbr4x
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.

Supported Engine Version
4.0
Version String
1.0
License Version
MIT
Support Level
community
Modified Date
3 days ago
Git URL
Issue URL

🧠 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 one uState node to function properly.

  • Manages state transitions.
  • Coordinates which uState is currently active.
  • Can evaluate conditions or triggers to switch states.

πŸš€ Getting Started

  1. Install the plugin into your project.
  2. Install the plugin from the Asset Library or by downloading the .zip from the repository.
  3. Add a uMachine node and uState nodes as children.
  4. Create scripts that extend uState and drag them onto your uState nodes. (I recomend making a different base_state.gd for different enities. Example included in the plugin)
  5. To transition to a new uState, in your script (eg. IdleState.gd) use the built in method transition_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

0 ratings

Your Rating

Headline must be at least 3 characters but not more than 50
Review must be at least 5 characters but not more than 500
Please sign in to add a review

Quick Information

0 ratings
uState icon image
Umbr4x
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.

Supported Engine Version
4.0
Version String
1.0
License Version
MIT
Support Level
community
Modified Date
3 days ago
Git URL
Issue URL

Open Source

Released under the AGPLv3 license

Plug and Play

Browse assets directly from Godot

Community Driven

Created by developers for developers