GameMaker (2.3)
Icon

TrueState

Pixelated Pope

You must be logged in to obtain assets

Description

End of Support Announcement (Oct 2nd, 2023) As I've been taking a step back from Game Dev over the course of the last year, I've finally decided it's time to cease formal updates on my assets. They will now be free to use, but will receive no further features, bug fixes, or any changes at all. Enjoy them for as long as they continue to work in GM, and thanks for all the support over the years.

TrueState is a robust finite state machine to help you organize and control even the most complex of objects. From something as simple as a door that can be open and closed, to the most complex action platforming hero, anything is possible with TrueState!

Features

Easy-ish to use
Control any number of events from a single script resource
Always know how long you've been in any one state
Run code when a state starts or ends
State history provides easy access to previous states
Setup attack combos and special abilities easier than ever
Plus all the benefits of using a Finite State Machine in the first place, like more organized code and easier debugging

How to use

Check out the documentation in the link below for how to get started with TrueState!

DOCUMENTATION

Wall tile art created by @GrogDev you are free to use in your own game!
Character art created by Rvos - https://rvros.itch.io/

End User Licence Agreement (EULA).

Age Rating: 4+

Versions

GMS2 - Version 2.0.0. Published February 17, 2020

Renamed many internal variables. (Don't recommend updating existing projects to 2.0) Changed state_var[] from an array to state_vars[?] ds map. Added two new possible state arguments (in addition to step and draw). We now have NEW and FINAL, which will run at the beginning and ending of a state respectively.

GMS2.3 - Version 3.1.0. Published August 25, 2022

Major update to provide different ways to define states. Please read the documentation for more details.

Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait