are there any RunService or while true loops that get created whenever a new mob spawns?
You need to call Disconnect() on RunService Connections and call break on while loops that are made everytime a mob spawns (when the mob dies/gets destroyed), or you end up with like a hundred loops running at once, which can easily lag the server.
Well i figured out the issue everyone , So there was a memory leak on the monsters effects, it’s weird bc memory didn’t have any increase but the CPU did ( the Circle part was getting added to " rotating objects " table but i forgot to remove it from the table after it getting destroyed )