Setup:
-
Two NPCs: A and B.
-
Behavior Tree branch (for both NPCs):
-
Sequence with a top decorator: Blackboard condition, Notify On Result Change, Observer Aborts = Lower Priority. All other decorator in this branch has none abort.
-
Inside Sequence:
-
Task T. Task T stops/restarts logic on another NPC (do something,
StopLogic()
,RestartLogic(), do something
). -
Next Task.
-
-
Process:
-
NPC A runs the branch, executes T on NPC B → everything works, the Sequence continues to the Next Task.
-
Later, NPC B runs the same branch to affect another NPC. T runs and succeeds (
FinishExecute(true)
), but the Next Task and following tasks in the Sequence is skipped (ReceiveExecuteAI
never fires).
There’s no BB key changes happen during this process, get rid of the Stop&Restart Logic did solve this problem, any idea what’s going on?