Best Practice: Wait / Repeat tasks with Conditional Aborts

WildStyle

New member
Hello,

Having a bit of trouble understanding best practices when working with Wait / Repeat tasks, as relates to Conditional Aborts.

Example being - sibling tree nodes that re-evaluate using Conditional Aborts (Lower Priority), then cancel tasks that have Wait / Repeat tasks downstream right? So how to keep re-evaluating and not interrupt the Wait / Repeat tasks further down the sibling's hierarchy once that logic is reached?

At the moment I removed the Conditional Aborts from the top level siblings, re-ordered the nodes in priority (left to right), also removing the Idle task, last sibling node on right. It works just fine, however I'm not sure I'm doing things in the best way? As now all the sibling nodes are re-evaluated each turn, vs. being able to have an Idle task, last sibling node on right and use the Conditional Aborts to keep re-checking for changed logic.

I can add a screenshot if this explanation is not clear.. please let me know!

// WildStyle
 

Justin

Administrator
Staff member
sibling tree nodes that re-evaluate using Conditional Aborts (Lower Priority), then cancel tasks that have Wait / Repeat tasks downstream right? So how to keep re-evaluating and not interrupt the Wait / Repeat tasks further down the sibling's hierarchy once that logic is reached?
That's correct.. there is no way for another task to stop a conditional abort from occurring if the conditions are satisfied so the wait/repeater will be aborted. If you don't want it to be aborted then you should place it at a higher level within the tree, similar to the video in this tree:


Ultimately if your tree is working though then that is great - similar to programming, with behavior trees there are many ways to accomplish the same tasks.
 
Top