i understand your frustration with the behavior tree.
The Blackboard based condition “is set” “not set” … never really worked like i wanted it to.
Now i am using the Behavior Tree kind of as a StateMachine
As you see, each Task gets his own State.
Each State is set in the Service.
You let the Blackboard Based Condition compare the States.
When the State Value changes the Tree changes to the selected State.
No more “is set” conditions or any other. Only the State matters.
You need a lot of States in your Blackboard.
I used Names.
IMPORTANT The Name is not the Value!
Don’t forget to set it!
It set all my States in my AI Controller when at the Start.