From a single city block to a whole continent, in one build. Built on a fork of Arnis by louis-e.
Windows · macOS · Linux · Latest: 1.8.1 Height · Docs · Live demo
Arnis builds one area at a time. Meld runs it over a whole region. Draw an area on a map and Meld splits it into tiles, builds them in parallel with a custom Arnis fork, and joins them into one world. Every seam lands on a Minecraft region boundary, so the join is exact. About 2x faster than a single Arnis pass on the same area, and it scales to areas a single pass cannot finish.
git clone https://github.com/Teddy563/meld
cd meldThen start it. Windows: double-click meld.bat. macOS: double-click meld.command (first
time: right-click, Open). Linux: run ./meld.sh.
The launcher makes a virtual environment, installs the dependencies, fetches the matching arnis
binary, and opens http://127.0.0.1:5630. Only Python 3.9+ is required. Run
python meld_launch.py --check to see what is installed without changing anything.
Prefer manual: pip install -r requirements.txt then python server.py, with an arnis binary
next to it. Prebuilt binaries: Teddy563/arnis releases.
Then: draw an area, set the cell size, press Generate world.
Scale
| Parallel tiles | Builds many Arnis instances at once, bounded by a worker pool. docs |
| Region perfect merge | Cell edges snap to Minecraft region boundaries, so tiles join exactly. |
| One elevation lock | A single global height range and seed, so terrain matches across every border. |
| Resume and retry | Re-run only unfinished cells, or click one cell to rebuild it. |
| Recommend | One click sets cell size and workers for your machine. Keep workers x threads at or under your cores. |
| Live tuning | Change workers, threads and CPU budget mid-run. No restart. |
| Projects and queue | Keep many worlds side by side, group them in folders, and render a whole folder one after another. |
| Benchmark report | Every run writes an HTML report: machine specs, CPU and RAM graphs, per-worker timeline. |
The world itself
| Build height (1.8.1) | Pick your Minecraft version and let the world's height follow the terrain. Mountains keep their peaks, and ground can go below vanilla's -64. docs |
| Farmlands (1.8.0) | Field parcels that follow the roads, one crop per plot at varying growth, meadows, tracks, hay bales, rocks and bushes. |
| Caves (1.5.0) | One toggle carves a full cave system into every cell: caverns, tunnels, underground water, ores, geodes, eight themed cave biomes. docs |
| Region trees (1.4.0) | 1,959 hand-made models across 10 world regions by paleozoey, placed by location, five size tiers. docs |
| Terrain height and snow (1.4.0) | Make mountains taller without widening the map. Snow by real latitude, by peak percentage, or at a fixed height. docs |
| Props and facades (1.6.0) | Boats, cars, cranes, tractors and more placed at real map features, plus six skyscraper styles and editable chest loot. |
| Buildings and roads | Toggle buildings off for a roads and land cover world. Road detail modes keep small scales legible. |
| LOD ready | Chunk lighting is baked, so Distant Horizons and Voxy render distant chunks lit. |
Map data
| Shared OSM prefetch | The area is downloaded once and reused by every cell, so parallel runs never hit the rate limit. |
| OSM data packs | Bake a region from a local .pbf file and generate with no Overpass calls at all. |
| Elevation packs | Download a region's elevation once into a shared cache, then build offline. docs |
| Reusable cache | Tiles are cached on a fixed grid, so overlapping selections share them. |
| Height preview | See cached elevation on the map. Red means a tile is not cached yet. |
| Hole repair | Rebuilds the source data's no-data gaps that showed as dark bands and dips in game. |
Shipping the world
| Export and compression | zip and tar.zst (~1.85x), Linear (~4.85x, servers), or B_Linear. The raw world is never deleted before the copy verifies. |
| Server setup | World to a running Leaf server in five confirmed steps, with hash-verified downloads, a live console and a crash watchdog. docs |
| Border and zones | Turn a country into WorldGuard regions, point files and a ready Skript, then trim the world to that border. docs |
- Origin. One lat/lon snapped to a region corner. Every cell measures from it.
- Survey. Lock one elevation range and seed for the whole area.
- Plan. Split the selection into region aligned cells.
- Prefetch. Download the map data once, then feed it to every cell.
- Generate. Build cells in parallel with the Arnis fork.
- Merge. Write each cell's own regions into the master world, with a guard against overlap.
More detail: how it works and the Arnis fork.
- Generation is CPU bound. Keep workers x threads at or under your cores. Going over slows the build. Disk speed and RAM are secondary limits that Recommend accounts for.
- One Arnis binary is required, named
arnison macOS and Linux. The app says so on startup if it is missing.
- Docs and the live demo
- CHANGELOG.md for the full history, RELEASE-NOTES.md for highlights
docs/README-detailed.mdis the long form of this pagedocs/holds the per-release deep dives
Built on the open source Arnis generator by louis-e. Meld drives a custom Arnis fork for the shared OSM prefetch and the position based rendering that makes tiles line up. Respect the upstream Arnis license.
Tree models by paleozoey. Meld bundles and places them with attribution; the artistry is theirs.
Not affiliated with Mojang AB or Minecraft.