Build height
Minecraft's default world is 384 blocks tall, from Y −64 to Y 319. Real terrain is not. At 1:1, Yosemite's valley walls alone are taller than that, and any mountain range you build at full scale gets its peaks sheared off at the ceiling.
Meld 1.8.1 lets a world's vertical range follow the terrain it actually holds. You pick the Minecraft version you are building for, turn on Extend build height, and the generator works out the smallest legal world that fits your region, then writes a datapack declaring exactly that. Terrain can reach far above vanilla's ceiling, and for the first time it can also go below vanilla's floor.
What the engine actually allows
These are not settings. They come from the way Minecraft packs a Y coordinate into 12 signed bits and stores a chunk section index in a signed byte, and nothing raises them: no datapack, no plugin, no server flag. Only a Cubic Chunks-class rewrite of the chunk format does, and that breaks vanilla clients.
| Constraint | Limit |
|---|---|
World floor (min_y) | −2032 to 2031, a multiple of 16 |
| World height | 16 to 4064, a multiple of 16 |
| Highest buildable block | Y 2031 (min_y + height may not pass 2032) |
| Chunk section index | −128 to 127 |
Meld enforces every one of these in a single place, and a violation is always a refusal with a reason, never a silent clamp. That matters more than it sounds: a silent clamp here is how someone regenerates hundreds of gigabytes before noticing the mountains are flat on top.
How the world gets sized
When you enable extended height, the generator fits the world to your region's real elevation range, in this order:
- The smallest legal height, never the maximum by default. Every extra 16 blocks is another chunk section in every column. Lighting, heightmaps and region files all scale with it.
- Reserved room at both ends. Headroom above peak keeps space for trees and buildings; Underroom below floor keeps space for caves and water carving. Both are sliders, not buried constants.
- Compression only as a last resort. If the terrain will not fit even at 4064 blocks, the vertical scale is squashed and the ratio is reported. Silent rescaling is the worst failure this system can have: the world looks right and is not to scale.
- Rounding to multiples of 16 happens once, at the end, outward, never mid-calculation.
If your terrain fits inside vanilla's range anyway, you get vanilla geometry and no datapack at all: no experimental-features prompt, and no permanent pack, for nothing gained.
Below the floor
Extended height used to mean "taller". It now genuinely means "deeper" too. Set Underroom below floor past 8 blocks and the world's floor drops below vanilla's −64, with solid rock filled down to it, not declared-but-empty space you fall through. In testing, 96 blocks of underroom put real ground at Y −160.
Setting the range by hand
World floor Y and World ceiling Y let you state the range outright instead of deriving it. Leave them blank for automatic. They are checked, not clamped: a ceiling below your terrain's peak, or a floor above its base, is refused and tells you what it would have cost, rather than quietly losing the parts that did not fit.
Picking a Minecraft version
The Minecraft version selector is not cosmetic. It decides three things that must all be right or the world misbehaves:
- The DataVersion stamped into every chunk, which is how the game decides whether to run its upgrade pass over your world.
- Whether extended height may be declared at all. That arrived in 1.17. Pick something older and the toggle is disabled with the reason shown inline, not hidden.
- The shape of the datapack. Minecraft 26.x replaced the pack metadata format that 1.21.x used; write the old shape for a 26.x client and it rejects the pack outright and the world will not open.
Only versions whose constants have been read out of a real world or a real pack are offered. Nothing in that table is written from memory, and every entry records where its numbers came from. An unrecognised version is refused with the list of the ones that are known, because a wrong DataVersion produces a world that loads and then quietly misbehaves, the hardest kind of problem to trace back.
Staying seam-free across cells
Meld builds big worlds as many independent cells, so anything that decides vertical geometry has to reach the same answer in every one of them. Two things make that true:
- One profile per world. Floor, height, datum, vertical scale and target version are computed once from the global elevation lock, so every cell declares identical geometry. If cells disagreed here, only one of their datapacks would survive the merge and the rest of the world would not match it.
- A fixed water-carve clearance. The datum reserves room beneath the terrain for the deepest possible water carve. That used to be measured from each cell's own land cover, so a cell holding a lake or coastline placed its terrain about 5 blocks above an inland neighbour, and the shared border became a step you could see from the air. Meld now sends the same clearance to every cell.
The merge carries the datapack into the finished world too. It previously copied region files and level.dat but not the pack that level.dat referenced, which left a merged world asking for a datapack that was not there, and the game silently loaded it at vanilla height, discarding everything above Y 319.
How to use it
- Open Settings → Arnis.
- Pick your Minecraft version. Leave it on Default if you are not sure. That is the generator's built-in.
- Tick Extend build height. Two sliders appear: Headroom above peak and Underroom below floor.
- Optionally set World floor Y / World ceiling Y for an exact range.
- Generate. The build log states the resolved geometry once, the Y range, the sea-level Y, the heightmap width and whether the terrain was compressed.
Everything here is additive. A project that never opens these settings builds exactly as it did before, with no datapack and vanilla geometry.
Three things worth knowing first
- The datapack is permanent. A world generated with extended height cannot have it removed, the chunks were written against that geometry. Minecraft also prompts for Experimental Features the first time you open such a world.
- The terrain datum moved. Inland areas now sit at Y −56 rather than Y −62. A fresh world is unaffected, but re-rendering cells into an existing world will place them 6 blocks higher, do not mix old and new cells in one world.
- Underroom triggers a datapack easily. With the default 16 blocks and Meld's terrain datum, almost every project ends up needing a floor below vanilla's. Set underroom to 8 if you would rather only get a datapack when the terrain truly needs one.
How this was verified
A 4096×4096-block slice of Yosemite National Park at 1:4, generated as four independent cells, the tiled case, where geometry disagreements would show, then merged the way Meld merges.
- All four cells declared the same world (Y −80 to 831), chose the same datum and stamped the same DataVersion.
- Every chunk section landed inside the declared world.
- Terrain reached Y 559, 240 blocks above vanilla's ceiling.
- The merged world opens in Minecraft 26.1.2 with the generated height datapack active.
That last line is the one that counts. Two of the bugs fixed on the way to it were invisible to every file-level check, the files were internally consistent and said exactly what was intended, and only launching the game surfaced them. An extended-height change is not finished until a world has actually been opened.