Reply To: BT sequence of actions that starts&restarts when receiving a specific Event

NodeCanvas Forums Support BT sequence of actions that starts&restarts when receiving a specific Event Reply To: BT sequence of actions that starts&restarts when receiving a specific Event

#12408
timv
Participant

Thank you for your message. I do have a couple of questions/remarks about this:

The wording of the Parallel node sounded to me like it will execute all children concurrently. I regularly do parallel programming (in multi-threaded applications), and this seemed a recipe for race conditions. However, looking at the code it seems the evaluation order of the children of Parallel is still left to right, just like other composites. So the difference is that multiple children/branches can be in running state. I think the documentation could be improved a bit here to avoid this confusion.

There are some differences in what I tried to achieve and what your solution does.
* In your example, the $ParallelCondition check is also performed before the action node has started running. The pattern I´m looking for should skip this condition when the actions are not yet running. It should however break off the actions as quickly as possible, so just changing the order of the children of the Parallel node is also not an option.
* Correct me if I´m wrong, but it seems that the action node cannot be reset and restarted in the same BT update using your pattern. In one update the $ParallelCondition and Parralel node will trigger failure. The next update the action may (or may not) trigger again. Unfortunately this doesn’t seem to be an option for me as I’m checking for events that are only there for one frame.

These are the things I was trying to solve with my Reset node. It would be great if you could also have a look at that post.
Thank you for your help!