Convert (parts of) Minecraft maps to WorldEdit schematics

User avatar
Zombie471
Member
Posts: 13
Joined: Thu Feb 20, 2014 13:20
In-game: Zombie471

by Zombie471 » Post

The command //import doesn't exist? I'm using Minetest 0.4.7

User avatar
Evergreen
Member
Posts: 2135
Joined: Sun Jan 06, 2013 01:22
GitHub: 4Evergreen4
IRC: EvergreenTree
In-game: Evergreen
Location: A forest in the midwest
Contact:

by Evergreen » Post

Zombie471 wrote:The command //import doesn't exist? I'm using Minetest 0.4.7
Wrong topic. This needs to be moved to the worldedit mod topic.
Back from the dead!

User avatar
davi54l
Member
Posts: 16
Joined: Sun Apr 13, 2014 16:21

Re: Convert Minecraft Maps to Minetest WE Schematics

by davi54l » Post

???

User avatar
davi54l
Member
Posts: 16
Joined: Sun Apr 13, 2014 16:21

Re: Convert Minecraft Maps to Minetest WE Schematics

by davi54l » Post

and what makes this dropbox link?

User avatar
Evergreen
Member
Posts: 2135
Joined: Sun Jan 06, 2013 01:22
GitHub: 4Evergreen4
IRC: EvergreenTree
In-game: Evergreen
Location: A forest in the midwest
Contact:

Re: Convert Minecraft Maps to Minetest WE Schematics

by Evergreen » Post

davi54l wrote:and what makes this dropbox link?
Eh, I think you're in the wrong topic.

User avatar
twoelk
Member
Posts: 1398
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

Re: Convert Minecraft Maps to Minetest WE Schematics

by twoelk » Post

davi54l wrote:and what makes this dropbox link?
If the question is how to make this work read the first post:
first post wrote:Download: https://dl.dropboxusercontent.com/u/302 ... weschem.py (Right click then click “Save link as...”)
Put this in MCEdit-folder/filters
where "tomtweschem.py" is a script written in Python
where "MCEdit" is a Program that can read Minecraft worlds/maps
where ".../filters.." is a folder in the MCEdit installation

If the question is what the output file is:

The generated file is in the "*.we" format,
where "*.we" is a Minetest schematic file(ascii) that WorldEdit can import into an existing Minetest world/map

User avatar
davi54l
Member
Posts: 16
Joined: Sun Apr 13, 2014 16:21

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by davi54l » Post

Good idea. Now i can play on Hogwarts map.

User avatar
davi54l
Member
Posts: 16
Joined: Sun Apr 13, 2014 16:21

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by davi54l » Post

How to set position 1?

User avatar
sfan5
Moderator
Posts: 3938
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by sfan5 » Post

davi54l wrote:How to set position 1?
https://github.com/Uberi/Minetest-World ... ds.md#pos1
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

User avatar
davi54l
Member
Posts: 16
Joined: Sun Apr 13, 2014 16:21

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by davi54l » Post

I typed / / pos1 and the block appeared after / brand / load Quidditch and did not show anything

User avatar
sfan5
Moderator
Posts: 3938
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by sfan5 » Post

A beta version of this filter that creates .mts schematics (faster to import) is now available: https://dl.dropboxusercontent.com/u/302 ... tsschem.py
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

Sokomine
Member
Posts: 4169
Joined: Sun Sep 09, 2012 17:31
GitHub: Sokomine

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by Sokomine » Post

sfan5 wrote: An beta version of this filter that creates .mts schematics (faster to import) is now available: https://dl.dropboxusercontent.com/u/302 ... tsschem.py
Probably also a way to import Minecraft classic maps faster. Just converting them to an .mts file sounds like a good approach. There'll be no trouble with facedir either (Classic has none).
A list of my mods can be found here.

User avatar
shaheerziya
Member
Posts: 51
Joined: Sat Dec 07, 2013 06:57
Location: Pakistan

Re:

by shaheerziya » Post

Evergreen wrote:
Hybrid Dog wrote:great, but mlnecraft doesn't work for me
You don't need minecraft. You only need a world file, MCedit, his filter, and minetest.
It doesnot for me too

User avatar
Evergreen
Member
Posts: 2135
Joined: Sun Jan 06, 2013 01:22
GitHub: 4Evergreen4
IRC: EvergreenTree
In-game: Evergreen
Location: A forest in the midwest
Contact:

Re: Re:

by Evergreen » Post

shaheerziya wrote:
Evergreen wrote:
Hybrid Dog wrote:great, but mlnecraft doesn't work for me
You don't need minecraft. You only need a world file, MCedit, his filter, and minetest.
It doesnot for me too
Like I said, you do not need minecraft. All you need is MCedit and a world file. Also, saying "It doesn't work" is not enough information for us to help you.

User avatar
Michael Eh?
Member
Posts: 391
Joined: Sun Jan 01, 2012 17:21

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by Michael Eh? » Post

having fun just trying to get MCEdit to run... winows version... just pops up then closes. :(

User avatar
Michael Eh?
Member
Posts: 391
Joined: Sun Jan 01, 2012 17:21

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by Michael Eh? » Post

okay, we got MCEdit to work... but the .mts files come up with "unable to load" error. :(

User avatar
sfan5
Moderator
Posts: 3938
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by sfan5 » Post

What does it say in debug.txt?
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

User avatar
Michael Eh?
Member
Posts: 391
Joined: Sun Jan 01, 2012 17:21

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by Michael Eh? » Post

sfan5 wrote:What does it say in debug.txt?
20:07:20: ERROR[ServerThread]: core.deserialize(): ...inetest\minetest-0.4\bin\..\builtin\common\serialize.lua:181: [string "return MTSM"]:1: '<eof>' expected
20:07:20: ERROR[ServerThread]: core.deserialize(): ...inetest\minetest-0.4\bin\..\builtin\common\serialize.lua:181: [string "return MTSM"]:1: '<eof>' expected

running minetest 0.4.10
I had the directory as schema than schems but i changed it.

User avatar
sfan5
Moderator
Posts: 3938
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by sfan5 » Post

You have to use //mtschemplace instead of //load to load .mts files.
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

User avatar
Michael Eh?
Member
Posts: 391
Joined: Sun Jan 01, 2012 17:21

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by Michael Eh? » Post

tried it ... several times. just sits there then the 1 marker disappears. Nothing in debug txt.

I'm just going to wing it a build Big Sight myself.

themtsurvivor
New member
Posts: 9
Joined: Tue Dec 30, 2014 00:37

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by themtsurvivor » Post

I am getting some weird things with tomsweschem.py script in mcedit 1.7.1 and 1.8
screenshot_9951686.png
steel door owned by vanessa
(291.7 KiB) Not downloaded yet
a steel door that says it is owned by vanessa??
....
I have found a fix for this error in the .we files..
using notepad++ just search and replace
{ ["fields"] = { ["infotext"] = "Owned by VanessaEzekowitz", ["doors_owner"] = "VanessaEzekowitz" }
with { ["fields"] = { }
and
doors:door_steel_b_1
doors:door_steel_t_1
with doors:door_steel
in the files in your schems directory.
any ideas?

User avatar
sfan5
Moderator
Posts: 3938
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by sfan5 » Post

themtsurvivor wrote:I am getting some weird things with tomsweschem.py script in mcedit 1.7.1 and 1.8
screenshot_9951686.png
a steel door that says it is owned by vanessa??
....
I have found a fix for this error in the .we files..
using notepad++ just search and replace
{ ["fields"] = { ["infotext"] = "Owned by VanessaEzekowitz", ["doors_owner"] = "VanessaEzekowitz" }
with { ["fields"] = { }
and
doors:door_steel_b_1
doors:door_steel_t_1
with doors:door_steel
in the files in your schems directory.
any ideas?
The tomtweschem.py script does not even use the Lua format of WorldEdit files.
(It uses one of the older format which does not support the metadata that is used for door ownership)
This is not a bug in this script.
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

themtsurvivor
New member
Posts: 9
Joined: Tue Dec 30, 2014 00:37

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by themtsurvivor » Post

Thanks sfan5 for your input, but I still get owned doors.
here is an example of what testing I have done;

Code: Select all

filter a steel door from a 1.8 (theothermine) map using MCEdit_dev-0.1.8build799.win32
=that will create a .we file with default:door_steel_t_1   or _b_1   * 2 pieces y aligned
using minetest 4.11 with mods mesecons,homedecor.stairsplus,worldedit
commands;   
   //pos1
   //load steeldoortest
now with this door just created you cannot break it, it is owned
Attachments
screenshot_166171480.png
(586.3 KiB) Not downloaded yet
screenshot_166164645.png
(682.87 KiB) Not downloaded yet

User avatar
dgm5555
Member
Posts: 245
Joined: Tue Apr 08, 2014 19:45

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by dgm5555 » Post

Someone mentioned a progress bar. This does happen, but is only visible from the terminal the script is run from.
If there's any way of feeding back about the beta script can I suggest adding the following around line 260 (after the output)
print("Nodes will be packed then saved to file")
-- print("Saving file at: %s/%s.mts" % (os.getcwd(), options["Output filename"]))
print("Packing %d nodes", size[0] * size[1] * size[2])

and change
sys.stdout.write(
"\r%0.2f%% done, %d nodes / sec, ETA: %d sec(s) "
to
"\r%0.2f%% packed, %d nodes / sec, ETA: %d sec(s) "

Then finally
sys.stdout.write("\rFinished packing in %0.3f seconds. Saving to file...!" % (end-start,))

Finally curiously and rather off topic. given minecraft (using anvil format) saves blocks in YZX format because it's "the most efficient" (which I would have agreed with - put the axes which will vary the most closer together), why does minetest choose ZYX?

User avatar
dgm5555
Member
Posts: 245
Joined: Tue Apr 08, 2014 19:45

Re: Convert Minecraft maps to Minetest WorldEdit schematics

by dgm5555 » Post

How difficult would it be to make a single step python converter to take a minecraft 1.x world file, extract only the block data, and convert it into an empty minetest world (or place it at eg y=500, so it doesn't get corrupted by regen). Then our tools like worldedit would work, and the toolchain would be drastically reduced.
Worldedit is totally unstable attempting to import any large volumes. The python version of Minetestmapper-numpy can read an entire minetest world in seconds (or worst case minutes). Apparently the c version is even faster, but python is so much easier for most of us to code and we don't have to recompile for every different computer. tomtsschem.py is so incredibly slow (presumably because it's relying on mcedit to access the file, but also possibly because it doesn't follow the minecraft block order, so extraction is very inefficient.
I'm thinking it would be far better to just bypass mcedit entirely.

The minecraft anvil file format is very well documented, so shouldn't be that difficult to extract from. The difficult bit I don't understand it the files seem to have compressed sections within them, and I'm not sure how you'd go about extracting that. Actually mineblend: http://randomsamples.info/project/mineblend/ has python code to extract direct to blender, so would probably be a good start, and there are probably others

Then you could have a simple text-based lookup table to convert from a minecraft block to a minetest one (just as tomtsschem.py does) and resort the blocks into chunks for minetest.

Finally put it directly into a minetest world sqlite file with any header code.

Even if it took all night for a world to convert it would be worth it as it give minetest users access to the thousands of amazing worlds and objects built by minecraft users...
EDIT: I've started a new post on this, as the more I think about it the better the idea seems:
viewtopic.php?f=5&t=11146

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest