[Mod] Converter Minecraft world to Minetest world

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

Re: [Mod] Converter Minecraft world to Minetest world

by twoelk » Post

Cavegen where it shouldn't be is an old and long lasting problem. Study this thread among others and view the interesting pictures like this at http://i.imgur.com/ZU3F75t.png where RealBadAngel replaced air with water to make the activities of cafegen in the sky visible.

When placing large schematics it seems advisable to load all the blocks that the structure extends to before loading the schematic file. So you may have to fly around a little before typing the WE commands.

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

twoelk wrote:When placing large schematics it seems advisable to load all the blocks that the structure extends to before loading the schematic file. So you may have to fly around a little before typing the WE commands.
Except with mcimport you never load scematic files or use world edit - the world is fully loaded into the sqlite db before you ever enter it, so also no chance of flying around (and i,ve converted a number of worlds which are over 3000 nodes square so that would be unfeasible anyway)

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

Re: [Mod] Converter Minecraft world to Minetest world

by twoelk » Post

could be related to the issues #1559, #1397, #1274 and googling for "minetest cavegen griefing grieving" will show even more examples.
As I said this annoying bug has been around for a while and whenever it was pronounced fixed it would arise at yet another place and configuration. Maybe some informative pictures or test files to reproduce the effect might be of help for the devs to hunt down this rouge cavegen bug in all it's variations and disguises.

It might be interesting to create a giant solid block of glass in mc and import that into mt to study cavegen and see if it changes at different hights or listens to orders given in the config at all.
Do you do the initiall imports into a singlenode world?

With large WE imports I often had cavegen grieving in the sky and had mudflow add chocolate toppings of mud as well as some icing of sand.

Have a look at what happened to the "justtest" server lately to see massive examples of a mapgen unleashed over and in allready created terrain including cavegen destroying buildings, locked chests and protector blocks.

A way to flag places as not to be touched again and have every part of any mapgen respect that is certainly needed but seems difficult to achieve.

For now using singlenode as mapgen and dissabling cavegen and mudflow is the best we have. Also dissabling liquidflow at import time seems advisable until one has fixed issues that might arise from uncontroled lavaflows, accidental fires and the such.

But then one does want to enable some mapgen in the end and there the gambling begins again. Welcome to the dance with the mighty ever mind changing mapgen.
Last edited by twoelk on Sat Feb 21, 2015 09:49, edited 1 time in total.

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

actually it's quite easy to import all the air as water instead (literally 5 secs to make a change in the conversion blocks). I'll try over the next few days. (I've never played minecraft, and I don't own a copy of it, so I couldn't do your glass suggestion). Can't do currently as computer is in the middle of a 62000 block (~16million nodes) conversion which will take half an hour or so. Nore's code is awesomely fast!!!
I would have thought the 'generated' flag should have stopped mapgen from griefing, but I guess not...

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

Here are some more node definitions which expand the conversion.
I've currently thrown in MCxxx blocks when there is no known converstion, so it will be possible to identify them in an import - I haven't yet figured out how to do this direct in the mcimport code.

The new imports make use of the riesenpilz mod (mushrooms), and mesecons
I'll also add more from the minecraftinfo list when I get a moment
http://www.minecraftinfo.com/idlist.htm

PS Nore: I haven't offered any git pushes yet, as my edits are pretty basic and I'm not sure which are stable, when I'm happy I'll push.

Code: Select all

19	mcsafe:Sponge
21	default:stone_with_copper
22	default:copperblock
23	mcsafe:Dispenser
24	default:sandstonebrick
24	default:sandstone
25	mesecons_noteblock:noteblock
26	mcsafe:Bed
29	mesecons_pistons:piston_sticky_off
30	mcsafe:Cobweb
31	0	default:dry_shrub
31	1	default:grass_4
31	2	default:grass_3
31	99	default:grass_1
33	mesecons_pistons:piston_normal_off
34	mcsafe:PistonHead
36	mcsafe:MC36
39	riesenpilz:brown
40	riesenpilz:red
41	default:goldblock
42	default:steelblock
46	mcsafe:TNT
52	mcsafe:MonsterSpawner
55	mesecons:wire_00000000_off
58	mcsafe:CraftingTbl
64	doors:door_wood_t_1
69	mesecons_walllever:wall_lever_off
70	mesecons_pressureplates:pressure_plate_stone_off
71	doors:door_steel_t_1
72	mesecons_pressureplates:pressure_plate_wood_off
73	default:stone_with_mese
75	mesecons_torch:torch_off
76	mesecons_torch:torch_on
77	mesecons_button:button_off
84	mcsafe:Jukebox
86	mcsafe:Pumpkin
91	mcsafe:JackOLantern
92	mcsafe:Cake
93	mesecons_delayer:delayer_off_1
94	mesecons_delayer:delayer_on_1
95	mcsafe:LockedChest
95	mcsafe:StainedGlass
96	mcsafe:Trapdoor
97	mcsafe:HiddenSilverFish
98	mcsafe:MC98
99	riesenpilz:head_brown
100	riesenpilz:head_brown
101	mcsafe:IronBars
103	mcsafe:Melon
104	mcsafe:PumpkinStem
105	mcsafe:MelonStem
106	mcsafe:Vines
107	mcsafe:FenceGate
111	mcsafe:LilyPad
112	mcsafe:NethrBrick
113	mcsafe:NethrBrickFence
115	mcsafe:NethrWart
116	mcsafe:EnchantTab
117	mcsafe:BrewStnd
118	mcsafe:Cauldron
119	mcsafe:EndPortal
120	mcsafe:EndPortalFrame
121	mcsafe:EndStone
122	mcsafe:DragonEgg
123	mesecons_lightstone_red_off
124	mesecons_lightstone_red_on
125	default:junglewood
125	default:wood
126	stairs:slab_junglewood
126	stairs:slab_wood
127	mcsafe:MC127
128	stairs:stair_sandstone
129	default:stone_with_mese
130	mcsafe:MC130
131	mcsafe:MC131
132	mcsafe:MC132
133	default:mese
134	stairs:stair_wood
135	stairs:stair_wood
136	stairs:stair_junglewood
137	mesecons_commandblock:commandblock_off
138	mcsafe:Beacon
151	mesecons_solarpanel:solar_panel_off
152	default:mese
153	mcsafe:NetherQuartzOre
159	mcsafe:StainedClay
162	mcsafe:Acacia
168	mcsafe:Prismarine
169	mcsafe:SeaLantern
170	mcsafe:HayBale
172	mcsafe:HardenedClay
173	mcsafe:BlockOfCoal
174	mcsafe:PackedIce
179	mcsafe:RedSandstone

139 mcsafe:MC139
140 mcsafe:MC140
141 mcsafe:MC141
142 mcsafe:MC142
143 mcsafe:MC143
144 mcsafe:MC144
145 mcsafe:MC145
146 mcsafe:MC146
147 mcsafe:MC147
148 mcsafe:MC148
149 mcsafe:MC149
150 mcsafe:MC150
154 mcsafe:MC154
155 mcsafe:MC155
156 mcsafe:MC156
157 mcsafe:MC157
158 mcsafe:MC158
160 mcsafe:MC160
161 mcsafe:MC161
163 mcsafe:MC163
164 mcsafe:MC164
165 mcsafe:MC165
166 mcsafe:MC166
167 mcsafe:MC167
171 mcsafe:MC171
175 mcsafe:MC175
176 mcsafe:MC176
177 mcsafe:MC177
178 mcsafe:MC178
180 mcsafe:MC180
181 mcsafe:MC181
182 mcsafe:MC182
183 mcsafe:MC183
184 mcsafe:MC184
185 mcsafe:MC185
186 mcsafe:MC186
187 mcsafe:MC187
188 mcsafe:MC188
189 mcsafe:MC189
190 mcsafe:MC190
191 mcsafe:MC191
192 mcsafe:MC192
193 mcsafe:MC193
194 mcsafe:MC194
195 mcsafe:MC195
196 mcsafe:MC196
197 mcsafe:MC197
198 mcsafe:MC198
199 mcsafe:MC199
200 mcsafe:MC200
201 mcsafe:MC201
202 mcsafe:MC202
203 mcsafe:MC203
204 mcsafe:MC204
205 mcsafe:MC205
206 mcsafe:MC206
207 mcsafe:MC207
208 mcsafe:MC208
209 mcsafe:MC209
210 mcsafe:MC210
211 mcsafe:MC211
212 mcsafe:MC212
213 mcsafe:MC213
214 mcsafe:MC214
215 mcsafe:MC215
216 mcsafe:MC216
217 mcsafe:MC217
218 mcsafe:MC218
219 mcsafe:MC219
220 mcsafe:MC220
221 mcsafe:MC221
222 mcsafe:MC222
223 mcsafe:MC223
224 mcsafe:MC224
225 mcsafe:MC225
226 mcsafe:MC226
227 mcsafe:MC227
228 mcsafe:MC228
229 mcsafe:MC229
230 mcsafe:MC230
231 mcsafe:MC231
232 mcsafe:MC232
233 mcsafe:MC233
234 mcsafe:MC234
235 mcsafe:MC235
236 mcsafe:MC236
237 mcsafe:MC237
238 mcsafe:MC238
239 mcsafe:MC239
240 mcsafe:MC240
241 mcsafe:MC241
242 mcsafe:MC242
243 mcsafe:MC243
244 mcsafe:MC244
245 mcsafe:MC245
246 mcsafe:MC246
247 mcsafe:MC247
248 mcsafe:MC248
249 mcsafe:MC249
250 mcsafe:MC250
251 mcsafe:MC251
252 mcsafe:MC252
253 mcsafe:MC253
254 mcsafe:MC254
255 mcsafe:MC255
256 mcsafe:MC256
This is a list of all MC blocks (without any conversions)

Code: Select all

#if NOTUSED
    0   mcblock:Air
    1   mcblock:Stone
    1   1   mcblock:Granite
    1   2   mcblock:PolishedGranite
    1   3   mcblock:Diorite
    1   4   mcblock:PolishedDiorite
    1   5   mcblock:Andesite
    1   6   mcblock:PolishedAndesite
    2   mcblock:Grass
    3   mcblock:Dirt
    3   1   mcblock:CoarseDirt
    3   2   mcblock:Podzol
    4   mcblock:Cobblestone
    5   mcblock:WoodenPlank_Oak
    5   1   mcblock:WoodenPlank_Spruce
    5   2   mcblock:WoodenPlank_Birch
    5   3   mcblock:WoodenPlank_Jungle
    5   4   mcblock:WoodenPlank_Acacia
    5   5   mcblock:WoodenPlank_DarkOak
    6   mcblock:Sapling_Oak
    6   1   mcblock:Sapling_Spruce
    6   2   mcblock:Sapling_Birch
    6   3   mcblock:Sapling_Jungle
    6   4   mcblock:Sapling_Acacia
    6   5   mcblock:Sapling_DarkOak
    7   mcblock:Bedrock
    8   mcblock:Water
    9   mcblock:Water_NoSpread
    10  mcblock:Lava
    11  mcblock:Lava_NoSpread
    12  mcblock:Sand
    12  1   mcblock:RedSand
    13  mcblock:Gravel
    14  mcblock:GoldOre
    15  mcblock:IronOre
    16  mcblock:CoalOre
    17  mcblock:Wood_Oak
    17  1   mcblock:Wood_Spruce
    17  2   mcblock:Wood_Birch
    17  3   mcblock:Wood_Jungle
    17  4   mcblock:Wood_Oak4
    17  5   mcblock:Wood_Oak5
    18  mcblock:Leaves_Oak
    18  1   mcblock:Leaves_Spruce
    18  2   mcblock:Leaves_Birch
    18  3   mcblock:Leaves_Jungle
    19  mcblock:Sponge
    19  1   mcblock:WetSponge
    20  mcblock:Glass
    21  mcblock:LapisLazuliOre
    22  mcblock:LapisLazuliBlock
    23  mcblock:Dispenser
    24  mcblock:Sandstone
    24  1   mcblock:Sandstone_Chiseled
    24  2   mcblock:Sandstone_Smooth
    25  mcblock:NoteBlock
    26  mcblock:Bed_Block
    27  mcblock:Rail_Powered
    28  mcblock:Rail_Detector
    29  mcblock:StickyPiston
    30  mcblock:Cobweb
    31  mcblock:TallGrass_DeadShrub
    31  1   mcblock:TallGrass
    31  2   mcblock:TallGrass_Fern
    32  mcblock:DeadShrub
    33  mcblock:Piston
    34  mcblock:Piston_Head
    35  mcblock:Wool
    35  1   mcblock:OrangeWool
    35  2   mcblock:MagentaWool
    35  3   mcblock:LightBlueWool
    35  4   mcblock:YellowWool
    35  5   mcblock:LimeWool
    35  6   mcblock:PinkWool
    35  7   mcblock:GrayWool
    35  8   mcblock:LightGrayWool
    35  9   mcblock:CyanWool
    35  10  mcblock:PurpleWool
    35  11  mcblock:BlueWool
    35  12  mcblock:BrownWool
    35  13  mcblock:GreenWool
    35  14  mcblock:RedWool
    35  15  mcblock:BlackWool
    36  mcblock:Piston_Moving
    37  mcblock:Dandelion
    38  mcblock:Poppy
    38  1   mcblock:BlueOrchid
    38  2   mcblock:Allium
    38  3   mcblock:AzureBluet
    38  4   mcblock:RedTulip
    38  5   mcblock:OrangeTulip
    38  6   mcblock:WhiteTulip
    38  7   mcblock:PinkTulip
    38  8   mcblock:OxeyeDaisy
    39  mcblock:BrownMushroom
    40  mcblock:RedMushroom
    41  mcblock:BlockofGold
    42  mcblock:BlockofIron
    43  mcblock:StoneSlab_Double
    43  1   mcblock:SandstoneSlab_Double
    43  2   mcblock:WoodenSlab_Double
    43  3   mcblock:CobblestoneSlab_Double
    43  4   mcblock:BrickSlab_Double
    43  5   mcblock:StoneBrickSlab_Double
    43  6   mcblock:NetherBrickSlab_Double
    43  7   mcblock:QuartzSlab_Double
    43  8   mcblock:SmoothStoneSlab_Double
    43  9   mcblock:SmoothSandstoneSlab_Double
    44  mcblock:StoneSlab
    44  1   mcblock:SandstoneSlab
    44  2   mcblock:WoodenSlab
    44  3   mcblock:CobblestoneSlab
    44  4   mcblock:BrickSlab
    44  5   mcblock:StoneBrickSlab
    44  6   mcblock:NetherBrickSlab
    44  7   mcblock:QuartzSlab
    45  mcblock:Brick
    46  mcblock:TNT
    47  mcblock:Bookshelf
    48  mcblock:MossStone
    49  mcblock:Obsidian
    50  mcblock:Torch
    51  mcblock:Fire
    52  mcblock:MobSpawner
    53  mcblock:WoodenStairs_Oak
    54  mcblock:Chest
    55  mcblock:RedstoneWire
    56  mcblock:DiamondOre
    57  mcblock:BlockofDiamond
    58  mcblock:Workbench
    59  mcblock:Wheat_Crop
    60  mcblock:Farmland
    61  mcblock:Furnace
    62  mcblock:Furnace_Smelting
    63  mcblock:Sign_Block
    64  mcblock:WoodDoor_Block
    65  mcblock:Ladder
    66  mcblock:Rail
    67  mcblock:CobblestoneStairs
    68  mcblock:Sign_WallBlock
    69  mcblock:Lever
    70  mcblock:StonePressurePlate
    71  mcblock:IronDoor_Block
    72  mcblock:WoodenPressurePlate
    73  mcblock:RedstoneOre
    74  mcblock:RedstoneOre_Glowing
    75  mcblock:RedstoneTorch_Off
    76  mcblock:RedstoneTorch
    77  mcblock:Button_Stone
    78  mcblock:Snow
    79  mcblock:Ice
    80  mcblock:SnowBlock
    81  mcblock:Cactus
    82  mcblock:ClayBlock
    83  mcblock:SugarCane_Block
    84  mcblock:Jukebox
    85  mcblock:Fence_Oak
    86  mcblock:Pumpkin
    87  mcblock:Netherrack
    88  mcblock:SoulSand
    89  mcblock:Glowstone
    90  mcblock:Portal
    91  mcblock:Jack-O-Lantern
    92  mcblock:Cake_Block
    93  mcblock:RedstoneRepeater_BlockOff
    94  mcblock:RedstoneRepeater_BlockOn
    95  mcblock:StainedGlass_White
    95  1   mcblock:StainedGlass_Orange
    95  2   mcblock:StainedGlass_Magenta
    95  3   mcblock:StainedGlass_LightBlue
    95  4   mcblock:StainedGlass_Yellow
    95  5   mcblock:StainedGlass_Lime
    95  6   mcblock:StainedGlass_Pink
    95  7   mcblock:StainedGlass_Gray
    95  8   mcblock:StainedGlass_LightGrey
    95  9   mcblock:StainedGlass_Cyan
    95  10  mcblock:StainedGlass_Purple
    95  11  mcblock:StainedGlass_Blue
    95  12  mcblock:StainedGlass_Brown
    95  13  mcblock:StainedGlass_Green
    95  14  mcblock:StainedGlass_Red
    95  15  mcblock:StainedGlass_Black
    96  mcblock:Trapdoor
    97  mcblock:MonsterEgg_Stone
    97  1   mcblock:MonsterEgg_Cobblestone
    97  2   mcblock:MonsterEgg_StoneBrick
    97  3   mcblock:MonsterEgg_MossyStoneBrick
    97  4   mcblock:MonsterEgg_CrackedStone
    97  5   mcblock:MonsterEgg_ChiseledStone
    98  mcblock:StoneBricks
    98  1   mcblock:MossyStoneBricks
    98  2   mcblock:CrackedStoneBricks
    98  3   mcblock:ChiseledStoneBrick
    99  mcblock:BrownMushroom_Block
    100 mcblock:RedMushroom_Block
    101 mcblock:IronBars
    102 mcblock:GlassPane
    103 mcblock:Melon_Block
    104 mcblock:PumpkinVine
    105 mcblock:MelonVine
    106 mcblock:Vines
    107 mcblock:FenceGate_Oak
    108 mcblock:BrickStairs
    109 mcblock:StoneBrickStairs
    110 mcblock:Mycelium
    111 mcblock:LilyPad
    112 mcblock:NetherBrick
    113 mcblock:NetherBrickFence
    114 mcblock:NetherBrickStairs
    115 mcblock:NetherWart
    116 mcblock:EnchantmentTable
    117 mcblock:BrewingStand_Block
    118 mcblock:Cauldron_Block
    119 mcblock:EndPortal
    120 mcblock:EndPortalFrame
    121 mcblock:EndStone
    122 mcblock:DragonEgg
    123 mcblock:RedstoneLamp
    124 mcblock:RedstoneLamp_On
    125 mcblock:Oak-WoodSlab_Double
    125 1   mcblock:Spruce-WoodSlab_Double
    125 2   mcblock:Birch-WoodSlab_Double
    125 3   mcblock:Jungle-WoodSlab_Double
    125 4   mcblock:AcaciaWoodSlab_Double
    125 5   mcblock:DarkOakWoodSlab_Double
    126 mcblock:Oak-WoodSlab
    126 1   mcblock:Spruce-WoodSlab
    126 2   mcblock:Birch-WoodSlab
    126 3   mcblock:Jungle-WoodSlab
    126 4   mcblock:AcaciaWoodSlab
    126 5   mcblock:DarkOakWoodSlab
    127 mcblock:CocoaPlant
    128 mcblock:SandstoneStairs
    129 mcblock:EmeraldOre
    130 mcblock:EnderChest
    131 mcblock:TripwireHook
    132 mcblock:Tripwire
    133 mcblock:BlockofEmerald
    134 mcblock:WoodenStairs_Spruce
    135 mcblock:WoodenStairs_Birch
    136 mcblock:WoodenStairs_Jungle
    137 mcblock:CommandBlock
    138 mcblock:Beacon
    139 mcblock:CobblestoneWall
    139 1   mcblock:MossyCobblestoneWall
    140 mcblock:FlowerPot_Block
    141 mcblock:Carrot_Crop
    142 mcblock:Potatoes_Crop
    143 mcblock:Button_Wood
    144 mcblock:HeadBlock_Skeleton
    144 1   mcblock:HeadBlock_Wither
    144 2   mcblock:HeadBlock_Zombie
    144 3   mcblock:HeadBlock_Steve
    144 4   mcblock:HeadBlock_Creeper
    145 mcblock:Anvil
    145 1   mcblock:Anvil_SlightlyDamaged
    145 2   mcblock:Anvil_VeryDamaged
    146 mcblock:TrappedChest
    147 mcblock:WeightedPressurePlate_Light
    148 mcblock:WeightedPressurePlate_Heavy
    149 mcblock:RedstoneComparator_Off
    150 mcblock:RedstoneComparator_On
    151 mcblock:DaylightSensor
    152 mcblock:BlockofRedstone
    153 mcblock:NetherQuartzOre
    154 mcblock:Hopper
    155 mcblock:QuartzBlock
    155 1   mcblock:ChiseledQuartzBlock
    155 2   mcblock:PillarQuartzBlock
    156 mcblock:QuartzStairs
    157 mcblock:Rail_Activator
    158 mcblock:Dropper
    159 mcblock:StainedClay_White
    159 1   mcblock:StainedClay_Orange
    159 2   mcblock:StainedClay_Magenta
    159 3   mcblock:StainedClay_LightBlue
    159 4   mcblock:StainedClay_Yellow
    159 5   mcblock:StainedClay_Lime
    159 6   mcblock:StainedClay_Pink
    159 7   mcblock:StainedClay_Gray
    159 8   mcblock:StainedClay_LightGray
    159 9   mcblock:StainedClay_Cyan
    159 10  mcblock:StainedClay_Purple
    159 11  mcblock:StainedClay_Blue
    159 12  mcblock:StainedClay_Brown
    159 13  mcblock:StainedClay_Green
    159 14  mcblock:StainedClay_Red
    159 15  mcblock:StainedClay_Black
    160 mcblock:StainedGlassPane_White
    160 1   mcblock:StainedGlassPane_Orange
    160 2   mcblock:StainedGlassPane_Magenta
    160 3   mcblock:StainedGlassPane_LightBlue
    160 4   mcblock:StainedGlassPane_Yellow
    160 5   mcblock:StainedGlassPane_Lime
    160 6   mcblock:StainedGlassPane_Pink
    160 7   mcblock:StainedGlassPane_Gray
    160 8   mcblock:StainedGlassPane_LightGray
    160 9   mcblock:StainedGlassPane_Cyan
    160 10  mcblock:StainedGlassPane_Purple
    160 11  mcblock:StainedGlassPane_Blue
    160 12  mcblock:StainedGlassPane_Brown
    160 13  mcblock:StainedGlassPane_Green
    160 14  mcblock:StainedGlassPane_Red
    160 15  mcblock:StainedGlassPane_Black
    161 mcblock:Leaves_Acacia
    161 1   mcblock:Leaves_DarkOak
    162 mcblock:Wood_AcaciaOak
    162 1   mcblock:Wood_DarkOak
    163 mcblock:WoodenStairs_Acacia
    164 mcblock:WoodenStairs_DarkOak
    165 mcblock:SlimeBlock
    166 mcblock:Barrier
    167 mcblock:IronTrapdoor
    168 mcblock:Prismarine
    168 1   mcblock:PrismarineBricks
    168 2   mcblock:DarkPrismarine
    169 mcblock:SeaLantern
    170 mcblock:HayBale
    171 mcblock:Carpet_White
    171 1   mcblock:Carpet_Orange
    171 2   mcblock:Carpet_Magenta
    171 3   mcblock:Carpet_LightBlue
    171 4   mcblock:Carpet_Yellow
    171 5   mcblock:Carpet_Lime
    171 6   mcblock:Carpet_Pink
    171 7   mcblock:Carpet_Grey
    171 8   mcblock:Carpet_LightGray
    171 9   mcblock:Carpet_Cyan
    171 10  mcblock:Carpet_Purple
    171 11  mcblock:Carpet_Blue
    171 12  mcblock:Carpet_Brown
    171 13  mcblock:Carpet_Green
    171 14  mcblock:Carpet_Red
    171 15  mcblock:Carpet_Black
    172 mcblock:HardenedClay
    173 mcblock:BlockofCoal
    174 mcblock:PackedIce
    175 mcblock:Sunflower
    175 1   mcblock:Lilac
    175 2   mcblock:DoubleTallgrass
    175 3   mcblock:LargeFern
    175 4   mcblock:RoseBush
    175 5   mcblock:Peony
    176 mcblock:StandingBanner_Block
    177 mcblock:WallBanner_Block
    178 mcblock:InvertedDaylightSensor
    179 mcblock:RedSandstone
    179 1   mcblock:RedSandstone_Chiseled
    179 2   mcblock:RedSandstone_Smooth
    180 mcblock:RedSandstoneStairs
    181 mcblock:RedSandstoneSlab_Double
    182 mcblock:RedSandstoneSlab
    183 mcblock:FenceGate_Spruce
    184 mcblock:FenceGate_Birch
    185 mcblock:FenceGate_Jungle
    186 mcblock:FenceGate_DarkOak
    187 mcblock:FenceGate_Acacia
    188 mcblock:Fence_Spruce
    189 mcblock:Fence_Birch
    190 mcblock:Fence_Jungle
    191 mcblock:Fence_DarkOak
    192 mcblock:Fence_Acacia
    193 mcblock:WoodenDoorBlock_Spruce
    194 mcblock:WoodenDoorBlock_Birch
    195 mcblock:WoodenDoorBlock_Jungle
    196 mcblock:WoodenDoorBlock_Acacia
    197 mcblock:WoodenDoorBlock_DarkOak
    256 mcblock:IronShovel
    257 mcblock:IronPickaxe
    258 mcblock:IronAxe
    259 mcblock:FlintandSteel
    260 mcblock:Apple
    261 mcblock:Bow
    262 mcblock:Arrow
    263 mcblock:Coal
    263 1   mcblock:Charcoal
    264 mcblock:DiamondGem
    265 mcblock:IronIngot
    266 mcblock:GoldIngot
    267 mcblock:IronSword
    268 mcblock:WoodenSword
    269 mcblock:WoodenShovel
    270 mcblock:WoodenPickaxe
    271 mcblock:WoodenAxe
    272 mcblock:StoneSword
    273 mcblock:StoneShovel
    274 mcblock:StonePickaxe
    275 mcblock:StoneAxe
    276 mcblock:DiamondSword
    277 mcblock:DiamondShovel
    278 mcblock:DiamondPickaxe
    279 mcblock:DiamondAxe
    280 mcblock:Stick
    281 mcblock:Bowl
    282 mcblock:MushroomStew
    283 mcblock:GoldSword
    284 mcblock:GoldShovel
    285 mcblock:GoldPickaxe
    286 mcblock:GoldAxe
    287 mcblock:String
    288 mcblock:Feather
    289 mcblock:Gunpowder
    290 mcblock:WoodenHoe
    291 mcblock:StoneHoe
    292 mcblock:IronHoe
    293 mcblock:DiamondHoe
    294 mcblock:GoldHoe
    295 mcblock:WheatSeeds
    296 mcblock:Wheat
    297 mcblock:Bread
    298 mcblock:LeatherHelmet
    299 mcblock:LeatherChestplate
    300 mcblock:LeatherLeggings
    301 mcblock:LeatherBoots
    302 mcblock:ChainmailHelmet
    303 mcblock:ChainmailChestplate
    304 mcblock:ChainmailLeggings
    305 mcblock:ChainmailBoots
    306 mcblock:IronHelmet
    307 mcblock:IronChestplate
    308 mcblock:IronLeggings
    309 mcblock:IronBoots
    310 mcblock:DiamondHelmet
    311 mcblock:DiamondChestplate
    312 mcblock:DiamondLeggings
    313 mcblock:DiamondBoots
    314 mcblock:GoldHelmet
    315 mcblock:GoldChestplate
    316 mcblock:GoldLeggings
    317 mcblock:GoldBoots
    318 mcblock:Flint
    319 mcblock:RawPorkchop
    320 mcblock:CookedPorkchop
    321 mcblock:Painting
    322 mcblock:GoldenApple
    322 1   mcblock:EnchantedGoldenApple
    323 mcblock:Sign
    324 mcblock:WoodenDoor
    325 mcblock:Bucket
    326 mcblock:Bucket_Water
    327 mcblock:Bucket_Lava
    328 mcblock:Minecart
    329 mcblock:Saddle
    330 mcblock:IronDoor
    331 mcblock:RedstoneDust
    332 mcblock:Snowball
    333 mcblock:Boat
    334 mcblock:Leather
    335 mcblock:Bucket_Milk
    336 mcblock:ClayBrick
    337 mcblock:Clay
    338 mcblock:SugarCane
    339 mcblock:Paper
    340 mcblock:Book
    341 mcblock:SlimeBall
    342 mcblock:Minecart_Storage
    343 mcblock:Minecart_Powered
    344 mcblock:Egg
    345 mcblock:Compass
    346 mcblock:FishingRod
    347 mcblock:Watch
    348 mcblock:GlowstoneDust
    349 mcblock:RawFish
    349 1   mcblock:RawSalmon
    349 2   mcblock:Clownfish
    349 3   mcblock:Pufferfish
    350 mcblock:CookedFish
    350 1   mcblock:CookedSalmon
    350 2   mcblock:Clownfish
    350 3   mcblock:Pufferfish
    351 mcblock:InkSack
    351 1   mcblock:RoseRedDye
    351 2   mcblock:CactusGreenDye
    351 3   mcblock:CocoaBean
    351 4   mcblock:LapisLazuli
    351 5   mcblock:PurpleDye
    351 6   mcblock:CyanDye
    351 7   mcblock:LightGrayDye
    351 8   mcblock:GrayDye
    351 9   mcblock:PinkDye
    351 10  mcblock:LimeDye
    351 11  mcblock:DandelionYellowDye
    351 12  mcblock:LightBlueDye
    351 13  mcblock:MagentaDye
    351 14  mcblock:OrangeDye
    351 15  mcblock:BoneMeal
    352 mcblock:Bone
    353 mcblock:Sugar
    354 mcblock:Cake
    355 mcblock:Bed
    356 mcblock:RedstoneRepeater
    357 mcblock:Cookie
    358 mcblock:Map
    359 mcblock:Shears
    360 mcblock:Melon_Slice
    361 mcblock:PumpkinSeeds
    362 mcblock:MelonSeeds
    363 mcblock:RawBeef
    364 mcblock:Steak
    365 mcblock:RawChicken
    366 mcblock:CookedChicken
    367 mcblock:RottenFlesh
    368 mcblock:EnderPearl
    369 mcblock:BlazeRod
    370 mcblock:GhastTear
    371 mcblock:GoldNugget
    372 mcblock:NetherWartSeeds
    373 mcblock:WaterBottle
    373 16  mcblock:AwkwardPotion
    373 32  mcblock:ThickPotion
    373 64  mcblock:MundanePotion
    373 8193    mcblock:RegenerationPotion_0
    373 8194    mcblock:SwiftnessPotion_3
    373 8195    mcblock:FireResistancePotion_3
    373 8196    mcblock:PoisonPotion_0
    373 8197    mcblock:HealingPotion
    373 8198    mcblock:NightVisionPotion_3
    373 8200    mcblock:WeaknessPotion_1
    373 8201    mcblock:StrengthPotion_3
    373 8202    mcblock:SlownessPotion_1
    373 8204    mcblock:HarmingPotion
    373 8205    mcblock:WaterBreathingPotion_3
    373 8206    mcblock:InvisibilityPotion_3
    373 8225    mcblock:RegenerationPotionII_0
    373 8226    mcblock:SwiftnessPotionII_1
    373 8228    mcblock:PoisonPotionII_0
    373 8229    mcblock:HealingPotionII
    373 8233    mcblock:StrengthPotionII_1
    373 8235    mcblock:LeapingPotionII_1
    373 8236    mcblock:HarmingPotionII
    373 8257    mcblock:RegenerationPotion_2
    373 8258    mcblock:SwiftnessPotion_8
    373 8259    mcblock:FireResistancePotion_8
    373 8260    mcblock:PoisonPotion_2
    373 8262    mcblock:NightVisionPotion_8
    373 8264    mcblock:WeaknessPotion_4
    373 8265    mcblock:StrengthPotion_8
    373 8266    mcblock:SlownessPotion_4
    373 8267    mcblock:LeapingPotion_3
    373 8269    mcblock:WaterBreathingPotion_8
    373 8270    mcblock:InvisibilityPotion_8
    373 8289    mcblock:RegenerationPotionII_1
    373 8290    mcblock:SwiftnessPotionII_4
    373 8292    mcblock:PoisonPotionII_1
    373 8297    mcblock:StrengthPotionII_4
    373 16385   mcblock:RegenerationSplash_0
    373 16386   mcblock:SwiftnessSplash_2
    373 16387   mcblock:FireResistanceSplash_2
    373 16388   mcblock:PoisonSplash_0
    373 16389   mcblock:HealingSplash
    373 16390   mcblock:NightVisionSplash_2
    373 16392   mcblock:WeaknessSplash_1
    373 16393   mcblock:StrengthSplash_2
    373 16394   mcblock:SlownessSplash_1
    373 16396   mcblock:HarmingSplash
    373 16397   mcblock:BreathingSplash_2
    373 16398   mcblock:InvisibilitySplash_2
    373 16417   mcblock:RegenerationSplashII_0
    373 16418   mcblock:SwiftnessSplashII_1
    373 16420   mcblock:PoisonSplashII_0
    373 16421   mcblock:HealingSplashII
    373 16425   mcblock:StrengthSplashII_1
    373 16427   mcblock:LeapingSplashII_1
    373 16428   mcblock:HarmingSplashII
    373 16449   mcblock:RegenerationSplash_1
    373 16450   mcblock:SwiftnessSplash_6
    373 16451   mcblock:FireResistanceSplash_6
    373 16452   mcblock:PoisonSplash_1
    373 16454   mcblock:NightVisionSplash_6
    373 16456   mcblock:WeaknessSplash_3
    373 16457   mcblock:StrengthSplash_6
    373 16458   mcblock:SlownessSplash_3
    373 16459   mcblock:LeapingSplash_2
    373 16461   mcblock:BreathingSplash_6
    373 16462   mcblock:InvisibilitySplash_6
    373 16481   mcblock:RegenerationSplashII_0
    373 16482   mcblock:SwiftnessSplashII_3
    373 16484   mcblock:PoisonSplashII_0
    373 16489   mcblock:StrengthSplashII_3
    374 mcblock:GlassBottle
    375 mcblock:SpiderEye
    376 mcblock:FermentedSpiderEye
    377 mcblock:BlazePowder
    378 mcblock:MagmaCream
    379 mcblock:BrewingStand
    380 mcblock:Cauldron
    381 mcblock:EyeofEnder
    382 mcblock:GlisteringMelon_Slice
    383 50  mcblock:SpawnEgg_Creeper
    383 51  mcblock:SpawnEgg_Skeleton
    383 52  mcblock:SpawnEgg_Spider
    383 54  mcblock:SpawnEgg_Zombie
    383 55  mcblock:SpawnEgg_Slime
    383 56  mcblock:SpawnEgg_Ghast
    383 57  mcblock:SpawnEgg_ZombiePigmen
    383 58  mcblock:SpawnEgg_Endermen
    383 59  mcblock:SpawnEgg_CaveSpider
    383 60  mcblock:SpawnEgg_Silverfish
    383 61  mcblock:SpawnEgg_Blaze
    383 62  mcblock:SpawnEgg_MagmaCube
    383 65  mcblock:SpawnEgg_Bat
    383 66  mcblock:SpawnEgg_Witch
    383 67  mcblock:SpawnEgg_Endermite
    383 68  mcblock:SpawnEgg_Guardian
    383 90  mcblock:SpawnEgg_Pig
    383 91  mcblock:SpawnEgg_Sheep
    383 92  mcblock:SpawnEgg_Cow
    383 93  mcblock:SpawnEgg_Chicken
    383 94  mcblock:SpawnEgg_Squid
    383 95  mcblock:SpawnEgg_Wolf
    383 96  mcblock:SpawnEgg_Mooshroom
    383 98  mcblock:SpawnEgg_Ocelot
    383 100 mcblock:SpawnEgg_Horse
    383 101 mcblock:SpawnEgg_Rabbit
    383 120 mcblock:SpawnEgg_Villager
    384 mcblock:BottleofEnchanting
    385 mcblock:FireCharge
    386 mcblock:BookandQuill
    387 mcblock:WrittenBook
    388 mcblock:Emerald
    389 mcblock:ItemFrame
    390 mcblock:FlowerPot
    391 mcblock:Carrot
    392 mcblock:Potato
    393 mcblock:BakedPotato
    394 mcblock:PoisonousPotato
    395 mcblock:EmptyMap
    396 mcblock:GoldenCarrot
    397 mcblock:Head_Skeleton
    397 1   mcblock:Head_Wither
    397 2   mcblock:Head_Zombie
    397 3   mcblock:Head_Steve
    397 4   mcblock:Head_Creeper
    398 mcblock:CarrotonaStick
    399 mcblock:NetherStar
    400 mcblock:PumpkinPie
    401 mcblock:FireworkRocket
    402 mcblock:FireworkStar
    403 mcblock:EnchantedBook
    404 mcblock:RedstoneComparator
    405 mcblock:NetherBrick_Item
    406 mcblock:NetherQuartz
    407 mcblock:Minecart_TNT
    408 mcblock:Minecart_Hopper
    409 mcblock:PrismarineShard
    410 mcblock:PrismarineCrystals
    411 mcblock:RawRabbit
    412 mcblock:CookedRabbit
    413 mcblock:RabbitStew
    414 mcblock:Rabbit'sFoot
    415 mcblock:RabbitHide
    416 mcblock:ArmorStand
    417 mcblock:IronHorseArmor
    418 mcblock:GoldHorseArmor
    419 mcblock:DiamondHorseArmor
    420 mcblock:Lead
    421 mcblock:NameTag
    422 mcblock:Minecart_CommandBlock
    423 mcblock:RawMutton
    424 mcblock:CookedMutton
    425 mcblock:Banner_Black
    425 1   mcblock:Banner_Red
    425 2   mcblock:Banner_Green
    425 3   mcblock:Banner_Brown
    425 4   mcblock:Banner_Blue
    425 5   mcblock:Banner_Purple
    425 6   mcblock:Banner_Cyan
    425 7   mcblock:Banner_LightGray
    425 8   mcblock:Banner_Gray
    425 9   mcblock:Banner_Pink
    425 10  mcblock:Banner_Lime
    425 11  mcblock:Banner_Yellow
    425 12  mcblock:Banner_LightBlue
    425 13  mcblock:Banner_Magenta
    425 14  mcblock:Banner_Orange
    425 15  mcblock:Banner_White
    427 mcblock:WoodenDoor_Spruce
    428 mcblock:WoodenDoor_Birch
    429 mcblock:WoodenDoor_Jungle
    430 mcblock:WoodenDoor_Acacia
    431 mcblock:WoodenDoor_DarkOak
    2256    mcblock:MusicDisk_13
    2257    mcblock:MusicDisk_Cat
    2258    mcblock:MusicDisk_Blocks
    2259    mcblock:MusicDisk_Chirp
    2260    mcblock:MusicDisk_Far
    2261    mcblock:MusicDisk_Mall
    2262    mcblock:MusicDisk_Mellohi
    2263    mcblock:MusicDisk_Stal
    2264    mcblock:MusicDisk_Strad
    2265    mcblock:MusicDisk_Ward
    2266    mcblock:MusicDisk_11
    2267    mcblock:MusicDisk_Wait
#endif
    
You'll also need to add the following to your world.mt file:

Code: Select all

load_mod_mesecons = true
load_mod_mesecons_alias = true
load_mod_mesecons_blinkyplant = true
load_mod_mesecons_button = true
load_mod_mesecons_commandblock = true
load_mod_mesecons_delayer = true
load_mod_mesecons_detector = true
load_mod_mesecons_extrawires = true
load_mod_mesecons_gates = true
load_mod_mesecons_hydroturbine = true
load_mod_mesecons_insulated = true
load_mod_mesecons_lamp = true
load_mod_mesecons_lightstone = true
load_mod_mesecons_luacontroller = true
load_mod_mesecons_materials = true
load_mod_mesecons_microcontroller = true
load_mod_mesecons_movestones = true
load_mod_mesecons_mvps = true
load_mod_mesecons_noteblock = true
load_mod_mesecons_pistons = true
load_mod_mesecons_powerplant = true
load_mod_mesecons_pressureplates = true
load_mod_mesecons_random = true
load_mod_mesecons_receiver = true
load_mod_mesecons_solarpanel = true
load_mod_mesecons_switch = true
load_mod_mesecons_torch = true
load_mod_mesecons_walllever = true

Last edited by dgm5555 on Sat Feb 21, 2015 21:05, edited 1 time in total.

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

Also currently doors aren't importing correctly. The bottom half of them isn't joined to the top half, and will chop a hole in the ground when it's opened, and both top and bottom open in random directions.

Nore
Developer
Posts: 501
Joined: Wed Nov 28, 2012 11:35
GitHub: Ekdohibs

Re: [Mod] Converter Minecraft world to Minetest world

by Nore » Post

For doors, the mc wiki says that you need to look at metadata in *both* parts of the door to know how the door is; that is not yet supported by my code. What needs to be done would be to add those nodes to a "special" list, and then, check all the nodes in that list and have pieces of code working on those. Moreover, other things that are not done currently are import of items in inventories (player, chest, ...), or others things related to metadata. Finally, it could be useful to have some clone of redstone since it doesn't work exactly like mesecons, so most circuits except the most basic ones will break.
Btw, for the extra blocks you added: bed could be converted with the current code, and about pistons, head is a block in mesecons too. There also was a mod that added cobwebs, and tnt is in default.

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

Re: [Mod] Converter Minecraft world to Minetest world

by twoelk » Post

hehe, search dreambuilder for cobwebs. They are in there somewhere, as is almost everything. Or look in the cellars of my houses on VanessaE's creative server ;-)

Nore
Developer
Posts: 501
Joined: Wed Nov 28, 2012 11:35
GitHub: Ekdohibs

Re: [Mod] Converter Minecraft world to Minetest world

by Nore » Post

Also, I saw that a lapis lazuli mod just came out, so you can use that too :)

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

paramat mentioned that uniflat (a landscape flattening mod) might be helpful for blending edges of imports: viewtopic.php?f=11&t=7701

Also noted in viewtopic.php?p=138972#p138972
paramat wrote:You can actually stop caves removing particular nodes (in MGV6 and MGV7) by adding:
is _ground_content = false
to the node definition (meaning 'this node is not part of the ground so shouldn't be removed by cavegen)
Though it's probably not much use to this, as we are generall using vanilla nodes in the conversion.

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

twoelk wrote:hehe, search dreambuilder for cobwebs
- They're in her homedecor modpack

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

Another somewhat unsatisfactory way of stopping mapgen griefing is to eliminate mapgen entirely.
Putting the following as the contents of map_meta.txt turns it into a singlenode (ie air only) mapgen, which politely leaves all other nodes intact.

Code: Select all

chunksize = 5
mg_biome_np_heat = {
	flags = defaults
	lacunarity = 2
	octaves = 3
	offset = 50
	persistence = 0.5
	scale = 50
	seed = 5349
	spread = (500,500,500)
}
mg_biome_np_humidity = {
	flags = defaults
	lacunarity = 2
	octaves = 3
	offset = 50
	persistence = 0.5
	scale = 50
	seed = 842
	spread = (500,500,500)
}
mg_flags = trees, caves, nodungeons, flat, light
mg_name = singlenode
seed = 8272917064822957149
water_level = 1
[end_of_params]

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

Looks like the x and z axes haven't been correctly reversed.
# MT -X +X -Z +Z Y
# MC +Z -Z +X -X Y-63
# In Minecraft, West is +Z (max=∞) and East is -Z (min=-∞), North is -X (min=-∞) and South is +X (max=∞), Up is +Y (max=256) and Down is -Y (min=0), ground level is 63
# In Minetest, -X (west) <--- 0 ----> +X (east), North is +Z and South is -Z, Up is +Y and Down is -Y (min=0), ground level is 0
# Minetest dimensions are max 30928 nodes (=1933 chunks) in any direction from origin of 0

This cliff runs along the x plane.
Image

Nore
Developer
Posts: 501
Joined: Wed Nov 28, 2012 11:35
GitHub: Ekdohibs

Re: [Mod] Converter Minecraft world to Minetest world

by Nore » Post

What happens is that the mc X axes become X axes, etc without any change. However, it looks like MT uses a *left-handed* basis, whereas the standard is right-handed... So everything gets reflected :(

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

Re: [Mod] Converter Minecraft world to Minetest world

by twoelk » Post

lol, mirrored text on imports from minecraft has been around for a while as well. Of course the whole map is mirrored but usually it is not that important or noticed at all. Mauvebic was battling with that problem with his large imports of the Enterprise. In the end he just edited the resulting map ingame if I remember correctly.

Might be usefull if the correct transformation algorithm, once found, was also applied to other tools, that is of course only if they havn't corrected it yet. ;-D

Thinking about it, maybe it's about time to start a new page on the wiki, collecting information about import and export tools for minetest. Oh well, note to myself.....

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

Unfortunately my next work project has hit, so I will be unlikely able to work on this mod for a bit.
But here are my latest efforts.

The following is the beginnings of a mcblocks mod. It lists all (?) minecraft blocks and replaces default water, lava and fire with a safe version (the default minetest versions cause massive fires. I'm unsure on the water, but for testing thought less risk of flooding was probably helpful).
https://dl.dropboxusercontent.com/u/212 ... blocks.zip
Currently it will display nodes as a big black and white question mark which will at least enable you to identify/name all known blocks when you point at them. My plan for this was to set up the node definitions to match the names for minecraft textures which would open up to using the thousands (literally) of texture packs created by minecraft users.
For starters download any of the texture packs available and look in ./assets/minecraft/textures/blocks/ for the pngs which provide the block face textures, and /assets/minecraft/textures/items for pngs for the inventory images )the slight hiccup with using these directly is they share names, so can't all go in the same textures directory without a rename). Planetminecraft has 26'000 (ish) texture packs:-
http://www.planetminecraft.com/resource ... popularity
This was my starter cheatsheet I found: http://www.minecraftforum.net/forums/ma ... exturing#5

This is a modified conversion list for mcimport which lists a very large proportion of the current minecraft blocks
https://dl.dropboxusercontent.com/u/212 ... ontent.txt
It is critical you take note of the instructions regarding space and tab on the first line or the parser will fail, and watch out, my editor (liclipse) helpfully converted all the tabs to spaces when I wasn't watching which took me a while to figure out why the conversion suddenly started failing. The parser only uses the first conversion listed, so by leaving the mcblocks entries at the end of the file you can still add others to take precedence. If you want to use purely mcblock/minecraft texture packs, just edit the file and delete the initial conversions.

You'll also need to extend line 7 in mcimport.py to take account of any new preprocessor directives you code into it

Code: Select all

nimap, ct = content.read_content(["MORETREES", "NETHER", "QUARTZ", "MCBLOCKS"])
I also suggest changing line 41 of content.py so totally unknown blocks aren't just converted to air (mcblock:unknown isn't defined in mcblocks, so you'll currently see the classic ??? block texture.

Code: Select all

#    name_id_mapping = ["air"]
    name_id_mapping = ["mcblock:unknown"]
For testing your conversion there are a number of minecraft 'texture pack test tracks' TPTT (which generally purport to contain all minecraft blocks in a concentrated small zone, but generally don't manage it). For conversion speed, it might be worth purging/deleting the unneeded blocks with mcedit, if there's a lot of unnecessary world (I'm not sharing the one I downloaded and modified as I don't know the license)

Before I thought of the minecraft texture pack route, to help in the search for appropriate nodes I wrote a script/mod which will display all loaded nodes in a single place (note the image shows only a small number of the total blocks available in minetest - minetest_game in front and moreblocks behind, which makes the 700 or so I've identifed for minecraft pale into insignificance). This could also be helpful for checking mcblocks as you're working on it, as it quickly separates and displays blocks.
viewtopic.php?f=9&t=11294
These are the currently converted minetest blocks - loaded directly from a texture pack
Image
Last edited by dgm5555 on Thu Feb 26, 2015 10:02, edited 5 times in total.

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

Oops my browser resubmitted the page when I reloaded...

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

I've updated the mcblocks mod, which will get it's own post in a little while...
https://dl.dropboxusercontent.com/u/212 ... blocks.zip

This mod provides a layer to make use of minecraft texture packs.
It also provides basic conversions for approximately 1000 nodes which will fit the names of the .pngs found in the current minetest (1.81) and associated texture packs.

I've also provided a map_content.txt file in the zip which will enable worlds to be imported by mcimport - viewtopic.php?f=5&t=11146. You'll need to replace the one in mcimport with this file to fully enable mcblocks during an import.

To use the mod, download a texture pack and extract the assets folder into the mod folder.
On the first run, the mod will automatically move the files from the relevant directories into the texture folder.

NB not all texture packs are complete, so if you have missing textures, try another pack. Any existing files will be overwritten, but files which don't have a replacement won't be deleted. Please follow the licenses, so although you could also start by extracting the assets folder directly from minecraft I'm not sure that using these textures in minetest would be licensed)

Caveats:
Currently there is no functionality for the blocks (eg furnaces don't burn, chests don't work, nor do crafting tables, crops don't grow, etc)
I haven't tested for texture packs from previous versions.
The names of nodes within the mod aren't exactly the same as the newer style of minecraft, there were some inconsistencies in my sources and it took me a while to realise what was correct. Anyone who wishes too is welcome to rename them all and push to git (but you'll have to do it in one go, I'm not going to import them piecemeal).

-- TODO:
-- Correctly display Fences, Doors, Gates, Beds, Rails, animated blocks
-- Fix Lava glitching (changing between block types as flowing)
-- Enable Special Block Functions (doors, chests, enchanting table, crafting table/workbench, furnace, anvil, cake, signs)
-- correct plants: Double-height plants, tallgrass, waterlillies, mushrooms, growing Crops

--More Difficult (and probably I won't do it):
-- utilise 3D models: /assets/minecraft/models, and 3D textures /assets/minecraft/textures/entity
-- Functioning Redstone
-- Mobs

Image
Image
Image

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

Re: [Mod] Converter Minecraft world to Minetest world

by dgm5555 » Post

I've uploaded an update to mcimport to git, and created a pull request for it from my git:-
https://github.com/dgm3333/mcimport
Changes are:
Corrected mirrored import of x axis for Anvil format files (now text reads correctly)
Changed so unknown blocks are imported and will be displayed as unknown (otherwise blocks are ignored and imports can have significant holes in them)
And various comments and debug/prints (which among other things will aid with adding new entities to the conversion
@Nore: could you record a license for the code - I'll ask to have this switched to the mod section, but will need license info. Tx


I've also put some work into mcblocks. This now contains basic visual replacements for all the basic minecraft blocks. It also provides a replacement for the map_content.txt file used by mcimport, so only the one mcblocks mod is required.
In some cases (but only a few) nodes are working.
There are still glitches with complex shapes (including chests and skulls)
Currently though, rotations are often incorrectly converted.
https://dl.dropboxusercontent.com/u/212 ... blocks.zip
I'll put this on git in the next few days.

-- Version 1: Still outstanding:-
-- TODO:
-- forum.minetest page
-- NB currently doors aren't working, rotation of many blocks is incorrect
-- Working Doors, Gates, Fence
-- Correct node registration to give blocks 'usual' properties (eg diggable, flammable, etc)
-- utilise 3D models: /assets/minecraft/models, and 3D textures /assets/minecraft/textures/entity
-- Special Block Functions (doors, chests, enchanting table, crafting table/workbench, furnace, anvil, cake, signs, ladders, rails)
-- Fix glitchy water and lava (which flows more widely the minecraft equivalents and currently varies between block types
-- Growing Crops

-- Version 2 plans:
-- Functioning Redstone
-- Import most/all entities (eg mobs)

These are shots using Theltsoh's texture pack test track worldmap, and OzoCraft-1.8b texture pack (unfortunately I can't find the links again though I think both on planetminecraft):-
Image
Image

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Converter Minecraft world to Minetest world

by sofar » Post

dgm5555:

I got some python errors on my system. Fixed up the bitwise converter like this:

Code: Select all

diff --git a/serialize.py b/serialize.py
index de6e37f..a992c9c 100644
--- a/serialize.py
+++ b/serialize.py
@@ -1,3 +1,6 @@
+
+import binascii
+
 def writeU8(os, u8):
     os.write(bytes((u8&0xff,)))
 
@@ -22,7 +25,4 @@ def writeLongString(os, s):
     os.write(b)
 
 def bytesToInt(b):
-    s = 0
-    for x in b:
-        s = (s<<8)+x
-    return s
+    int(binascii.hexlify(b), 16) if len(b) > 0 else 0
Above method seems to be the preferred and fastest method for python pre-3.x (according to stackoverflow)

EDIT: Scratch that, that's nonsense, that should obviously return a value properly.

After that I'm seeing this error, no clue yet, I'm no python hero really.

Code: Select all

Traceback (most recent call last):
  File "mcimport.py", line 9, in <module>
    mtmap.save()
  File "/home/sofar/git/mcimport-dgm3333/block.py", line 366, in save
    for block in self.blocks:
  File "/home/sofar/git/mcimport-dgm3333/block.py", line 350, in fromMCMapBlocksIterator
    for mcblock in mcmap.getBlocksIterator():
  File "/home/sofar/git/mcimport-dgm3333/block.py", line 44, in getBlocksIterator
    blocks = self.getChunk(chkx, chkz).blocks
  File "/home/sofar/git/mcimport-dgm3333/block.py", line 40, in getChunk
    return MCChunk(chkx, chkz, self.world_path, self.ext)
  File "/home/sofar/git/mcimport-dgm3333/block.py", line 56, in __init__
    offset = bytesToInt(f.read(3)) << 12
TypeError: unsupported operand type(s) for <<: 'NoneType' and 'int'

Schmeldric
Member
Posts: 22
Joined: Sat Nov 01, 2014 15:38
In-game: Schmeldric

Re: [Mod] Converter Minecraft world to Minetest world

by Schmeldric » Post

Hello,

I have a conversion problem between Minecraft and Minetest.

I'm a school teacher setting up a project with the city's multimedia library. The aim is to build a 3D model of some parts of our city. And we've got different preferences...
I prefer Minetest because of the modding that enables me to build the map from raw data, and add commands such as "build a house here". And also because I don't have the funds to buy Minecraft licences.
The multimedia library is willing to use Minecraft because of Mineways (http://www.realtimerendering.com/erich/ ... /mineways/). It is a software that will allow them to 3D-print parts of the map.

So, some questions :
- Is there any software to convert Minetest map to Minecraft map?
- Does Minetest have an equivalent of Mineways?

Thanks for your answers.

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

Re: [Mod] Converter Minecraft world to Minetest world

by twoelk » Post

no and no (at least not exactly)
but
this thread:
3D printing for kids: modelling objects with Minetest

lead to these three sollutions:
[MOD] Minetest 3D Print 0.1 [M3D]
mt2obj Converts .mts schematics to Waveform .obj geometries
[Mod] BlockExport [blockexport]

Sokomine
Member
Posts: 4287
Joined: Sun Sep 09, 2012 17:31
GitHub: Sokomine
IRC: Sokomine
In-game: Sokomine

Re: [Mod] Converter Minecraft world to Minetest world

by Sokomine » Post

Schmeldric wrote: - Is there any software to convert Minetest map to Minecraft map?
That depends. It's impossible to convert each given Minetest map to Minecraft - simply because there may be far more diffrent block types in Minetest than there are in Minecraft. Minecraft can only use a limited amount of diffrent blocks per world, while there may easily be thousands of them in Minetest. Entities might be a way around, but that would be rather tricky.

If you limit the blocks you're using to those which do have equivalents in both worlds (or use only nodes from my mccompat mod), it'd be in theory possible to create a .schematic file from those - a file that some Minecraft tools may read. Such code doesn't exist yet as there is usually very little point. Maybe your best approach would be to use one of the object exporters twoelk mentionned.
A list of my mods can be found here.

Schmeldric
Member
Posts: 22
Joined: Sat Nov 01, 2014 15:38
In-game: Schmeldric

Re: [Mod] Converter Minecraft world to Minetest world

by Schmeldric » Post

Thanks for the links!

Besides, is there any "specs" "notice" "api" "datasheet" (I don't know the english word for that) that describes how Minetest maps are stored. I know it's by 80x80x80 chunks, but where can I find the details? (and is it a good idea?)
The idea would be to create the map accordingly to my datas with an extern project (compiled in C for my case), which would avoid parsing huge data files in lua while running the game.

Since you made a mincraft to minetest converter, I guess this information is also available for minecraft. Do you have references?

Nore
Developer
Posts: 501
Joined: Wed Nov 28, 2012 11:35
GitHub: Ekdohibs

Re: [Mod] Converter Minecraft world to Minetest world

by Nore » Post

Schmeldric wrote:Besides, is there any "specs" "notice" "api" "datasheet" (I don't know the english word for that) that describes how Minetest maps are stored. I know it's by 80x80x80 chunks, but where can I find the details? (and is it a good idea?)
I remember I looked at the code to know the format of the map when I wrote my MC -> MT converter, I don't know if it is documented somewhere else.
The idea would be to create the map accordingly to my datas with an extern project (compiled in C for my case), which would avoid parsing huge data files in lua while running the game.
Well, this is already done in my MC->MT converter, but this one is implemented in Python; it can however help you understand how to make it in another language.
Since you made a mincraft to minetest converter, I guess this information is also available for minecraft. Do you have references?
You can find it on the MC wiki, it is quite well documented and was the only reference I ever used to understand the format of MC maps.

Post Reply

Who is online

Users browsing this forum: No registered users and 5 guests