{ object "minecraft:climate"[0,7] : opt // Describes temperature, humidity, precipitation, etc. Biomes without this component will have default values. { float "temperature" : opt float "downfall" : opt float "red_spores" : opt float "blue_spores" : opt float "ash" : opt float "white_ash" : opt array "snow_accumulation"[2] : opt { float "[0..0]" float "[1..1]" } } object "minecraft:overworld_height"[0,2] : opt // Noise parameters used to drive terrain height in the Overworld. { array "noise_params"[2] : opt { float "[0..0]" float "[1..1]" } string "noise_type"<"stone_beach", "deep_ocean", "default", "default_mutated", "lowlands", "river", "ocean", "taiga", "mountains", "highlands", "mushroom", "less_extreme", "extreme", "beach", "swamp"> : opt } object "minecraft:forced_features"[0,1] : opt // Force specific decorative features (trees, plants, etc.) to appear in this Biome, regardless of normal decoration rules. { array "" : opt { object "" : opt { molang "iterations" // Number of scattered positions to generate object "scatter_chance" : opt // Probability numerator / denominator that this scatter will occur. Not evaluated each iteration; either no iterations will run, or all will. { int "numerator"<1-*> int "denominator"<1-*> } molang "scatter_chance" : opt // Probability (0-100] that this scatter will occur. Not evaluated each iteration; either no iterations will run, or all will. enumerated_value "coordinate_eval_order"<"xyz", "xzy", "yxz", "yzx", "zxy", "zyx"> : opt // The order in which coordinates will be evaluated. Should be used when a coordinate depends on another. If omitted, defaults to "xzy". molang "x" : opt // Expression for the coordinate (evaluated each iteration). Mutually exclusive with random distribution object below. object "x" : opt // Distribution for the coordinate (evaluated each iteration). Mutually exclusive with Molang expression above. { enumerated_value "distribution"<"uniform", "gaussian", "inverse_gaussian", "fixed_grid", "jittered_grid"> // Type of distribution - uniform random, gaussian (centered in the range), or grid (either fixed-step or jittered) int "step_size"<1-*> : opt // When the distribution type is grid, defines the distance between steps along this axis int "grid_offset"<0-*> : opt // When the distribution type is grid, defines the offset along this axis array "extent"[2] { molang "[0..0]" : opt // Lower bound (inclusive) of the scatter range, as an offset from the input point to scatter around molang "[1..1]" : opt // Upper bound (inclusive) of the scatter range, as an offset from the input point to scatter around } } molang "z" : opt // Expression for the coordinate (evaluated each iteration). Mutually exclusive with random distribution object below. object "z" : opt // Distribution for the coordinate (evaluated each iteration). Mutually exclusive with Molang expression above. { enumerated_value "distribution"<"uniform", "gaussian", "inverse_gaussian", "fixed_grid", "jittered_grid"> // Type of distribution - uniform random, gaussian (centered in the range), or grid (either fixed-step or jittered) int "step_size"<1-*> : opt // When the distribution type is grid, defines the distance between steps along this axis int "grid_offset"<0-*> : opt // When the distribution type is grid, defines the offset along this axis array "extent"[2] { molang "[0..0]" : opt // Lower bound (inclusive) of the scatter range, as an offset from the input point to scatter around molang "[1..1]" : opt // Upper bound (inclusive) of the scatter range, as an offset from the input point to scatter around } } molang "y" : opt // Expression for the coordinate (evaluated each iteration). Mutually exclusive with random distribution object below. object "y" : opt // Distribution for the coordinate (evaluated each iteration). Mutually exclusive with Molang expression above. { enumerated_value "distribution"<"uniform", "gaussian", "inverse_gaussian", "fixed_grid", "jittered_grid"> // Type of distribution - uniform random, gaussian (centered in the range), or grid (either fixed-step or jittered) int "step_size"<1-*> : opt // When the distribution type is grid, defines the distance between steps along this axis int "grid_offset"<0-*> : opt // When the distribution type is grid, defines the offset along this axis array "extent"[2] { molang "[0..0]" : opt // Lower bound (inclusive) of the scatter range, as an offset from the input point to scatter around molang "[1..1]" : opt // Upper bound (inclusive) of the scatter range, as an offset from the input point to scatter around } } feature_reference "places_feature" string "identifier" } } } object "minecraft:ignore_automatic_features" : opt // No features will be automatically attached to this Biome, only features specified in the minecraft:forced_features component will appear. object "minecraft:surface_parameters"[0,6] : opt // Control the blocks used for the default Minecraft Overworld terrain generation. { "top_material" // Controls the block type used for the surface of this biome. "mid_material" // Controls the block type used in a layer below the surface of this biome. "sea_floor_material" // Controls the block type used as a floor for bodies of water in this biome. "foundation_material" // Controls the block type used deep underground in this biome. "sea_material" // Controls the block type used for the bodies of water in this biome. int "sea_floor_depth" // Controls how deep below the world water level the floor should occur. } object "minecraft:surface_material_adjustments"[0,1] : opt // Specify fine-detail changes to blocks used in terrain generation (based on a noise function) { array "adjustments" : opt // All adjustments that match the column's noise values will be applied in the order listed. { object "" { object "materials" { "top_material" : opt // Controls the block type used for the surface of this biome when this adjustment is active. "mid_material" : opt // Controls the block type used in a layer below the surface of this biome when this adjustment is active. "sea_floor_material" : opt // Controls the block type used as a floor for bodies of water in this biome when this adjustment is active. "foundation_material" : opt // Controls the block type used deep underground in this biome when this adjustment is active. "sea_material" : opt // Controls the block type used in the bodies of water in this biome when this adjustment is active. } array "noise_range"[2] : opt // Defines a range of noise values [min, max) for which this adjustment should be applied. { float "[0..0]"<-1.000000-1.000000> float "[1..1]"<-1.000000-1.000000> } array "height_range"[2] : opt // Defines a range of noise values [min, max] for which this adjustment should be applied. { molang "[0..0]" molang "[1..1]" } float "noise_frequency_scale" : opt // The scale to multiply by the position when accessing the noise value for the material adjustments. } } } object "minecraft:swamp_surface"[0,6] : opt // Similar to overworld_surface. Adds swamp surface details. { "top_material" // Controls the block type used for the surface of this biome. "mid_material" // Controls the block type used in a layer below the surface of this biome. "sea_floor_material" // Controls the block type used as a floor for bodies of water in this biome. "foundation_material" // Controls the block type used deep underground in this biome. "sea_material" // Controls the block type used for the bodies of water in this biome. int "sea_floor_depth" // Controls how deep below the world water level the floor should occur. } object "minecraft:frozen_ocean_surface"[0,6] : opt // Similar to overworld_surface. Adds icebergs. { "top_material" // Controls the block type used for the surface of this biome. "mid_material" // Controls the block type used in a layer below the surface of this biome. "sea_floor_material" // Controls the block type used as a floor for bodies of water in this biome. "foundation_material" // Controls the block type used deep underground in this biome. "sea_material" // Controls the block type used for the bodies of water in this biome. int "sea_floor_depth" // Controls how deep below the world water level the floor should occur. } object "minecraft:mesa_surface"[0,10] : opt // Similar to overworld_surface. Adds colored strata and optional pillars. { "top_material" // Controls the block type used for the surface of this biome. "mid_material" // Controls the block type used in a layer below the surface of this biome. "sea_floor_material" // Controls the block type used as a floor for bodies of water in this biome. "foundation_material" // Controls the block type used deep underground in this biome. "sea_material" // Controls the block type used for the bodies of water in this biome. int "sea_floor_depth" // Controls how deep below the world water level the floor should occur. "clay_material" "hard_clay_material" bool "bryce_pillars" bool "has_forest" } object "minecraft:nether_surface" : opt // Use default Minecraft Nether terrain generation. object "minecraft:the_end_surface" : opt // Use default Minecraft End terrain generation. object "minecraft:capped_surface"[0,5] : opt // Generates surface on blocks with non-solid blocks above or below. { array "floor_materials"[1,*] // Materials used for the surface floor. { block_reference "" } array "ceiling_materials"[1,*] // Materials used for the surface ceiling. { block_reference "" } block_reference "sea_material" // Material used to replace air blocks below sea level. block_reference "foundation_material" // Material used to repalce solid blocks that are not surface blocks. block_reference "beach_material" : opt // Material used to decorate surface near sea level. } object "minecraft:overworld_generation_rules"[0,5] : opt // Control how this biome is instantiated (and then potentially modified) during world generation of the overworld. { biome_reference "hills_transformation" : opt array "hills_transformation"[1,*] : opt { biome_reference "" : opt array ""[2] : opt { biome_reference "[0..0]" int "[1..1]" } } biome_reference "mutate_transformation" : opt array "mutate_transformation"[1,*] : opt { biome_reference "" : opt array ""[2] : opt { biome_reference "[0..0]" int "[1..1]" } } array "generate_for_climates" : opt // Controls the world generation climate categories that this biome can spawn for. A single biome can be associated with multiple categories with different weightings. { array ""[2] { enumerated_value "[0..0]"<"medium", "warm", "lukewarm", "cold", "frozen"> // Name of a climate category int "[1..1]" // Weight with which this biome should be selected, relative to other biomes in the same category } } biome_reference "river_transformation" : opt array "river_transformation"[1,*] : opt { biome_reference "" : opt array ""[2] : opt { biome_reference "[0..0]" int "[1..1]" } } biome_reference "shore_transformation" : opt array "shore_transformation"[1,*] : opt { biome_reference "" : opt array ""[2] : opt { biome_reference "[0..0]" int "[1..1]" } } } object "minecraft:multinoise_generation_rules"[0,5] : opt // Controls how this biome is instantiated (and then potentially modified) during world generation of the nether. { float "target_temperature" : opt // Temperature with which this biome should selected, relative to other biomes. float "target_humidity" : opt // Humidity with which this biome should selected, relative to other biomes. float "target_altitude" : opt // Altitude with which this biome should selected, relative to other biomes. float "target_weirdness" : opt // Weirdness with which this biome should selected, relative to other biomes. float "weight" : opt // Weight with which this biome should selected, relative to other biomes. } object "minecraft:legacy_world_generation_rules" : opt // Additional world generation control applicable only to legacy limited worlds. object "[a-z0-9_.:]+" : opt // Attach arbitrary string tags to this biome }