// vertical range (meld 1.8.1)

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.

ConstraintLimit
World floor (min_y)−2032 to 2031, a multiple of 16
World height16 to 4064, a multiple of 16
Highest buildable blockY 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:

  1. 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.
  2. 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.
  3. 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.
  4. 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:

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:

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

  1. Open Settings → Arnis.
  2. Pick your Minecraft version. Leave it on Default if you are not sure. That is the generator's built-in.
  3. Tick Extend build height. Two sliders appear: Headroom above peak and Underroom below floor.
  4. Optionally set World floor Y / World ceiling Y for an exact range.
  5. 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

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.

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.

Try it in the demo