A downloadable asset pack

Buy Now$4.00 USD or more

Description: Scene model that can be inherited and adapted for characters of any project in Godot Engine. Include nodes and scripts necessary to establish a state machine in the characters and only focus on the programming of particular characteristics that are based on the system that is already developed

 --> Patreon Acces

To teach developers how this state machine works with the raised scene model, this package includes four character types that encompass popular themes:

  • (https://bakudas.itch.io/generic-run-n-gun) Contra: This is a model capable of shooting frantically in any moment. Being the attack its main action, we can avoid dividing its different states of attack to concentrate it on a general method of the character that can be called at any time.  
  • (https://ansimuz.itch.io/warped-caves) Warped: It resembles some nodes of the first model and includes others to adapt to a certain state.  
  • (https://untiedgames.itch.io/valiant-knight) Knight: Unlike the first models, the knight does not need to be shooting in all directions. In this case, a combos system was developed that can work well for chain attacks.

Depending on the interest in this Asset, updates will be made to add new character models and improvements.

UPDATE: The model of the king from: https://pixel-frog.itch.io/kings-and-pigs. In addition, the operation of the scripts has been improved.

UPDATE 2: New character model for top-down games and script structure for this type of character.

UPDATE 3: Script improvements.

Purchase

Buy Now$4.00 USD or more

In order to download this asset pack you must purchase it at or above the minimum price of $4 USD. You will get access to the following files:

Finite State Machine - Godot Asset V3.zip 5 MB

Development log

Comments

Log in with itch.io to leave a comment.

I bought this to study the code and understand the state machine better, but I fail to see any constants like "max speed" or "gravity" as i've seen in other codes that doesn't use the state machine.. does the state machine use different variables to change the speed and velocity and so forth? or is it hidden somewhere I just didn't look? or is it all just multiplied and divided by the delta value?

I'm sorry If I got anything wrong, I just started programming in Godot.

Hello friend, in addition to "state machine" this package was made to offer predefined character models. The variables regarding speed and gravity, are within the character, this in turn, shares this data to the states they need.

I don't know if my content is useful (because it's in Spanish) but I have a couple of tutorials on the state machine :).

https://indielibre.com/2019/05/07/godot-engine-como-crear-una-maquina-de-estados...

ok cool! I will look into it, thank you. maybe google chrome will help me translate it well enough for me to read it. thank you!

(2 edits)

Got to say I'm bit dissapointed, because I wanted to see some new take on state machine, but it seems to be more or less taken from GDQuest metroidvania project.
There's still a value of pre-set state machines for those 4 game styles although it feels bit sloppy:
Warped game feel is wonky and walljump looks really weird. I've tried Warped and Guneric scenes and they both use UI inputs instead of Left / Right inputs. Please, use WASD for movement primarily because arrow movement seems cheap and unconvinient.
I'd say tweak at least test game feel to feel right then value for this project will be there.

I will add that tells me about the keyboard, however keep in mind that each new project must configure its keyboard, I use the arrows because they are preset by Godot.  The state machine is a design pattern, it is not necessary to change much because so far this way of accommodating the states meets the objective and is good for saving the developer time, unlike other machines I have analyzed.  I appreciate your criticism, soon this asset will be updated with what you ask me and two new models already for Top-down games

(+1)

I'm not new to state machines. I'm just looking for different approaches I could improve mine, which is expanded GDQuest's Node based states.

Oh well, I'm sorry to disappoint you bro :/.

(+1)

No biggie. I'd suggest to tweak the project a bit because value is there, but feels incomplete.