How to completely disable AI actor in every way?

I’ve disabled collisions, disabled the active state, and disabled ticking. I’ve done this for every component of the ai controller and the actor it self… yet there’s still 10 ticks queued (1 for each actor). How in the world do you 100% shut off an actor as if it never existed? Is it impossible? or is reducing it down to 1 tick the best I can do? I’m trying to have a highly optimized actor pool. You’d think UE5 would have a much easier way of just globally shutting something off, but maybe there is a way and I’ve yet to find it.

Hey @Krileon,

To reduce the performance impact of a spawned actor as much as possible and render them essentially inert, you need to do three things, all of which are possible via Blueprint. Set Tick Enabled, Set Collision Enabled, and Set Actor Hidden in Game. If the actor is using a behavior tree, make sure its brain component is disabled or has had Stop Logic run on it while it needs to stop running behavior.

To remove an actor entirely as if it never existed you can use Destroy Actor, though having to destroy and recreate actors constantly may not work for your purposes. Can you give any more information as to what you are trying to achieve?

I hope this information helps!

I’m already doing all of that. It does have a behavior tree and I was calling StopLogic on it in the Actor component, but it wasn’t doing anything and am instead running SetActivate to disable the behavior tree component which seams to work. Yet each actor is still queueing 1 tick.

Where can I make a feature request for this? It’d be insanely useful to have a master toggle for actors that completely shuts them down and all their logic.

Hey Krileon,

You can suggest new features directly on this forum. When making a new post, choose General - Feedback for Unreal Engine as the category and then Feature Request as the optional tag.

The extra tick is absolutely coming from the AI Controller (once deleted in scene the tick goes away despite actor still existing), but I don’t understand why. I’ve already turned off tick, collision, and set it inactive for every component on it that it will allow for. It is a crowd ai controller so maybe it’s the crowd logic per actor that’s still ticking?