EmptyChunkRemover
About
This Pocketmine-MP plugin removes all the empty chunks from your world, reducing world size and read/writes to disc. Along with reducing cpu usage on world load , improving performance , reducing lag.
When to use?
-
Using in-memory world provider
-
Having large maps of skyblock, bedwars, etc gamemodes (void worlds)
-
After importing/converting java or pc worlds to bedrock (mc bedrock and java by default saves empty chunks, increasing world size whereas pmmp does not)
-
Storing worlds on a remote server
Performance
Took 24.6 secs to convert a world having a total of 10152 chunks out of which 9872 chunks were empty (Remaning chunks: 280) World size reduced from 1.62MB to 265KB
Took 1.8 secs to convert a world having total 1057 chunks out of which 0 were empty
Took 15.7mins to convert a world having total 395478 chunks out of which 377748 chunks were empty (Remaning chunks: 17730) World size reduced from 96.8MB to 19MB
Took 7.47mins to convert a world having total 191794 chunks out of which 191336 chunks were empty (Remaning chunks: 458) World size reduced from 40.5MB to 888KB
Above tests were performed on github codespaces (basic)
Please note this is a cpu intensive process
How to use?
-
Just download the .phar file.
-
Upload it to your plugins folder.
-
Upload your worlds to the worlds folder
-
Edit config.yml to your needs
-
Restart the server.
-
Wait for worlds to be converted (might take more time depending on world size)
-
Check plugin_data/EmptyChunkRemover for your converted worlds
Config
Configuration Version
config-version: "1.0"
World names that need to be converted / fixed.
worlds:
- world1
- world2
Todo
-
[] Add threading / async to allow background operations
-
[] Make it developer friendly
-
[] Add estimated time
-
[] Add conversion completion %
Additional Notes
If you encounter any bugs or glitches, please create an issue here.
Any suggestions you may have to improve EmptyChunkRemover are welcome. Feel free to create an issue here.
If you want to contribute to this project, create a pull request here.
Credits
-
Logo by ishmanallenlitchmore
-
Config system by the great imLuckii
-
Plugin by master HGRgamer