I see two other postings on this that were ‘resolved’.
The problem I see is that in a behavior tree a Service with it’s interval is tied to the child task speeds.
In this setup…
If the Test Service interval is less than the timing of the child tasks (Delay then Bored) it appears to work, but the
beginning of the scan ( detected with a Receive Search Start ) resets the interval timer of the service. This is very counter intuitive and als useless for services with long intervals.
It should be that if the blackboard check is ok, the Service gets called on the interval regardless of the timing or frequency of the child Wait and Bored tasks. (Yes Zombies get bored, lol)
To be clear, if TestService has an interval of 2 sec. and the child Wait is 10 seconds it works fine.
If the child process Wait is 2 sec. and the TestService interval is 10 seconds, the TestService never gets a tick.