Skip to content

MMD world-generation engine

MMD OreSpawn 4

One safe, declarative engine for ores, geology, underground deposits, biomes, world materials, retrogen, and complete modpack world profiles.

Passiveuntil you opt in
Provider-drivenmods own their content
World-awareevery world keeps its profile
ForgeMinecraft 1.18.2 & 1.19.4
Looking for the mod with creatures and dimensions? This is not that mod. MMD OreSpawn is a world-generation engine used by players, modpacks, and other mods.

What is OreSpawn 4?

OreSpawn 4 is the next generation of MMD's world-generation library. It takes the mature ore controls of OreSpawn 3, combines them with the powerful geology work developed for Mineralogy, and turns the result into a general-purpose platform that any mod or modpack can use.

The most important idea is separation of content from world-generation policy. A metal mod can own its copper, tin, and silver blocks while OreSpawn decides how they are distributed. Mineralogy can supply dozens of rocks and geological regions without keeping a private worldgen engine. A total-conversion mod can contribute biomes, surfaces, aquifer fluids, snow, and ice. A pack author can then tune all of those contributions as one coherent world.

OreSpawn itself is deliberately passive. Simply installing it does not replace stone, remove vanilla ores, or change the Nether. A provider mod, a modpack profile, or a player using the Create World editor must choose what it should do.

Current OS4 builds

OreSpawn 4.0.1 beta builds are available for Minecraft 1.18.2 and Minecraft 1.19.4 on Forge. OreSpawn 3.3.1 remains available for older Minecraft 1.12.2 packs.

Why OS4 is such a big step forward

OreSpawn 3 was already much more capable than a simple “spawn this ore” utility. It supported multiple deposit patterns, weighted outputs and replacement blocks, biome filtering, fractional frequency, and retrogen. OS4 preserves that heritage and its configuration intent, but moves the whole system into a modern, provider-owned model.

Mineralogy then proved that a worldgen engine could do much more than scatter ores. Its Sky and Cyano geology modes created rock strata, geological regions, biome influence, custom ore hosts, and fluid deposits. The limitation was not the engine's ambition; it was that the engine belonged to one content mod.

OS4 makes those ideas reusable:

AreaOreSpawn 3Mineralogy's engineOreSpawn 4
Main roleConfigurable ore placementGeology for Mineralogy's rocks and oresShared world-generation platform
Content ownershipSpawn files named blocks to placeMineralogy supplied the content and engineEvery provider owns its declarations; OreSpawn owns execution
World scopeLegacy dimensions, heights, patterns, and biome filtersRich Overworld geology with optional ore managementOres, strata, deposits, biomes, materials, custom dimensions, and templates
ConfigurationPrimarily legacy JSON/config filesMineralogy global and per-world geology settingsProviders, pack overrides, global defaults, templates, Create World edits, and self-contained world snapshots
SafetyPack authors coordinated generators manuallyIntegrations were tied to Mineralogy's lifecycleProvider validation, fail-closed overrides, ownership checks, and takeover status prevent silent duplication
Player experiencePowerful but configuration-ledMineralogy supplied its own geology editorA shared Create World editor, recommended defaults, tooltips, and an in-game guide
OS4 does not make Mineralogy obsolete. Mineralogy remains the content-rich geology mod: it supplies real-world rocks, building blocks, ores, geomes, and recommended settings. OS4 is the reusable engine underneath. Install Mineralogy for the complete geological experience; use OreSpawn directly when you want to design the rules yourself or integrate another mod.

The result is a single worldgen language that can describe a tiny ore-only mod, a carefully balanced expert pack, Mineralogy's complete rock system, or a dimension whose terrain and fluids are unlike the Overworld.

Ways to use OreSpawn

01

Build a solo world

Start passive, then opt in through OreSpawn... on the Create World screen. Use installed blocks—or a balanced starter set of vanilla stone, deepslate, granite, diorite, andesite, and tuff—to design strata and ore placement without installing a full geology content mod.

02

Run a provider mod

Install a mod such as Mineralogy or Base Metals. Its provider supplies sensible defaults; OreSpawn validates them, merges them into the world profile, and performs the generation. Ore-only providers do not need to enable rock strata.

03

Author a modpack

Tune providers without editing their jars, create named templates, manage vanilla ores, choose formation styles, and ship a reproducible global profile. Every world receives its own complete snapshot.

04

Develop a content mod

Package a declarative provider JSON or enqueue an immutable provider through Forge IMC. Keep your blocks and gameplay in your mod while OreSpawn handles dimensions, hosts, patterns, validation, and migration.

05

Create a total conversion

Add provider biomes, broad biome palettes, custom surfaces, aquifer fluids, deep fluids, snow, ice, rock strata, and underground deposits. Unconfigured dimensions keep their original generator.

06

Integrate with live geology

Query the active profile, sample the exact production geology for gameplay decisions, or register a custom ore-pattern type whose settings are decoded and compiled before generation.

One profile, clear ownership

OS4 builds a new world's settings in a deliberate order. Later stages may tune earlier defaults, and the final result is copied into the world:

Provider defaultsPack overridesGlobal profileSelected templateCreate World editsWorld snapshot

That snapshot lives at <world>/serverconfig/orespawn-worldgen.json. It travels with the world, so a single-player world moved to a dedicated server keeps the same geology when the same provider mods are installed.

Provider ownership is just as important. A present pack override is authoritative; if it is malformed, that provider becomes inactive instead of silently falling back to different defaults. A content mod should disable its native generator only when OreSpawn reports that its takeover is active. Bad IDs or invalid hosts therefore fail safely rather than quietly removing—or duplicating—ores.

What OS4 can generate

Rock strata and geomes

Broad geological formations use sedimentary, metamorphic, intrusive igneous, and volcanic families. Geomes influence which families and rocks belong in a region, while the surface biome can bias geology without forcing identical borders.

Ores with real placement rules

Configure dimensions, Y ranges, frequency, fixed or ranged block budgets, height curves, cave exposure, rock families, blocks, tags, geomes, and biome filters. Outputs and hosts may both be weighted.

Underground fluid deposits

Create covered pockets of water, lava, oil, brine, or another installed fluid. Radius, vertical shape, lobes, solid roof, solid shell, hosts, biomes, and depth are independently configurable.

Biomes and world materials

Augment an existing biome source or replace eligible regions with provider biomes. Define top, filler, underwater, and ceiling materials, then optionally change aquifer fluids, deep fluids, snow, and ice.

Dimensions and templates

Target the Overworld, Nether, End, or installed custom dimensions by registry ID. Named templates can describe a complete optional world style, and total-conversion providers may offer a fresh-world default.

Managed ores and retrogen

Optionally replace claimed vanilla ore features, flatten bedrock, and apply bounded ore or bedrock retrogen. Rock strata are never retro-generated, protecting existing terrain from a surprise rewrite.

Sky and Cyano geology

OS4 retains two geology experiences:

  • Sky is the modern geome engine. It creates broad formations whose reach, thickness, waviness, edge detail, and continuity can be tuned independently.
  • Cyano (Legacy) preserves the classic Mineralogy layer style for players and worlds that prefer it.

The modern stable_layers algorithm is recommended for new worlds. The older sky_v1 algorithm remains available so migrated worlds can retain their established shape.

Ore patterns

Every ore rule chooses a deposit shape. The built-in patterns are:

PatternBest for
CompactDense, familiar, face-connected deposits
VeinWandering mineralised paths through rock
Normal cloudBroad, diffuse deposits
PrecisionDeterministic compact filling
ClustersGroups of nearby connected nodes
Under fluidsDeposits that favour host blocks beneath a configured fluid

Height distributions can be uniform, centre-peaked, deep-biased, or split between uniform and deep-biased placement. discard_chance_on_air_exposure controls how much ore remains hidden from cave walls. Pattern settings are compiled while the profile is baked, so generation does not repeatedly parse configuration.

For players and server owners

Creating a world

  1. Open OreSpawn... from the Create World flow.
  2. Start with Recommended Defaults when provider mods are installed.
  3. Choose a complete template or customise rocks, formations, ores, fluids, biomes, and world materials.
  4. Use the built-in Help & Guide and control tooltips whenever a setting is unfamiliar.
  5. Press Done and create the world normally.

Changes to a profile normally affect newly generated chunks. If you alter a world later, travel beyond explored terrain to see the new settings.

Important files and commands

Location or commandPurpose
config/orespawn-worldgen.jsonDefaults used when new worlds are created
<world>/serverconfig/orespawn-worldgen.jsonThe complete, self-contained profile for one world
config/<modid>-orespawn.jsonA modpack's authoritative provider override
config/orespawn-guide/The documentation bundle exported by OreSpawn
/orespawn statusShow active mode, rules, providers, and retrogen state
/orespawn reloadReload providers and the active profile
/orespawn retrogen [radius]Queue bounded retrogen for loaded chunks
/orespawn dump-biomesExport the biome IDs visible to the installation

For mod and modpack authors

Declarative first

Most mods need no custom world-generation code. Package a provider at:

text
src/main/resources/data/<modid>/orespawn/provider.json

A minimal ore-only provider can be as small as:

json
{
  "schema_version": 4,
  "provider_modid": "examplemod",
  "provider_revision": 1,
  "ores": {
    "examplemod:ore/tin": {
      "block": "examplemod:tin_ore",
      "enabled": true,
      "dimensions": {
        "minecraft:overworld": {
          "enabled": true,
          "min_y": -16,
          "max_y": 96,
          "frequency": 6.0,
          "min_quantity": 4,
          "max_quantity": 11,
          "pattern": "vein",
          "height_distribution": "triangle",
          "host_tags": ["minecraft:stone_ore_replaceables"]
        }
      }
    }
  }
}

That definition places tin in ordinary Overworld ore hosts. It does not enable rock strata, replace biomes, or require Mineralogy.

Provider schema 4 can additionally declare rocks, geomes, biome rules, terrain dimensions, templates, fluid deposits, biome palettes, and dimension materials. JSON Schemas and complete examples are included in the normal OreSpawn jar and exported into config/orespawn-guide/ on first load.

Use the Java API when it adds value

Mods that need programmatic construction can submit an immutable WorldgenProvider through InterModEnqueueEvent:

java
OreSpawnApi.enqueue(provider);

Only zone.moddev.mc.orespawn.api is supported API. The normal OreSpawn jar is both the compile-time and runtime dependency; it is not intended to be shaded into another mod.

The API also provides:

  • provider status and safe native-generation takeover;
  • a read-only view of the active server profile;
  • a production geology sampler for gameplay and compatible features;
  • provider-owned fluid deposits, biome palettes, and world materials;
  • a registry for custom pattern types that compile before generation.

Pack overrides and templates

A pack may override one provider with config/<modid>-orespawn.json. Overrides are ideal for changing heights, quantities, patterns, dimensions, or hosts without repacking the provider mod.

Templates are named profile overlays. They can configure formations, rocks, geomes, biome influences, ores, fluids, terrain dimensions, suppression, retrogen, and bedrock as one selectable world style. Switching templates starts from the merged provider/pack baseline, so settings from the previous template do not leak into the next one.

Moving from OS3 or Mineralogy

OS4's migration is designed to preserve intent rather than merely make old JSON parse.

It can import:

  • Mineralogy 6's config/mineralogy-geomes.json;
  • legacy files under config/orespawn3/ and config/orespawn/;
  • compatible flags from config/orespawn.cfg;
  • older global, world, and provider schema revisions.

The migrator understands OS3's ranged size ± variation, exclusive maximum height, fractional frequency, patterns, weighted blocks, biome filters, retrogen flags, and “all ordinary dimensions except Nether and End” behaviour. When a legacy output uniquely matches an installed provider rule, the user's values move under that provider's stable ID instead of creating a duplicate. Ambiguous entries are kept under a legacy ID and called out for review.

Migration is non-destructive: source files are retained, target profiles are backed up before persisted revisions, and a report is written to config/orespawn-migration/migration-report.txt. Existing rock strata are not rewritten.

Fast because world generation has to be

OS4 resolves registry IDs, tags, dimensions, blocks, fluids, biomes, weights, patterns, and provider ownership before chunk generation. Its hot paths do not read JSON, call provider code, look up registry names, or log per block.

Compact deposits use pre-baked connected shapes. Unconfigured dimensions skip immediately. Biome palettes operate on cached holders and primitive weights. Retrogen is revision-marked, bounded, and scheduled a limited number of chunks per tick.

This design matters because OS4 is not only placing a few ore veins. In a full provider setup it may classify geology and replace terrain throughout every new chunk, so predictable work and fail-safe validation are first-class features.

Start exploring

Modding Minecraft Together! (Not affiliated with Mojang, Minecraft or Microsoft)