Everything you’re showing me is acting as expected. So 3 things:
- You’re using a Sequence > Selector combo off your Root. This is a bit unusual. While this can work, without any safety checks or default responses, it can lead to entire BT failing. If every child of Selector fails, Selector fails and progression moves back up to Sequence. Then, because Sequence’s child failed, Sequence fails back up to Root. None of this will fire again. If you instead use a Selector with Service off Root, and 4 Sequences (each running desired Task), you’ll have a safer method because it will continue attempting to run Sequences.
- Your Service isn’t set to call Tick when it is activated. Adjust this and your setup will work (though I would still recommend adding more default checks and adjusting your Selector and Sequence order)
- Your Selector is set to fail in any case in which AttackMode is not set to one of those 4 values. This is avoided by adding Wait node as you noted, but a different option (that wouldn’t require any sort of waiting) would be to have a fifth option that fires when AttackMode Is Equal To None.
Hope that helps! Looks like this isn’t a bug but an order of operations and sequence of BT nodes problem. Let me know if I’m missing anything to think otherwise. Thanks!