twoolie / NBT

Python Parser/Writer for the NBT file format, and it's container the RegionFile.
MIT License
362 stars 74 forks source link

Add Biome data to Sample World #59

Open macfreek opened 12 years ago

macfreek commented 12 years ago

The Sample World at https://github.com/twoolie/NBT/downloads does not contain Biome data.

The world was a regular McRegion world, converted to Anvil with Mojang's converter.

It turns out that this convertor does not add biome data. An alternative method is to fire up the Minecraft client to do the conversion, but that will move the mobs before it can be closed, which I consider a disadvantage (if both worlds are equal, it's easier to compare the McRegion and Anvil parser in test scripts). Opening the file in a Minecraft server may not move the mobs if the /stop command is given immediately, but will always generate a 380x380 area around spawn, further increasing the file size.

If you have any advice on adding biome data without changing the rest of the region/chunk data, please post here.

stumpylog commented 12 years ago

Biome Painter is one possibility. It looks like it would be time intensive, requiring hand drawing in the biome areas. It also seems to have some problems, possibly from the converter, as opposed to Minecraft, doing the conversion. Not the best choice, but a choice.

macfreek commented 12 years ago

The best option is to let a Minecraft client generate the Biome data on a copy of the sample world, and have a script copy the Biome data into the chunks of the original files (ignoring newly generated chunks, or newly created or deleted mobs). I'm currently busy at work, so this has low priority for me.

stumpylog commented 12 years ago

I opened the world in Minecraft Server 1.2.5, which converts the entire world, as opposed to just nearby chunks, then copied over the biome data only to an otherwise unchanged copy. Only the Biomes tag should have been added, nothing else modified. My script also ran into issue #42. World Download to make sure I didn't mess other things up.

macfreek commented 12 years ago

@stumpylog I hope to find some time to fix #42. Could you upload your script to your repository (or email it to me; my email address is listed at http://www.macfreek.nl/freek/)

stumpylog commented 12 years ago

@macfreek I've added the script I made to a branch with commit 3ae35064f7b0b14ade14b93fe1291d0fdf16d0f8.

macfreek commented 12 years ago

Thanks.