Hi,
Multiple Fsm is key indeed.
the main thing to understand here is that a given fsm can only have ONE state active at a time. Which means, only one fsm can not run concurrent logics.
Typical example: user input and character animation.
This area is most of the time a butchery because we are trying to do this in one fsm, but that's nearly impossible, because you want to watch the user input and detect what to do with it, and at the same time control the character animation.
Instead, create two fsm. One that watch User input and fires global events to itself. and another fsm ( or multiple) that are responsible for listening to these global events and trigger animations.
for example, you may want to move your character around, AND jump. this is difficult, almost impossible with one fsm. While if each fsm is responsible for one precise task, and the then communicatte via global events, it becomes very powerful and feasible.
Does that make sense?
I would encourage you to study the M2H game samples I ported to Playmaker. this is great source to learn some tricks and see how fsm can communicate together and why it's powerful.
https://hutonggames.fogbugz.com/default.asp?W890bye,
Jean