Xbox Task Executions Per Tick

Quasimodem

New member
Hello, I'm currently in the middle of getting BehaviorDesigner running on the Xbox One. I have my BehaviorManager set to Manual update (with a Max Execution Count of 1000) so I can have explicit control over the update order.

For the most part, things are working correctly, however, any behavior that I have set to RestartOnComplete causes my log to fill with the following warning:

Behavior: More than the specified number of task executions per tick (1000) have executed, returning early.

Have I missed some setting or build option I should enable to clear this up? None of the behaviors having this problem have more than a few actions in them (although they do restart on complete). Thanks in advance for any help!
 
Can you get that error to appear in the editor as well? It looks like when Restart When Complete is enabled the tree keeps cycling through all of the tasks.
 
No, I haven't been able to repro in the editor, or in a smaller test project running on the Xbox. It seems to only occur if the BehaviorTree returns failure. Scratch that, it seems to occur regardless of success of failure.

Is it possible something changed between 1.6.1 and 1.6.2 related to this? My small test project is running 1.6.2 and I do not see the error, where as my main project is on 1.6.1 where the problem does occur. Of course there are also lots of other differences between the 2 environments that I'm continuing to explore.
 
After much trial-and-error, I think I've figured out the problem. Apparently I needed to just touch BehaviorManager.instance somewhere early in my application's startup, before any BehaviorTrees need to tick. If my first usage of BehaviorManger.instance is BehaviorManager.instance.Tick(tree), then things go sideways.

I'm guessing this actually instantiates the BehaviorManager for the first time and guarantees it's ready to go by the time my behaviors need to run. I still have no insight as to why this would lead to the errors I was seeing, but here we are. A very mysterious thing, this IL2CPP!
 
Hmm.. that is an odd one. It's also strange that it only occurs on the Xbox. I'm glad that you got it figured out though!
 
Top