I think it would be intuitive if the whole higher priority tree under dynamic would be reevaluated. Right now I am getting some behavior I have hard time predicting… Pics will explain better.
The Dynamic option will make the node Dynamic only in the scope of it’s own children. If you wanted child nodes to be Dynamic as well, you should mark them Dynamic too and then the whole thing will work recursively 🙂
To be more exact, when a Seqencer or Selector for example is dynamic, it means that it will revaluate each lower priority child on every tick and that child will do it’s work. If that child is also dynamic it will revaluate it’s own lower priority children every tick and so on.
So in your example, leaving the middle Selector non dynamic simply means that it will not revaluate the child Sequencer (left) when the “Coose Target” Selector is Running.
right, except my tree behaves exactly the same regardless of whether that middle selector is dynamic or not… But I went ahead and recreated similar situation on a simple behavior tree and it works as you described, which means that I am not accounting for something in the original tree myself… which is fine, I will figure it out! 😀
Thanks for you help! your customer service is a legend.
You are most than welcome. Thanks! 🙂
Yeah your tree might behave the same, because the “Choose Target” branch does not have any actions that is taking some time. It realy depends on the design, but this whole “Dynamic” thing is for when there are actions that should be interrupted due to higher priorty conditional changes. Basicaly 🙂
If I can somehow clarify more, let me know
Cheers!
Join us on Discord: https://discord.gg/97q2Rjh
Author
Posts
Viewing 4 posts - 1 through 4 (of 4 total)
You must be logged in to reply to this topic.
Login
Register
By registering on this website you agree to our Privacy Policy.