@BradyHenry

couldn't be more perfect timing on this video

@godotgamelab

It's such a great video, top-quality content as always. I especially appreciate providing the text-based version.
It must be a ton of work to design, write and edit this kind of content.

I just wanted to let you know that you actually inspired me to start my own tutorial channel! :)
Keep up the good work. Cheers!

@clray123

Re concurrent/competing states: the mathematical/geometric abstraction for that would be a multi-dimensional state space in which every allowed is represented by a point. A state transition is then like jumping from one point in that space to another - where some transitions are allowed and some aren't (the single state machine can be thought of as a one-dimensional number axis - note that distance between the points does not really play any role here, except maybe for aesthetics). If the dimensions/coordinates are "orthogonal", meaning that each value on each dimension is possible regardless of the other dimension, it makes sense to implement it as two (or n) state machines (like having a separate value=scalar for each state). But if there are many dependencies, it may make more sense to think of a single state machine instead, which manages a combined state like a point in the state space with n coordinates.

@itisjams

This video is magical. You've just answered all of the state machine related questions I haven't found good answers to in one go, thanks so much!

@SergeofBIBEK

Also we can get closer to interfaces with inheritance (just one layer deep). We define the interface and have every function throw an error. This requires you to implement every function on the interface. No more forgetting to wire up something. Similarly with variables you can force initialization of them with overridable setters that error by default or with a validation function on get.

@constellationsloth

This video answered all the questions and gripes I had about each state having to duplicate logic when deciding which state to go to. Thank you

@ChapC_Creates

Helped me out big time 🙏Gonna give you an extra shoutout in my next devlog.

@draicor

I came to learn about state machines, now I have the knowledge to split my code into nodes that just hold logic and data and just inject other nodes if i need to, time to refactor my code lol, thanks, great vid!

@TheOpenWastes

Thanks so much for this. It took me three days to wrap my head around state machines, but thanks to your videos and downloadable examples, I've got state machines handling characters' actions in the game I'm working on

@Tubulin_

Your videos on state machine are great! Would love further videos delving into the topic of state machines!

@simon_scharlachrot

clear and concise, thanks!

@Zane_2029

Exactly what I was waiting for, right on time too. Was just about to start a Game Dev session.

@Chaff_Games

I've been working on an FPS template for ages and I use a concurrent state machine. A state machine that's just dedicated to movement and another to controlling the active weapon, shooting ect.

@starblinky4091

Answered some of the remaining questions I had about state machines. Thanks!

@finestcustard5647

This is awesome! A lot of this flew over my head as I'm pretty new to game dev, but overall I was still able to follow. I also really appreciate the book recommendations at the end!

@thaocami657

such a great video, thankyou for all the info :O it so much easier to understand now !

@ponderingpermanence8095

Your videos are always a delight, thanks man!

@SergeofBIBEK

This stuff reminds me of the Strategy Pattern and Adapter Pattern. It's like rubbing up against both of them without being them.

I imagine we can use these faux interfaces to define what behavior is available, and adapters to swap out base sets of behaviors. Maybe an input adapter and an AI adapter? Not sure, but gets my brain juices flowing. Same with strategies, we could have move "interfaces" that follow individual pluggable "strategies" for getting their input.

Love this dive into software design patterns. Reminds me of reading the Gang of Four "Design Patterns" over a decade ago in college again. Keep up the awesome videos.

@comradecid

gah - thank you for this video... i've been exhausting myself trying to learn more about godot-specific approaches to solving a number of the issues/challenges you mention here

@dustin4620

This is great, thank you!