This project started out as a basic python converted written by Nore and dgm555. I've updated the project and have spent a lot of time making the conversion more and more complete ever since. We've merged the two projects into the minetest-tools organization as well.
The conversion is done as a single-step process that requires Python. Once the conversion is done, your world is ready to play! For large worlds, this process can take hours, even days if your world is huge.
Github:https://github.com/minetest-tools/mcimport
Download: https://github.com/minetest-tools/mcimport/archive/master.zip
Platform: Linux (others may work, but require extra software)
License: X11
Usage:
- Download the tarball from here: https://github.com/minetest-tools/mcimport/archive/master.zip
- Extract it
- Launch the converter
Or, to list the exact terminal commands, cut and paste the below text into a terminal:
- Code: Select all
wget https://github.com/sofar/mcimport/archive/master.zip
unzip master.zip
mcimport-master/mcimport.sh
Minecraft Test Patterns:
Converted Result:
I'm doing things a bit differently though - my focus isn't to "copy exact", but to create a playable, approximation of the MC world.
So I expect that things like doors, beds, furnaces just work, and blocks are useful and usable. But blocks that have no purpose or don't exist in minetest are removed or replaced with equivalents that make sense in MT gameplay. Rotation of blocks is carefully done and verified.
- emerald ore is converted to stone
- redstone is as much possible converted to mese, with working pressure plates, wires, noteblocks, buttons, levers and a few more things
When you convert a MC savegame or world, it's expected to be in MC 1.11 format. I'm not supporting old formats. The code also writes a few extra files needed to make it all play nice with mapgen, mainly fixing the waterlevel and allowing you to tweak mapgen to single node easily. Note: The map now correctly leaves North in MC as North in MT (effectively changing coordinates for Every Block).
Mods: lots of mods required - none strange or obtuse, or hard to find mods, these are all very COMMON mods that most servers have, and most of them are contained within biomes_lib, plantlife, mesecons, moretrees, moreblocks, nether, flowerpot and nether mods already (and a few others on top of that). A script exists to help you download all the needed mods.
The converter creates all the required config files in the world folder, and the world should be playable without any extra configuration afterwards. You may however wish to tweak the mapgen parameters before loading the world for the first time in the minetest game. Currently, all mapgen will be disabled to prevent overwriting of the world content by mapgen.
To download all the required mods, a script is written in the world folder called get-mods.sh. Running this script will automatically get the correct mods and their latest versions for your converted world.
Fixerol wrote:Basically they are those mods:
Biomes_lib - viewtopic.php?f=11&t=12999
Plantlife - viewtopic.php?f=11&t=3898
Home Decor - viewtopic.php?f=11&t=2041
Mesecons - viewtopic.php?f=11&t=628
Moreblocks - viewtopic.php?id=509
Nether* - viewtopic.php?f=11&t=5790
Quartz - viewtopic.php?f=11&t=5682
I have a forked Nether mod in my github to add various nether brick blocks, but not very many people seem to be converting nether worlds, so you'll likely be fine without that.
You do not need to modify world.mt since the code writes out a perfectly usable version with the mod list. You just need to download these mods and install them in your mods folder. Please use the provided get-mods.sh script for this purpose - you'll find it in the written world folder.
Conversion can be slow! A 6000x6000 MC world on my system takes ~ 8 hours. Even my test map (500x500 nodes) takes 2 minutes or so without pruning the map.
This program requires Zenity and Python3. These are widely available for Linux in most distributions, but may not be available on other platforms.