Open tunbridgep opened 3 years ago
This is unfortunately normal, especially for pb, which for every enemy there are 1-5 other actors that handle hit detection. So your 800 actors end up becoming closer to 4000. There may be some minor optimization, but even then, there are the potential bottlenecks with hardware and the source ports that we cant really mitigate.
This is one of the reasons why we're converting all monsters, decorations and other effects to ZScript. 1000 ZScripted monsters has less performance impact compared to the original Decorate monsters.
i do want to bring up that back in like, GZ 4.1.3 or so, when the zombiemen got overhauled, PA1N wrote the new hitbox spawning system, which dynamically spawns them based on whether the actor is in the players LOS, it worked wonders back then, but around GZ 4.5 or so, something changed engine side that ruined this whole system
this should hopefully have better performance now, especially with the hit detection improvements, but its still something to keep in mind for the future
It's possible that nothing will ever be able to really be done about this, but it seems that maps with 800+ enemies really slow the engine to a crawl, regardless of how many are actually active and regardless of how powerful ones computer is.
Unfortunately, this is becoming a major issue as more and more modern mapsets are frequently including more and more enemies, and it's making them unplayable in Project Brutality.
For reference, launch Lullaby or any other high-end cacoward map from the last 2 years. The game will run at 5-10 FPS maximum and will be completely unplayable.
Could someone investigate a way to potentially make idle enemies more efficient?