RocketLib Mapshrink (alpha)

Post Reply
User avatar
sorcerykid
Member
Posts: 1841
Joined: Fri Aug 26, 2016 15:36
GitHub: sorcerykid
In-game: Nemo
Location: Illinois, USA

RocketLib Mapshrink (alpha)

by sorcerykid » Post

RocketLib Mapshrink v0.1

The Mapshrink utility is part of the RocketLib Toolkit, providing command-line scripts for dramatically reducing the size of map.sqlite databases in a much more reliable and controlled manner compared to other tools.

It accomplishes this by regenerating the map as a whole, and then comparing the resulting map.sqlite database (the render) against the original map.sqlite database (the master) on a per-mapblock basis. Any mapblocks that differ are assumed to be manipulated by a player or a script, and therefore the entire mapchunk is flagged for preservation. Finally, all remaining mapchunks are removed, including orphaned shell mapblocks.

Keep in mind the algorithm required for this to work is actually far more elaborate due to the myriad of edge cases involving map generation, but at least it gives an overview of the process.

Since other tools remove only individual mapblocks, this often leads to "griefing" as the corresponding mapchunks are regenerated, causing rivers and trees to be placed into the middle of existing builds. By instead removing mapchunks in their entirety, such griefing can be avoided.

This is a placeholder topic, as the Mapshrink utility is still in the alpha stage of development. Stay tuned for updates!

Source Code License:

The MIT License

Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests