A Python library for parsing and editing Luanti worlds.
The name comes from Luanti’s former name (‘MT’ for Minetest) and the Minecraft world parsing library ‘anvil’
mtanvil is in alpha, so if you decide to use it then be aware of the following:
Future updates will have breaking changes.
Testing is welcome, please do open an issue if you find any bugs or problems.
Features that are not supported (yet):
- Some node inventories fail to load, such as the furnace in Minetest Game. I am researching this constantly and will have a solution to this very soon.
- Older MapBlock formats (<29) may not load and/or serialize correctly (due to the lack of documentation of the specifics of their zlib compression). This will be fixed soon.
- Older MapBlock formats (<23) will lose node metadata due to the old and new formats not being directly compatible. The conversion will be figured out in the future.
mtanvil fully supports MapBlock format version 29 (latest). Other versions may not be fully supported right now but should receive full support in the future.
It is recommended that you familiarize yourself with the Map File Format and MapBlock Serialization Format so that you fully understand what data mtanvil provides.
Install mtanvil by running
pip install mtanvil
in your terminal.
You can find the comprehensive mtanvil docs here.
Please do open an issue if you find that something has not been documented properly.