Ultimate State machine character controller architecture

@electr1on
It seems you character behaves differently given in the situation (On ground, In air, in water, in vehicule) : Behaviour Trees are inherently hierarchical. This come as handy for organizing your behaviors when they become more and more complex. It would be difficult or lengthy to both explain BT and help you implementing your character here.

If you want to know more about Behaviour Tree, here is a 5 minutes introduction:

There are several Behaviour Tree packages on the Asset Store. I am the author of Panda BT, if you have questions about implementing your character using Panda BT or general questions about Behaviour Tree, you are welcome to ask them on this thread .