Stack-Based Hierarchical Finite State Machine (C++ & Blueprint)

A Finite State Machine allows you to create clean, maintainable ‘non-spaghettified’ code. With a stack-based hierarchical implementation, you are able to stack multiple states and remember what state you were in while having greater control in each state.

Category:
Tags: , , , , , , , , , , , ,

Description

Declutter your Blueprint and C++ code with a stack-based finite state machine!

FSM is the base class for components that define a reusable Finite State Machine behaviour for all types of Actors.

It is an abstract machine that is more complex than a regular state machine and can only be in one state at any given time.

This FSM can change from one state to another using the pushdown automaton (Push and Pop) system. An added benefit for remembering what state the machine was in.

You can also get access to the private source code repository on GitHub after purchasing this plugin! Just send me an email of the receipt that you purchased this plugin and your GitHub username to elsaleh78@gmail.com, then I’ll add you to the repo and give you access!

Networking features implemented by: Arkanoid

Support Discord Server: https://discord.gg/jVw7YAr

Demo video: https://youtu.be/bhlBp_fCYbw

Demo build: https://drive.google.com/open?id=10xsqqChdPLzcT2K5b7cNlv_g8sbkV8Bb

Offline Docs: https://drive.google.com/file/d/1gKNLq0ZsHzgIyDBqQ5CdOiGGUszkluVF/view?usp=sharing

Technical Details

Code Modules:

Number of Blueprints: 0

Number of C++ Classes: 2

Network Replicated: Yes

Supported Development & Target Build Platforms: Win64, Win32, MacOS, Linux, Android, IOS, PS4, XboxOne, Switch

Documentation: alielsaleh.com/ue4-plugins/stack-based-fsm-docs

Guide: alielsaleh.com/ue4-plugins/stack-based-fsm-guide

Important/Additional Notes:

Supported Engine Versions

4.22 – 4.27, 5.0 – 5.1