Exactly this.AFADoomer wrote:Even if they're not visible (like when DistanceCheck keeps an actor from rendering), the actor is still present, and all of the internal actor mechanics are still firing, and that's what causes processing delay.
At 8000+ actors, this is what will get you - every single time.
One thing you might try is put enemies to sleep if they are more than 5000 units away from the player. In the spawn state, do a distance check since it's relatively uncostly, and just have the actor sit in a single frame for 70 tics and then check again before reverting back to its spawn state. Don't even A_Look when they're far away.
Doing a distance check every 70 frames is a LOT easier on the CPU than doing A_Look every 8-16-ish frames. Especially if you number your enemies in the thousands.
Plus - there's absolutely no reason for any of them to be active in the cinematic intro, except the ones that are actually in the cinematic itself.
This will have to be applied to every single enemy to be effective, though...