Okay! I THINK this narrows it down enough to really finish it out!
Here’s the overall:
And here are most of the changed things so you can read more clearly.
We’re getting rid of “OnPerceptionUpdated”. This does get rid of the reset of the timer, because we want it to keep looping until deletion of the actor or other stop reasons. But only going once per second makes this 1/60th of the load that would happen if it were put on “EventTick”.
So this will start on possession of the pawn, and then run every 1.0 second after, and instead of the updated targets (which is only things that have changed) it’s getting everything currently perceived by the AI, then finding the closest! ![]()
Also we keep the “>0” branch to preserve a little resources if there is nothing perceived, it hits the “False” and waits the 1.0s to try again.

