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
This example shows how to apply the State machine programming pattern in GDscript, including Hierarchical States, and a pushdown automaton.Language: GDScriptRenderer: GLES 2States are common in games. You can use the pattern to:1. Separate each behavior and transitions between behaviors, thus make scripts shorter and easier to manage2. Respect the Single Responsibility Principle. Each State object represents one action3. Improve your code's structure. Look at the scene tree and FileSystem tab: without looking at the code, you'll know what the Player can or cannot do.
Hierarchical Finite State Machine
This example shows how to apply the State machine programming pattern in GDscript, including Hierarchical States, and a pushdown automaton.
Language: GDScript
Renderer: GLES 2
Check out this demo on the asset library: https://godotengine.org/asset-library/asset/516
Why use a state machine
States are common in games. You can use the pattern to:
Separate each behavior and transitions between behaviors, thus make scripts shorter and easier to manage.
Respect the Single Responsibility Principle. Each State object represents one action.
Improve your code's structure. Look at the scene tree and FileSystem tab: without looking at the code, you'll know what the Player can or cannot do.
You can read more about States in the excellent Game Programming Patterns ebook.
Screenshots
This example shows how to apply the State machine programming pattern in GDscript, including Hierarchical States, and a pushdown automaton.
Language: GDScript
Renderer: GLES 2
States are common in games. You can use the pattern to:
1. Separate each behavior and transitions between behaviors, thus make scripts shorter and easier to manage
2. Respect the Single Responsibility Principle. Each State object represents one action
3. Improve your code's structure. Look at the scene tree and FileSystem tab: without looking at the code, you'll know what the Player can or cannot do.
Reviews
Quick Information
This example shows how to apply the State machine programming pattern in GDscript, including Hierarchical States, and a pushdown automaton.Language: GDScriptRenderer: GLES 2States are common in games. You can use the pattern to:1. Separate each behavior and transitions between behaviors, thus make scripts shorter and easier to manage2. Respect the Single Responsibility Principle. Each State object represents one action3. Improve your code's structure. Look at the scene tree and FileSystem tab: without looking at the code, you'll know what the Player can or cannot do.