The Gameplay Abilities System documentation and the examples in Lyra are really interesting. I am very curious if the experts on the system would recommend it for multi-stage player abilities like: holding a melee attack before releasing it, drawing/aiming/holding a bow shot before releasing it, cancelling an in-progress or held attack into a block, etc.
My instinct is to put all of these player interactions into a finite state machine with transitions that capture player input, timing, and the context rules for what player activity can lead to which others. Maybe there is a way to approach this with GAS that is even more extensible and easy to understand than the FSM? Any feedback greatly appreciated.