Skip to content

Intro to Worldgen Modifiers

Apollo edited this page Sep 16, 2024 · 1 revision

Lithostitched introduces worldgen modifiers, a system where datapacks and mods can add, remove and replace values in worldgen files in a compat-friendly way.

Worldgen modifiers are stored in the lithostitched/worldgen_modifier folder of the data/(namespace) folder. This means that a worldgen modifier with the identifier foo:bar is stored in data/foo/lithostitched/worldgen_modifier/bar.json.

Here's an example worldgen modifier:

{
  "type": "lithostitched:remove_features",
  "predicate": {
    "type": "lithostitched:true"
  },
  "biomes": "#minecraft:is_overworld",
  "features": [
    "minecraft:disk_sand",
    "minecraft:disk_gravel",
    "minecraft:disk_clay"
  ],
  "step": "underground_ores"
}

All worldgen modifiers have two fields:

  • type: The id of the worldgen modifier type.
  • predicate: The modifier predicate to check when worldgen modifiers are being applied. The predicate must pass for the modifier to be applied. Optional field, if left empty the modifier will always apply.

Further fields are defined based on the type field. For the lithostitched:remove_features type, there's three additional fields: biomes, features, and step.