Caves
Until now, a Meld world was solid rock below the surface. The Meld Depths release (Meld 1.5) changes that with one switch: turn on Caves in Settings and every cell is generated with a full cave system carved into it — caverns, tunnels, underground rivers and lakes, ores, geodes and themed cave biomes, all the way down to the deepslate floor.
What it is
The cave system lives in the Arnis fork (its --caves flag) and is a from-scratch Rust port of Minecraft 1.21.8 cave worldgen, carved directly into the filled ground while the cell generates. It is not a datapack, not a post-process on the finished world, and not a copy of vanilla chunks: the fork evaluates the same kind of noise density field vanilla uses and carves the result out of Meld's real-world terrain.
Because it runs at generation time, caves exist everywhere under your world from the moment the build finishes — under the city, under the mountains, under the rivers — and they respect the world's surface: cave entrances taper near open sky instead of shearing the landscape open.
How the caves take shape
- Cheese caverns — the big rooms. A 3-D noise field decides where rock gives way to open cavern, sampled with vanilla's own 4×8×4 cell interpolation so walls curve the way vanilla walls curve.
- Spaghetti tunnels — the long winding passages that connect caverns into a network you can actually traverse.
- Noodle worms — the tight crawl-spaces that make the deep feel risky.
- Carvers and ravines — on top of the noise base, random-walk tunnel carvers bore player-scale tunnels and canyon carvers cut tall, narrow ravines.
- Entrances — near the surface the system shrinks and tapers, so the way in is a cave mouth, not a crater.
Water & lava
Underground water is placed by dedicated features, not by flooding — that is what keeps it believable:
- Pool caves. Multi-lobe rooms with contained, flat water — including occasional grand halls and coral-reef pool variants.
- Snake rivers. Long, winding underground rivers that run downhill, split into up to three streams, and pour into caves they meet only while descending — a river never leaks sideways or uphill through a wall.
- The deep lava sea. Below y=-54 the deepest floors carry contained lava with obsidian and magma rims, so the bottom of the world glows like it should.
Every build of the engine was gated on hard invariants measured by a region auditor: zero floating fluid blocks and zero direct water-lava contact, across the whole world.
Ores, geodes & stone variety
- The vanilla ore table: coal, iron, copper, gold, redstone, lapis, diamond and emerald, at vanilla-style depth bands, with deepslate ore variants below the stone-deepslate transition.
- Stone-variant patches (granite, diorite, andesite, tuff and friends) in three size tiers, so walls read as rock strata rather than uniform stone.
- Amethyst geodes with their calcite and smooth-basalt shells, cut correctly where caves intersect them.
The eight cave biomes
Roughly half the underground is themed, in zones with plain-rock buffer strips between them so each theme reads as a place you found:
| Biome | Where | What you see |
|---|---|---|
| Lush | anywhere | moss, glow berries, dripleaf, clay pools |
| Dripstone | anywhere | stalactites, stalagmites, dripstone columns |
| Deep dark | deep | sculk growth in the far depths |
| Mushroom | anywhere | mycelium floors, giant fungi |
| Ice | under mountains only | packed ice, spikes, snow drifts |
| Amethyst | mid-depth | budding clusters and crystal growth |
| Volcanic | the very bottom | basalt pillars, inset lava ponds, obsidian rims |
| Coral | in water pools | flooded rooms with living reef |
Formation packs
A cave-pack/ folder next to the arnis executable can supply schematic formations — ice spikes, dripstone columns, amethyst clusters, clay pool basins, snow piles — that the engine stamps onto cave floors and ceilings, themed by biome zone. Formations keep their block states, rotate randomly, sink into the ground so they never float, clip safely against walls, and never touch water or lava. Without the folder, caves still generate fully with procedural decoration only.
Choose your biome mix
With Caves on, Meld's Settings show a Cave biomes panel: every theme gets its own slider, 0–200% of its default share (0 turns a theme off, 200% roughly doubles its area; click the percentage to type an exact value, double-click a slider to reset it). Untouched sliders keep the world byte-identical to the default mix.
The Preview button renders the honest answer: the real zone layout for your world's seed and sliders, drawn in the panel as pixel-crisp patches in their actual noise shapes over gray rock — one view for the upper caves, one for the deep — with the measured percentage of every theme. Hover a biome in the list and only its patches stay lit. Sliders state intent; the preview reports what you actually get.
Depth rules always apply regardless of the sliders: volcanic only at the very bottom, deep dark only below the deepslate line, ice only under mountains, coral only in water pools.
Seam safety
The rule that makes Meld work everywhere applies underground too: every cave pass is a pure function of the seed and the position. Two adjacent cells generated on different workers, at different times, carve exactly the same caves along their shared edge. No stitching, no seam walls, no misaligned tunnels — the same guarantee the surface has had since 1.0.
How to use
- Open Settings and turn on Caves.
- Generate as usual. Caves apply to newly generated cells; already-merged cells keep their existing ground until you regenerate them.
- Optionally drop a
cave-pack/folder of.schemformations next toarnis.exefor the decorated look.
Command-line equivalent for a single fork run:
arnis --output-dir ./world --bbox <bbox> --terrain --caves
Caves imply solid ground fill (--fillground), so there is nothing else to configure. Pair the finished world with the one-click server and the whole underground is explorable with friends the same day.