EwyBoy / World-Stripper

Strips away blocks to reveal the underground world gen. A must have tool for all map-makers, pack-makers or developers.
https://www.curseforge.com/minecraft/mc-mods/world-stripper
MIT License
13 stars 3 forks source link

[Feature] Kill all mobs / entities within the radius of the strip #28

Open OrdinatorStouff opened 1 year ago

OrdinatorStouff commented 1 year ago

Is your feature request related to a problem? Deletion is slow. Killing ALL entities speeds stripping substantially

Describe the solution you'd like Perhaps during "stripping" you can suspend any/all processing of entities. Like all AI, pathfinding, etc. Not sure what can be "paused" for item entities. Alternatively, you could just void all non-player loaded entities but that'd be extremely destructive and only useful for debugging/testing (which is all I use this mod for anyway)

Describe alternatives you've considered I use /tp @e[type=!player] ~ ~-999 ~ to "kill" all entities (tping to void also voids mod drops so I don't need to run this twice to cleanup the drops from a /kill command)

Additional context I have the deletion range set to 100-by-100 and on a fresh loaded world of a large 1.20.1 pack stripping took ~21 seconds. I then /spreadplayers to a new random location and killed entities and ran again, this time it only took ~14 seconds. Here's a video of this test: https://streamable.com/igefns

Note: the effect doesn't seem so bad here on the fresh world (33% decrease) but in other testing I've done on a more established world, the difference was much more noticeable. The same 100x100 would take over a minute, and after killing entities it was more like 10-15 secs.

EwyBoy commented 1 year ago

A solution would be to wipe all mobs within the radius the world will be stripped. Adding this to my todo list for the next update.

Thank you