Maybe I could create a Python script that writes abstract representations of a world to a json file or other, and then a tiny Java program that translate it into NBT.
Here, I did the Java part for you. Now you can create Minecraft worlds with pure Python.
So here's an example JSON file:
{
"blocks" :
[
[
[ 7, 7, 7 ],
[ 7, 7, 7 ],
[ 7, 7, 7 ]
],
[
[ 1, 1, 1 ],
[ 1, 1 ],
[ 1, 1, 1 ]
],
[
[ 1, 1, 1 ],
[ 1, 1, 1 ],
[ 1, 1, 1 ]
],
[
[ 1, 1, 1 ],
[ 1, 1, 1 ],
[ 1, 1, 1 ]
],
[
[ 2, 2, 5 ],
[ 2, 2, [5,1], [5,0]],
[ 2, 2, 2],
]
],
"biomes" :
[
[1, 1, 1],
[1, 5, 1],
[5, 5, 1],
],
"decorate" : false
}
Save it as world.txt in the download's main folder, then run convert.sh (if you're on Windows, rename that to convert.bat and then run that), and you'll automatically get your region files written into your region folder.
Place the region folder into a fresh Minecraft save, and there you go:
The biomes look wrong because visual biome smoothing, but otherwise everything is there, and you can now make awesome generated structures in pure Python (except tile entities like chests and furnaces, you'll have to place those manually for now). Oh, and I only made all this so you can do awesome stuff with it, so you better do awesome stuff with it.