Hi everyone, first thread here, so hope I'm not making any mistakes (please point them out if so).
Anyway, after trying out Playmaker for a few weeks, I'm starting to make a full game with Playmaker, and I've been thinking overall on the viability of using nothing but Playmaker for everything.
My game is pretty small so I'm not really worried that it's possible, considering all the games that have done it already. However, what about a more complex title? Say, if I wanted to make a 3D platformer or a 3D sim, how viable does Playmaker become then? Not really asking in terms of functionality (I'd probably have to create custom actions, but that's not the problem), but in terms of performance and optimization.
How viable is it to have dozens (or more) FSMs running simultaneously?
Does it depend on how complex they are?
Is it better to have a few complex FSMs or a bunch of really simple FSMs running?
When do I know there are too many FSMs on the same object/scene?
Will it always be better to use code or is the difference between them negligible (in terms of performance)?
Another question I have is because of one of the first tutorials I watched (I think it was one of the official tutorials), where the guy is talking about Playmaker and FSMs, and he basically explains that there are some cases where it's better not to use it, because coding can do some things better than a state machine. So I'd like to ask, what are those scenarios?
Lastly, just a more practical question, but I'm trying to make the game check whether or not the player is moving in the X axis, but I'm not using a rigidbody (so I can't do a speed check, because it'll always be at 0), and somehow the system I set up doesn't work properly.
I made an FSM that checks the transform.position.x from my player and stores it in a float, and then another FSM with a Float Change action that checks to see if the X is changing and stores that info on a Bool. However when I test it, the bool is constantly changing between True and False, multiple times every frame.
So, what would be a good way to go about doing this? Should I put a small Wait action after every check in the second FSM? Is there a more elegant solution to all this?
That's about it, thanks for the patience.