Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Minecraft:Biome definition: Difference between revisions

From SAS Gaming Wiki
SyncBot (talk | contribs)
Fix template calls: add MC/ prefix
SyncBot (talk | contribs)
Sync: updated from Minecraft
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{For|biome customization in resource packs {{MC/In|be}}|Resource pack#Biomes}}
{{For|client-side biome customization in resource packs {{in|be}}|Resource pack#Biomes}}
[[Minecraft:Biome]]s are stored as [[Minecraft:JSON]] files within a data pack in the path {{MC/Cd|data/<namespace>/worldgen/biome}} {{MC/In|je}} or in a [[Minecraft:behavior pack]] in the folder {{MC/Cd|<behavior pack>/biomes}} {{MC/In|be}}.
[[Minecraft:Biome]]s are stored as [[Minecraft:JSON]] files within a [[Minecraft:data pack]] in the path {{cd|data/<namespace>/worldgen/biome}} {{in|je}} or in a [[Minecraft:behavior pack]] in the folder {{cd|<behavior pack>/biomes}} {{in|be}}.


== JSON format ==
== JSON format ==
Line 7: Line 7:


<div class="treeview">
<div class="treeview">
* {{MC/Nbt|compound}}: The root object.
* {{nbt|compound}}: The root object.
**{{MC/Nbt|boolean|has_precipitation}}: Determines whether or not the biome has precipitation.
**{{nbt|boolean|has_precipitation}}: Determines whether or not the biome has precipitation.
**{{MC/Nbt|float|temperature}}: Controls gameplay features like grass and foliage color, and a height adjusted temperature (which controls whether raining or snowing occurs if {{MC/Nbt|boolean|has_precipitation}} is {{MC/Cd|true}}, and generation details of some features).
**{{nbt|float|temperature}}: Controls gameplay features like grass and foliage color, and a height adjusted temperature (which controls whether raining or snowing occurs if {{nbt|boolean|has_precipitation}} is {{cd|true}}, and generation details of some features).
** {{MC/Nbt|string|temperature_modifier}}: (optional, defaults to none) Either {{MC/Cd|none}} or {{MC/Cd|frozen}}. Modifies temperature before calculating the height adjusted temperature. If {{MC/Cd|frozen}}, makes some places' temperature high enough to rain (0.2).
** {{nbt|string|temperature_modifier}}: (optional, defaults to none) Either {{cd|none}} or {{cd|frozen}}. Modifies temperature before calculating the height adjusted temperature. If {{cd|frozen}}, makes some places' temperature high enough to rain (0.2).
** {{MC/Nbt|float|downfall}}: Controls grass and foliage color.
** {{nbt|float|downfall}}: Controls grass and foliage color.
** {{MC/Nbt|compound|effects}}: Ambient effects in this biome.
** {{nbt|compound|effects}}: Ambient effects in this biome.
*** {{MC/Nbt|int|water_color}}: (Required, but the normal value is 4159204) Decimal value converted from Hex color to use for water blocks and cauldrons.
*** {{nbt|int|water_color}}: (Required, but the normal value is 4159204) Decimal value converted from Hex color to use for water blocks and cauldrons.
*** {{MC/Nbt|int|foliage_color}}: (optional) Decimal value converted from Hex color to use for tree leaves and vines. If not present, the value depends on downfall and the temperature.
*** {{nbt|int|foliage_color}}: (optional) Decimal value converted from Hex color to use for tree leaves and vines. If not present, the value depends on downfall and the temperature.
*** {{MC/Nbt|int|dry_foliage_color}}: (optional) Decimal value converted from Hex color to use for leaf litter.
*** {{nbt|int|dry_foliage_color}}: (optional) Decimal value converted from Hex color to use for leaf litter.
*** {{MC/Nbt|int|grass_color}}: (optional) Decimal value converted from Hex color to use for grass blocks, short grass, tall grass, ferns, tall ferns, and sugar cane. If not present, the value depends on downfall and temperature.
*** {{nbt|int|grass_color}}: (optional) Decimal value converted from Hex color to use for grass blocks, short grass, tall grass, ferns, tall ferns, and sugar cane. If not present, the value depends on downfall and temperature.
*** {{MC/Nbt|string|grass_color_modifier}}: (optional, defaults to none) Can be {{MC/Cd|none}}, {{MC/Cd|dark_forest}} or {{MC/Cd|swamp}}.
*** {{nbt|string|grass_color_modifier}}: (optional, defaults to none) Can be {{cd|none}}, {{cd|dark_forest}} or {{cd|swamp}}.
** {{MC/Nbt|compound|attributes}}: (optional) Map of environment attributes that apply when in this biome.
** {{Nbt|compound|attributes}}: (optional) Map of [[Minecraft:environment attribute]]s that apply when in this biome.
** {{MC/Nbt|string}}{{MC/Nbt|compound}}{{MC/Nbt|list|carvers}}: {{json_ref|carver|carver definition|tag=1|no_single=1}} (Required, but can be empty)
** {{Nbt|string}}{{nbt|compound}}{{nbt|list|carvers}}: {{json_ref|carver|carver definition|tag=1|no_single=1}} (Required, but can be empty)
** {{MC/Nbt|list|features}}: List of generation steps (Can be empty). Usually there are 11 steps, but any amount is possible.
** {{nbt|list|features}}: List of generation steps (Can be empty). Usually there are 11 steps, but any amount is possible.
*** {{MC/Nbt|string}}{{MC/Nbt|compound}}{{MC/Nbt|list}} each entry of the list: {{MC/Json ref|placed feature|tag=1|inline=1|no_single=1}} &mdash; Features to place during that generation step. The same placed features in the same step in two biomes cannot be in different orders. In each step, all feature IDs need to be ordered consistently across biomes. For example, in the UNDERGROUND_ORES step of minecraft:plains, ore_dirt is before ore_gravel. In other biomes' UNDERGROUND_ORES step, if both ore_dirt and ore_gravel as present, ore_gravel cannot be before ore_dirt.
*** {{Nbt|string}}{{nbt|compound}}{{nbt|list}} each entry of the list: {{json ref|placed feature|tag=1|inline=1|no_single=1}} &mdash; Features to place during that generation step. The same placed features in the same step in two biomes cannot be in different orders. In each step, all feature IDs need to be ordered consistently across biomes. For example, in the UNDERGROUND_ORES step of minecraft:plains, ore_dirt is before ore_gravel. In other biomes' UNDERGROUND_ORES step, if both ore_dirt and ore_gravel as present, ore_gravel cannot be before ore_dirt.
**; These generation steps are also referred to by name for structure generation. They are, in order<nowiki>:</nowiki>
**; These generation steps are also referred to by name for [[Minecraft:Structure/JSON format|structure]] generation. They are, in order<nowiki>:</nowiki>
*** {{MC/Cd|RAW_GENERATION}}: Used by small end island features in vanilla.
*** {{cd|RAW_GENERATION}}: Used by small end island features in vanilla.
*** {{MC/Cd|LAKES}}: Used by lava lakes in vanilla.
*** {{cd|LAKES}}: Used by lava lakes in vanilla.
*** {{MC/Cd|LOCAL_MODIFICATIONS}}: Used for amethyst geodes and icebergs in vanilla.
*** {{cd|LOCAL_MODIFICATIONS}}: Used for amethyst geodes and icebergs in vanilla.
*** {{MC/Cd|UNDERGROUND_STRUCTURES}}: Used for dungeons and overworld fossils in vanilla.
*** {{cd|UNDERGROUND_STRUCTURES}}: Used for dungeons and overworld fossils in vanilla.
*** {{MC/Cd|SURFACE_STRUCTURES}}: Used for desert wells and blue ice patches in vanilla.
*** {{cd|SURFACE_STRUCTURES}}: Used for desert wells and blue ice patches in vanilla.
*** {{MC/Cd|STRONGHOLDS}}: Not used for features in vanilla.
*** {{cd|STRONGHOLDS}}: Not used for features in vanilla.
*** {{MC/Cd|UNDERGROUND_ORES}}: Used for overworld ore blobs, overworld dirt/gravel/stone variant blobs, and sand/gravel/clay disks in vanilla.
*** {{cd|UNDERGROUND_ORES}}: Used for overworld ore blobs, overworld dirt/gravel/stone variant blobs, and sand/gravel/clay disks in vanilla.
*** {{MC/Cd|UNDERGROUND_DECORATION}}: Used for infested block blobs, nether gravel and blackstone blobs, and all nether ore blobs in vanilla.
*** {{cd|UNDERGROUND_DECORATION}}: Used for infested block blobs, nether gravel and blackstone blobs, and all nether ore blobs in vanilla.
*** {{MC/Cd|FLUID_SPRINGS}}: Used for water and lava springs in vanilla.
*** {{cd|FLUID_SPRINGS}}: Used for water and lava springs in vanilla.
*** {{MC/Cd|VEGETAL_DECORATION}}: Used for trees, bamboo, cacti, kelp, and other ground and ocean vegetation in vanilla.
*** {{cd|VEGETAL_DECORATION}}: Used for trees, bamboo, cacti, kelp, and other ground and ocean vegetation in vanilla.
*** {{MC/Cd|TOP_LAYER_MODIFICATION}}: Used for surface freezing in vanilla.
*** {{cd|TOP_LAYER_MODIFICATION}}: Used for surface freezing in vanilla.
** {{MC/Nbt|float|creature_spawn_probability}}: (optional) Higher value results in more creatures spawned in world generation. Must be between 0.0 and 0.9999999 (both inclusive).
** {{nbt|float|creature_spawn_probability}}: (optional) Higher value results in more creatures spawned in world generation. Must be between 0.0 and 0.9999999 (both inclusive).
** {{MC/Nbt|compound|spawners}}: (Required, but can be empty. If this object doesn't contain a certain category, mobs in this category do not spawn.) Entity spawning settings.
** {{nbt|compound|spawners}}: (Required, but can be empty. If this object doesn't contain a certain category, mobs in this category do not spawn.) Entity spawning settings.
*** {{MC/Nbt|list|<mob category>}}: (Can be empty. If empty, mobs in this category do not spawn.) The key must be one of {{MC/Cd|monster}}, {{MC/Cd|creature}}, {{MC/Cd|ambient}}, {{MC/Cd|water_creature}}, {{MC/Cd|underground_water_creature}}, {{MC/Cd|water_ambient}}, {{MC/Cd|misc}}, or {{MC/Cd|axolotls}}. A list of spawner data objects, one for each mob which should spawn in this biome.
*** {{nbt|list|<mob category>}}: (Can be empty. If empty, mobs in this category do not spawn.) The key must be one of {{cd|monster}}, {{cd|creature}}, {{cd|ambient}}, {{cd|water_creature}}, {{cd|underground_water_creature}}, {{cd|water_ambient}}, {{cd|misc}}, or {{cd|axolotls}}. A list of spawner data objects, one for each mob which should spawn in this biome.
**** {{MC/Nbt|compound}}: The spawner data for a single mob.
**** {{nbt|compound}}: The spawner data for a single mob.
***** {{MC/Nbt|string|type}}: The namespaced entity id of the mob.
***** {{nbt|string|type}}: The namespaced entity id of the mob.
***** {{MC/Nbt|int|weight}}: How often this mob should spawn, higher values produce more spawns.
***** {{nbt|int|weight}}: How often this mob should spawn, higher values produce more spawns.
***** {{MC/Nbt|int|minCount}}: The minimum count of mobs to spawn in a pack. Must be greater than 0.
***** {{nbt|int|minCount}}: The minimum count of mobs to spawn in a pack. Must be greater than 0.
***** {{MC/Nbt|int|maxCount}}: The maximum count of mobs to spawn in a pack. Must be greater than 0. And must be not less than {{MC/Nbt|int|minCount}}.
***** {{nbt|int|maxCount}}: The maximum count of mobs to spawn in a pack. Must be greater than 0. And must be not less than {{nbt|int|minCount}}.
** {{MC/Nbt|compound|spawn_costs}}: (Required, but can be empty. Only mobs listed here use the spawn cost mechanism) See {{slink|Mob spawning|Spawn costs}} for details.
** {{nbt|compound|spawn_costs}}: (Required, but can be empty. Only mobs listed here use the spawn cost mechanism) See {{slink|Mob spawning|Spawn costs}} for details.
*** {{MC/Nbt|compound|<entity id>}}: The namespaced entity id of the mob.
*** {{nbt|compound|<entity id>}}: The namespaced entity id of the mob.
**** {{MC/Nbt|double|energy_budget}}: New mob's maximum potential.
**** {{nbt|double|energy_budget}}: New mob's maximum potential.
**** {{MC/Nbt|double|charge}}: New mob's charge.
**** {{nbt|double|charge}}: New mob's charge.
</div>
</div>


Line 51: Line 51:


=== ''Bedrock Edition'' ===
=== ''Bedrock Edition'' ===
{{MC/WIP|section=1}}
{{WIP|section=1}}
<div class=treeview>
<div class=treeview>
* {{MC/Nbt|compound}}: The root object.
* {{nbt|compound}}: The root object.
** {{MC/Nbt|string|format_version}}: The format version of the file. This is a string representing a {{MC/BE}} version. It is recommended to use the latest version. For 26.0 and later, add a leading 1. For example: {{MC/Cd|"1.26.0"}} for 26.0. Preview versions should use the version that it is a preview for (Example: Preview 26.0.27 would be {{MC/Cd|"1.26.0"}}).
** {{nbt|string|format_version}}: The format version of the file, requires <code>"1.21.110"</code> for all current features.
** {{MC/Nbt|compound|minecraft:biome}}: The biome definition.
** {{nbt|compound|minecraft:biome}}: The biome definition.
*** {{MC/Nbt|compound|description}}
*** {{nbt|compound|description}}
**** {{MC/Nbt|string|identitfier}}: A namespaced identifier for the biome.
**** {{nbt|string|identifier}}: A [[Minecraft:namespaced identifier]] for the biome.
*** {{MC/Nbt|compound|components}}: Components used to define the biome's generation.
*** {{nbt|compound|components}}: Components used to define the biome's generation.
**** {{MC/Nbt|compound|minecraft:climate}}: Defines the climate properties of the biome.
**** {{nbt|compound|minecraft:climate}}: Defines the climate properties of the biome.
***** {{MC/Nbt|float|downfall}}: How much precipitation affects colors and block changes. If set to 0, rain will not fall.
***** {{nbt|float|downfall}}: [[Minecraft:Downfall]], mainly causes grass and foliage tints to change in terms of humidity (if not overridden in resource packs), and the random extinction of [[Minecraft:fire]]. If set to 0, no [[Minecraft:precipitation]] occurs.
***** {{MC/Nbt|list|snow_accumulation}}: Minimum and maximum snow level. 0.125 is one snow layer.
***** {{nbt|list|snow_accumulation}}: [[Minecraft:Snow accumulation]], the first value controls how much snow is pre-generated (0 being one uniform layer, 0.125 randomized patches without snow and stacked near blocks, higher increases the snow piles), the second value controls the speed of snow accumulation during snowfall and must be equal to or higher than the first value.
***** {{MC/Nbt|float|temperature}}: {{MC/More info}}
***** {{nbt|float|temperature}}: [[Minecraft:Temperature]], controls at what height rainfall transitions to snowfall and water freezes, changes grass, sky, and foliage tints, affects sponge drying.
**** {{MC/Nbt|compound|minecraft:creature_spawn_probability}}
**** {{nbt|compound|minecraft:creature_spawn_probability}}
***** {{MC/Nbt|float|probability}}: Chance of creatures spawning when the chunk is generated. Must be &le;0.75.
***** {{nbt|float|probability}}: Chance of creatures spawning when the chunk is generated. Must be &le;0.75.
**** {{MC/Nbt|compound|minecraft:humidity}}
**** {{nbt|compound|minecraft:humidity}}
***** {{MC/Nbt|boolean|is_humid}}: Whether or not the biome is humid.
***** {{nbt|boolean|is_humid}}: Whether or not the biome is humid. This overrides the downfall property with 0 or 1 while leaving tints unaffected.
**** {{MC/Nbt|compound|minecraft:map_tints}}
**** {{nbt|compound|minecraft:map_tints}}
***** {{MC/Nbt|list}}{{MC/Nbt|string|foliage}}: The color foliage will be tinted by on a [[Minecraft:map]] in this biome for example {{MC/Cd|#6a7039}}.
***** {{nbt|list}}{{nbt|string|foliage}}: The color foliage will be tinted by on a [[Minecraft:map]] in this biome for example {{cd|#6a7039}}. If not set, this defaults to the colormap determined by temperature and downfall.
***** {{MC/Nbt|compound|grass}}: The color grass will be tinted by on a [[Minecraft:map]] in this biome.  
***** {{nbt|compound|grass}}: The color grass will be tinted by on a [[Minecraft:map]] in this biome.  If not set, this defaults to the colormap determined by temperature and downfall.  
****** {{MC/Nbt|string|type}}: It could be {{MC/Cd|noise}} or {{MC/Cd|tint}}.
****** {{nbt|string|type}}: It could be {{cd|noise}} or {{cd|tint}}. When set to {{cd|noise}}, this will apply a secondary randomized temperature gradient in the biome and use the colormap to tint grass, like in [[Minecraft:swamps]].
****** {{MC/Nbt|string|tint}}: Available only if the type is tint, it is used to define the fixed color of the grass on the map, for example {{MC/Cd|#aea42a}}.
****** {{nbt|string|tint}}: Available only if the type is tint, it is used to define the fixed color of the grass on the map, for example {{cd|#aea42a}}.
**** {{MC/Nbt|compound|minecraft:mountain_parameters}}: Parameters used to drive mountain terrain generation in the [[Minecraft:overworld]].
**** {{nbt|compound|minecraft:mountain_parameters}}: Parameters used to drive [[Minecraft:Slopes|mountain slope]] blocks.
***** {{MC/Nbt|boolean|east_slopes}}: Whether to have east-facing slopes.
***** {{nbt|boolean|east_slopes}}: Whether to have custom east-facing slopes.
***** {{MC/Nbt|boolean|west_slopes}}: Whether to have west-facing slopes.
***** {{nbt|boolean|west_slopes}}: Whether to have custom west-facing slopes.
***** {{MC/Nbt|boolean|north_slopes}}: Whether to have north-facing slopes.
***** {{nbt|boolean|north_slopes}}: Whether to have custom north-facing slopes.
***** {{MC/Nbt|boolean|south_slopes}}: Whether to have south-facing slopes.
***** {{nbt|boolean|south_slopes}}: Whether to have custom south-facing slopes.
***** {{MC/Nbt|compound|material}}: Block to use as steep material.
***** {{nbt|compound|material}}: Block to use as steep material.
****** {{MC/Nbt|string|name}}: [[Minecraft:Identifier]] of the block.
****** {{nbt|string|name}}: [[Minecraft:Identifier]] of the block.
****** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|compound|states}}: Block states for the block.
***** {{MC/Nbt|compound|top_slide}}: Controls the density tapering that happens at the top of the world to prevent terrain from reaching too high.
***** {{nbt|compound|top_slide}}: Controls the density tapering that happens at the top of the world to prevent terrain from reaching too high.
****** {{MC/Nbt|boolean|enabled}}
****** {{nbt|boolean|enabled}}
***** {{MC/Nbt|compound|steep_material_adjustment}}: Defines surface material for steep slopes.
***** {{nbt|compound|steep_material_adjustment}}: Defines surface material for steep slopes.
****** {{MC/Nbt|boolean|east_slopes}}: Whether to have east-facing slopes.
****** {{nbt|boolean|east_slopes}}: Whether to have east-facing slopes.
****** {{MC/Nbt|boolean|west_slopes}}: Whether to have west-facing slopes.
****** {{nbt|boolean|west_slopes}}: Whether to have west-facing slopes.
****** {{MC/Nbt|boolean|north_slopes}}: Whether to have north-facing slopes.
****** {{nbt|boolean|north_slopes}}: Whether to have north-facing slopes.
****** {{MC/Nbt|boolean|south_slopes}}: Whether to have south-facing slopes.
****** {{nbt|boolean|south_slopes}}: Whether to have south-facing slopes.
****** {{MC/Nbt|compound|material}}: Block to use as steep material.
****** {{nbt|compound|material}}: Block to use as steep material.
******* {{MC/Nbt|string|name}}: [[Minecraft:Identifier]] of the block.
******* {{nbt|string|name}}: [[Minecraft:Identifier]] of the block.
******* {{MC/Nbt|compound|states}}: Block states for the block.
******* {{nbt|compound|states}}: Block states for the block.
**** {{MC/Nbt|compound|minecraft:overworld_height}}: ''Currently only affects map items.'' Specifies the noise parameters used to drive terrain height.
**** {{nbt|compound|minecraft:overworld_height}}: <u>Deprecated</u>, only used for pre-[[Minecraft:Caves & Cliffs]] generation and unexplored [[Minecraft:Explorer Map|explorer map]] terrain rendering. Specifies the noise parameters used to drive terrain height.
***** {{MC/Nbt|list|noise_params}}: 2 values, first is depth, and the second is scale.
***** {{nbt|list|noise_params}}: 2 values, first is depth, and the second is scale.
***** {{MC/Nbt|string|noise_type}}: Uses a built-in preset instead of specifying values. Available presets are: <div class="collapsible collapsed collapsetoggle-inline">
***** {{nbt|string|noise_type}}: Uses a built-in preset instead of specifying values. Available presets are: <div class="collapsible collapsed collapsetoggle-inline">
****** {{MC/Cd|d=*|list-level=******|beach|deep_ocean|default|default_mutated|extreme|highlands|less_extreme|lowlands|mountains|mushroom|ocean|river|stone_beach|swamp|taiga}}</div>
****** {{cd|d=*|list-level=******|beach|deep_ocean|default|default_mutated|extreme|highlands|less_extreme|lowlands|mountains|mushroom|ocean|river|stone_beach|swamp|taiga}}</div>
***** {{MC/Nbt|compound|minecraft:replace_biomes}}: Allows this biome to replace parts of one or more [[Minecraft:biome#List of biomes|vanilla biomes]].
***** {{nbt|compound|minecraft:overworld_generation_rules}}: <u>Deprecated</u>, only used for pre-[[Minecraft:Caves & Cliffs]] generation. Specifies where the biome generates.
****** {{MC/Nbt|list|replacements}}: The list of replacements
****** {{nbt|string|generate_for_climates}}: Controls where the biome initially attempts to generate, a climate zone ({{cd|medium}}, {{cd|warm}}, {{cd|lukewarm}}, {{cd|cold}}, or {{cd|frozen}}), and the weight relative to other biomes in that climate zone. Note that {{cd|lukewarm}} can only be used for oceans; as climate zones are placed differently here. It is not possible to control rare climate zones or edge transformations.
******* {{MC/Nbt|compound}}: ''An replacement''
****** {{nbt|list|}}{{nbt|string|hills_transformation}}: The identifier of the biome to replace it in hills areas. This can either be one string, or a list of array pairs, containing the identifier and the weight, to randomly select from multiple biomes.
******** {{MC/Nbt|float|amount}}: Chance that the replacement is attempted. Must be &gt;0.0 and &le;1.0.
****** {{nbt|list|}}{{nbt|string|mutate_transformation}}: The identifier of the biome to replace it in mutated areas.
******** {{MC/Nbt|string|dimension}}: The dimension in which this replacement can occur. Can be either {{MC/Cd|d=or|minecraft:overworld|minecraft:nether}}.
****** {{nbt|list|}}{{nbt|string|river_transformation}}: The identifier of the biome to replace it at [[Minecraft:river]] noise.
******** {{MC/Nbt|float|noise_frequency_scale}}: Scale to alter the frequency of replacements. Lower values make bigger areas that are less common, and higher values make smaller areas that are more common. Must be &gt;0.0 and &le;100.0.
****** {{nbt|list|}}{{nbt|string|shore_transformation}}: The identifier of the biome to replace it at the border of [[Minecraft:ocean]]s.
******** {{MC/Nbt|list|targets}}: The biomes that can be replaced.
***** {{nbt|compound|minecraft:replace_biomes}}: Allows this biome to replace parts of one or more [[Minecraft:biome#List of biomes|vanilla biomes]].
********* {{MC/Nbt|string}}: A biome ID ''without'' the namespace.
****** {{nbt|list|replacements}}: The list of replacements
***** {{MC/Nbt|compound|minecraft:surface_builder}}
******* {{nbt|compound}}: ''An replacement''
****** {{MC/Nbt|compound|builder}}: Controls the blocks used for terrain generation.
******** {{nbt|float|amount}}: Chance that the replacement is attempted. Must be &gt;0.0 and &le;1.0.
******* {{MC/Nbt|string|type}}: The type of surface builder. Can be {{MC/Cd|d=or|minecraft:capped|minecraft:frozen_ocean|minecraft:mesa|minecraft:overworld|minecraft:swamp|minecraft:the_end}}.
******** {{nbt|string|dimension}}: The dimension in which this replacement can occur. Can be either {{cd|d=or|minecraft:overworld|minecraft:nether}}.
*******; If <code>type</code> is <code>minecraft:capped</code><nowiki>:</nowiki>
******** {{nbt|float|noise_frequency_scale}}: Scale to alter the frequency of replacements. Lower values make bigger areas that are less common, and higher values make smaller areas that are more common. Must be &gt;0.0 and &le;100.0.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|beach_material}}: Material used near sea level.
******** {{nbt|list|targets}}: The biomes that can be replaced.
******** {{MC/Nbt|string|name}}: [[Minecraft:Identifier]] of the block.
********* {{nbt|string}}: A biome ID.
******** {{MC/Nbt|compound|states}}: Block states for the block.
**** {{nbt|compound|minecraft:surface_builder}}
******* {{MC/Nbt|compound}}{{MC/Nbt|string|ceiling_materials}}: Material used for the surface ceiling.
***** {{nbt|compound|builder}}: Controls the blocks used for [[Minecraft:Surface layer|surface layers]].
******** {{MC/Nbt|string|name}}: Identifier of the block.
****** {{nbt|string|type}}: The type of surface builder. Can be {{cd|d=or|minecraft:capped|minecraft:frozen_ocean|minecraft:mesa|minecraft:overworld|minecraft:swamp|minecraft:the_end}}.
******** {{MC/Nbt|compound|states}}: Block states for the block.
******; If <code>type</code> is <code>minecraft:capped</code><nowiki>:</nowiki>
******* {{MC/Nbt|compound}}{{MC/Nbt|string|floor_materials}}: Material used for the surface floor.
****** {{nbt|compound}}{{nbt|string|beach_material}}: Material used near sea level.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|string|name}}: [[Minecraft:Identifier]] of the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
******* {{nbt|compound|states}}: Block states for the block.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|foundation_material}}: Material used to replace solid blocks that are not surface blocks.
****** {{nbt|compound}}{{nbt|string|ceiling_materials}}: Material used for the surface ceiling.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
******* {{nbt|compound|states}}: Block states for the block.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|sea_material}}: Material used to replace air below sea level.
****** {{nbt|compound}}{{nbt|string|floor_materials}}: Material used for the surface floor.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
******* {{nbt|compound|states}}: Block states for the block.
*******; If <code>type</code> is <code>minecraft:frozen_ocean</code> or <code>minecraft:overworld</code><nowiki>:</nowiki>
****** {{nbt|compound}}{{nbt|string|foundation_material}}: Material used to replace solid blocks that are not surface blocks.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|foundation_material}}: Material used to replace solid blocks that are not surface blocks.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|compound}}{{nbt|string|sea_material}}: Material used to replace air below sea level.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|mid_material}}: Material used a layer below the surface of the biome.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
******; If <code>type</code> is <code>minecraft:frozen_ocean</code> or <code>minecraft:overworld</code><nowiki>:</nowiki>
******* {{MC/Nbt|integer|sea_floor_depth}}: How deep below sea level the sea floor should be. Must be &le;127.
****** {{nbt|compound}}{{nbt|string|foundation_material}}: Material used to replace solid blocks that are not surface blocks.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|sea_floor_material}}: Material used as a floor for bodies of water.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|compound}}{{nbt|string|mid_material}}: Material used a layer below the surface of the biome.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|sea_material}}: Material used to replace air below sea level.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|integer|sea_floor_depth}}: How deep below sea level the sea floor should be. Must be &le;127.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|top_material}}: Material used for the surface of the biome.
****** {{nbt|compound}}{{nbt|string|sea_floor_material}}: Material used as a floor for bodies of water.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
******* {{nbt|compound|states}}: Block states for the block.
*******; If <code>type</code> is <code>minecraft:mesa</code><nowiki>:</nowiki>
****** {{nbt|compound}}{{nbt|string|sea_material}}: Material used to replace air below sea level.
******* {{MC/Nbt|boolean|bryce_pillars}}: Whether the mesa generates with pillars.
******* {{nbt|string|name}}: Identifier of the block.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|clay_material}}: Base clay material.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
****** {{nbt|compound}}{{nbt|string|top_material}}: Material used for the surface of the biome.
******** {{MC/Nbt|compound|states}}: Block states for the block.
******* {{nbt|string|name}}: Identifier of the block.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|foundation_material}}: Material used to replace solid blocks that are not surface blocks.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******; If <code>type</code> is <code>minecraft:mesa</code><nowiki>:</nowiki>
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|boolean|bryce_pillars}}: Whether the mesa generates with [[Minecraft:Hoodoo|hoodoos]].
******* {{MC/Nbt|compound}}{{MC/Nbt|string|hard_clay_material}}: Hardened clay material.
****** {{nbt|compound}}{{nbt|string|clay_material}}: Base clay material.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
******* {{nbt|compound|states}}: Block states for the block.
******* {{MC/Nbt|boolean|has_forest}}: Adds coarse dirt and grass at high altitudes.
****** {{nbt|compound}}{{nbt|string|foundation_material}}: Material used to replace solid blocks that are not surface blocks.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|mid_material}}: Material used a layer below the surface of the biome.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|compound}}{{nbt|string|hard_clay_material}}: Hardened clay material.
******* {{MC/Nbt|integer|sea_floor_depth}}: How deep below sea level the sea floor should be. Must be &le;127.
******* {{nbt|string|name}}: Identifier of the block.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|sea_floor_material}}: Material used as a floor for bodies of water.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
****** {{nbt|boolean|has_forest}}: Adds coarse dirt and grass at high altitudes.
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|compound}}{{nbt|string|mid_material}}: Material used a layer below the surface of the biome.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|sea_material}}: Material used to replace air below sea level.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|integer|sea_floor_depth}}: How deep below sea level the sea floor should be. Must be &le;127.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|top_material}}: Material used for the surface of the biome.
****** {{nbt|compound}}{{nbt|string|sea_floor_material}}: Material used as a floor for bodies of water.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
******* {{nbt|compound|states}}: Block states for the block.
*******; If <code>type</code> is <code>minecraft:swamp</code><nowiki>:</nowiki>
****** {{nbt|compound}}{{nbt|string|sea_material}}: Material used to replace air below sea level.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|foundation_material}}: Material used to replace solid blocks that are not surface blocks.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|compound}}{{nbt|string|top_material}}: Material used for the surface of the biome.
******* {{MC/Nbt|integer|max_puddle_depth_below_sea_level}}: The depth at which surface blocks can be replaced with water for puddles. Must be &le;127.
******* {{nbt|string|name}}: Identifier of the block.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|mid_material}}: Material used a layer below the surface of the biome.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******; If <code>type</code> is <code>minecraft:swamp</code><nowiki>:</nowiki>
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|compound}}{{nbt|string|foundation_material}}: Material used to replace solid blocks that are not surface blocks.
******* {{MC/Nbt|integer|sea_floor_depth}}: How deep below sea level the sea floor should be. Must be &le;127.
******* {{nbt|string|name}}: Identifier of the block.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|sea_floor_material}}: Material used as a floor for bodies of water.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
****** {{nbt|integer|max_puddle_depth_below_sea_level}}: The depth at which surface blocks can be replaced with water for puddles. Must be &le;127.
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|compound}}{{nbt|string|mid_material}}: Material used a layer below the surface of the biome.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|sea_material}}: Material used to replace air below sea level.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
****** {{nbt|integer|sea_floor_depth}}: How deep below sea level the sea floor should be. Must be &le;127.
******* {{MC/Nbt|compound}}{{MC/Nbt|string|top_material}}: Material used for the surface of the biome.
****** {{nbt|compound}}{{nbt|string|sea_floor_material}}: Material used as a floor for bodies of water.
******** {{MC/Nbt|string|name}}: Identifier of the block.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|compound|states}}: Block states for the block.
******* {{nbt|compound|states}}: Block states for the block.
***** {{MC/Nbt|compound|minecraft:surface_material_adjustments}}: Specify fine changes to blocks used in terrain generation.
****** {{nbt|compound}}{{nbt|string|sea_material}}: Material used to replace air below sea level.
****** {{MC/Nbt|list|adjustments}}
******* {{nbt|string|name}}: Identifier of the block.
******* {{MC/Nbt|compound}}: ''An adjustment''
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|string}}{{MC/Nbt|boolean}}{{MC/Nbt|float|height_range}}: {{MC/More info}}
****** {{nbt|compound}}{{nbt|string|top_material}}: Material used for the surface of the biome.
******** {{MC/Nbt|float|noise_frequency_scale}}: The scale to apply to the position when accessing the noise value.
******* {{nbt|string|name}}: Identifier of the block.
******** {{MC/Nbt|list|noise_range}}: A range of noise values for which this adjustment should be applied.
******* {{nbt|compound|states}}: Block states for the block.
******** {{MC/Nbt|compound|materials}}: Materials to use when this adjustment is active.
***** {{nbt|compound|minecraft:surface_material_adjustments}}: Specify fine changes to blocks used in terrain generation.
********* {{MC/Nbt|compound}}{{MC/Nbt|string|foundation_material}}: Material used to replace solid blocks that are not surface blocks.
****** {{nbt|list|adjustments}}
********** {{MC/Nbt|string|name}}: [[Minecraft:Identifier]] of the block.
******* {{nbt|compound}}: ''An adjustment''
********** {{MC/Nbt|compound|states}}: Block states for the block.
******** {{nbt|string}}{{nbt|boolean}}{{nbt|float|height_range}}: {{More info}}
********* {{MC/Nbt|compound}}{{MC/Nbt|string|mid_material}}: Material used a layer below the surface of the biome.
******** {{nbt|float|noise_frequency_scale}}: The scale to apply to the position when accessing the noise value.
********** {{MC/Nbt|string|name}}: Identifier of the block.
******** {{nbt|list|noise_range}}: A range of noise values for which this adjustment should be applied.
********** {{MC/Nbt|compound|states}}: Block states for the block.
******** {{nbt|compound|materials}}: Materials to use when this adjustment is active.
********* {{MC/Nbt|compound}}{{MC/Nbt|string|sea_floor_material}}: Material used as a floor for bodies of water.
********* {{nbt|compound}}{{nbt|string|foundation_material}}: Material used to replace solid blocks that are not surface blocks.
********** {{MC/Nbt|string|name}}: Identifier of the block.
********** {{nbt|string|name}}: [[Minecraft:Identifier]] of the block.
********** {{MC/Nbt|compound|states}}: Block states for the block.
********** {{nbt|compound|states}}: Block states for the block.
********* {{MC/Nbt|compound}}{{MC/Nbt|string|sea_material}}: Material used to replace air below sea level.
********* {{nbt|compound}}{{nbt|string|mid_material}}: Material used a layer below the surface of the biome.
********** {{MC/Nbt|string|name}}: Identifier of the block.
********** {{nbt|string|name}}: Identifier of the block.
********** {{MC/Nbt|compound|states}}: Block states for the block.
********** {{nbt|compound|states}}: Block states for the block.
********* {{MC/Nbt|compound}}{{MC/Nbt|string|top_material}}: Material used for the surface of the biome.
********* {{nbt|compound}}{{nbt|string|sea_floor_material}}: Material used as a floor for bodies of water.
********** {{MC/Nbt|string|name}}: Identifier of the block.
********** {{nbt|string|name}}: Identifier of the block.
********** {{MC/Nbt|compound|states}}: Block states for the block.
********** {{nbt|compound|states}}: Block states for the block.
***** {{MC/Nbt|compound|minecraft:tags}}
********* {{nbt|compound}}{{nbt|string|sea_material}}: Material used to replace air below sea level.
****** {{MC/Nbt|list|tags}}: [[Minecraft:Biome tag (Bedrock Edition)|Tags]] for the biome.
********** {{nbt|string|name}}: Identifier of the block.
***** {{MC/Nbt|compound|minecraft:village_type}}
********** {{nbt|compound|states}}: Block states for the block.
****** {{MC/Nbt|string|type}}: The type of village for this biome. Valid values are {{MC/Cd|d=and|default|desert|ice|savanna|taiga}}.
********* {{nbt|compound}}{{nbt|string|top_material}}: Material used for the surface of the biome.
********** {{nbt|string|name}}: Identifier of the block.
********** {{nbt|compound|states}}: Block states for the block.
***** {{nbt|compound|minecraft:tags}}
****** {{nbt|list|tags}}: [[Minecraft:Biome tag (Bedrock Edition)|Tags]] for the biome.
**** {{nbt|compound|minecraft:village_type}}
***** {{nbt|string|type}}: The type of [[Minecraft:village]] for this biome. Valid values are {{cd|d=and|default|desert|ice|savanna|taiga}}.
</div>
</div>


Line 213: Line 219:
=== ''Java Edition'' ===
=== ''Java Edition'' ===
{{HistoryTable
{{HistoryTable
|{{MC/HistoryLine|java}}
|{{HistoryLine|java}}
|{{MC/HistoryLine||1.16.2|dev=20w28a|Added experimental support for biomes in data packs.}}
|{{HistoryLine||1.16.2|dev=20w28a|Added experimental support for biomes in data packs.}}
|{{HistoryLine|||dev=20w30a|Added the {{MC/Cd|grass_color}}, {{MC/Cd|foliage_color}}, {{MC/Cd|water_color}}, and {{MC/Cd|water_fog_color}} effects properties.}}
|{{HistoryLine|||dev=20w30a|Added the {{cd|grass_color}}, {{cd|foliage_color}}, {{cd|water_color}}, and {{cd|water_fog_color}} effects properties.}}
|{{HistoryLine|||dev=pre2|Added the {{MC/Cd|player_spawn_friendly}} property.}}
|{{HistoryLine|||dev=pre2|Added the {{cd|player_spawn_friendly}} property.}}
|{{HistoryLine||1.19|dev=22w11a|Removed the {{MC/Cd|category}} field. Functionality has been moved to biome tags.}}
|{{HistoryLine||1.19|dev=22w11a|Removed the {{cd|category}} field. Functionality has been moved to biome tags.}}
|{{MC/HistoryLine||1.19.3|dev=Pre-release 3|Now when specifying a sound event, a fixed audible range can be also specified within an object.}}
|{{HistoryLine||1.19.3|dev=Pre-release 3|Now when specifying a sound event, a fixed audible range can be also specified within an object.}}
|{{HistoryLine||1.19.4|dev=23w03a|Renamed the {{MC/Cd|precipitation}} field to {{MC/Cd|has_precipitation}}. And now it is a boolean, and when it is true, whether it rains or snows are determined only by temperature. Before, it can be one of "none", "rain" and "snow".<ref>To fix {{bug|MC-230678}}, {{bug|MC-233893}}, {{bug|MC-238904}}, {{bug|MC-247836}}, {{bug|MC-254132}}, and {{bug|MC-255811}}.</ref>}}
|{{HistoryLine||1.19.4|dev=23w03a|Renamed the {{cd|precipitation}} field to {{cd|has_precipitation}}. And now it is a boolean, and when it is true, whether it rains or snows are determined only by temperature. Before, it can be one of "none", "rain" and "snow".<ref>To fix {{bug|MC-230678}}, {{bug|MC-233893}}, {{bug|MC-238904}}, {{bug|MC-247836}}, {{bug|MC-254132}}, and {{bug|MC-255811}}.</ref>}}
|{{HistoryLine|||dev=Pre-release 1|Now {{MC/Nbt|int|minCount}} and {{MC/Nbt|int|maxCount}} in {{MC/Nbt|compound|spawners}} must be a positive integer. And {{MC/Nbt|int|maxCount}} must be not less than {{MC/Nbt|int|minCount}}.}}
|{{HistoryLine|||dev=Pre-release 1|Now {{nbt|int|minCount}} and {{nbt|int|maxCount}} in {{nbt|compound|spawners}} must be a positive integer. And {{nbt|int|maxCount}} must be not less than {{nbt|int|minCount}}.}}
|{{MC/HistoryLine||1.21.2|dev=24w33a|Carver types have been removed. The carvers field now lists carvers directly instead of having to specify the type.}}
|{{HistoryLine||1.21.2|dev=24w33a|Carver types have been removed. The carvers field now lists carvers directly instead of having to specify the type.}}
|{{HistoryLine||1.21.4|dev=24w44a|Added {{MC/Nbt|float|music_volume}} field to {{MC/Nbt|compound|effects}}.
|{{HistoryLine||1.21.4|dev=24w44a|Added {{nbt|float|music_volume}} field to {{nbt|compound|effects}}.
|Changed the {{MC/Nbt|list|music}} field to be a weighted list of music objects.}}
|Changed the {{nbt|list|music}} field to be a weighted list of music objects.}}
|{{HistoryLine||1.21.5|dev=25w08a|Added {{MC/Nbt|int|dry_foliage_color}} field to {{MC/Nbt|compound|effects}}.}}
|{{HistoryLine||1.21.5|dev=25w08a|Added {{nbt|int|dry_foliage_color}} field to {{nbt|compound|effects}}.}}
|{{HistoryLine||1.21.11|dev=25w42a|Added {{MC/Nbt|compound|attributes}} field.
|{{HistoryLine||1.21.11|dev=25w42a|Added {{nbt|compound|attributes}} field.
|Removed {{MC/Nbt|int|fog_color‌}}, {{MC/Nbt|int|sky_color‌}}, {{MC/Nbt|int|water_fog_color}}, {{MC/Nbt|compound|particle}}, {{MC/Nbt|string}}{{MC/Nbt|compound|ambient_sound}}, {{MC/Nbt|compound|mood_sound}}, {{MC/Nbt|compound|additions_sounds}}, {{MC/Nbt|list|music}}, and {{MC/Nbt|float|music_volume}} fields in {{MC/Nbt|compound|effects}}.}}
|Removed {{nbt|int|fog_color‌}}, {{nbt|int|sky_color‌}}, {{nbt|int|water_fog_color}}, {{nbt|compound|particle}}, {{nbt|string}}{{nbt|compound|ambient_sound}}, {{nbt|compound|mood_sound}}, {{nbt|compound|additions_sounds}}, {{nbt|list|music}}, and {{nbt|float|music_volume}} fields in {{nbt|compound|effects}}.}}
|{{HistoryLine|||dev=25w44a|The {{MC/Nbt|string}}{{MC/Nbt|list}}{{MC/Nbt|int|water_color}}, {{MC/Nbt|string}}{{MC/Nbt|list}}{{MC/Nbt|int|foliage_color}}, {{MC/Nbt|string}}{{MC/Nbt|list}}{{MC/Nbt|int|dry_foliage_color}}, and {{MC/Nbt|string}}{{MC/Nbt|list}}{{MC/Nbt|int|grass_color}} fields now accept a hex-string or array of red, green, blue floats in addition to the packed integer value.}}
|{{HistoryLine|||dev=25w44a|The {{nbt|string}}{{nbt|list}}{{nbt|int|water_color}}, {{nbt|string}}{{nbt|list}}{{nbt|int|foliage_color}}, {{nbt|string}}{{nbt|list}}{{nbt|int|dry_foliage_color}}, and {{nbt|string}}{{nbt|list}}{{nbt|int|grass_color}} fields now accept a hex-string or array of red, green, blue floats in addition to the packed integer value.}}
}}
}}


=== ''Bedrock Edition'' ===
=== ''Bedrock Edition'' ===
{{HistoryTable
{{HistoryTable
|{{MC/HistoryLine|bedrock}}
|{{HistoryLine|bedrock}}
|{{MC/HistoryLine||?|Custom biomes were added}}
|{{HistoryLine||?|Custom biomes were added}}
|{{MC/HistoryLine||1.18|Custom biomes have become obsolete and impossible to create due to the world generation change.}}
|{{HistoryLine||1.18|Custom biomes have become obsolete and impossible to create due to the world generation change.}}
|{{MC/HistoryLine||1.20.60|dev=Preview 1.20.60.24|Biome tags are now specified under an array within the <code>minecraft:tags</code> component rather than as loose JSON objects.}}
|{{HistoryLine||1.20.60|dev=Preview 1.20.60.24|Biome tags are now specified under an array within the <code>minecraft:tags</code> component rather than as loose JSON objects.}}
|{{HistoryLine||1.21.70|dev=Preview 1.21.70.23|Removed unused experimental json field {{MC/Cd|peaks_factor}} from {{MC/Cd|minecraft:mountain_parameters}} in the behavior pack biome file.}}
|{{HistoryLine||1.21.70|dev=Preview 1.21.70.23|Removed unused experimental json field {{cd|peaks_factor}} from {{cd|minecraft:mountain_parameters}} in the behavior pack biome file.}}
|{{HistoryLine||1.21.80|dev=Preview 1.21.80.27|exp=Custom biomes|Added {{MC/Cd|minecraft:replace_biomes}} component to allow for custom biomes to replace portions of vanilla biomes. To use, add to custom biome files in behavior packs.}}
|{{HistoryLine||1.21.80|dev=Preview 1.21.80.27|exp=Custom biomes|Added {{cd|minecraft:replace_biomes}} component to allow for custom biomes to replace portions of vanilla biomes. To use, add to custom biome files in behavior packs.}}
|{{HistoryLine||1.21.100|dev=Preview 1.21.100.20|exp=Custom biomes|Custom biome names are no longer implied by their filenames. Biome names are explicitly specified via the {{MC/Cd|identifier}} property under the {{MC/Cd|description}} sub-object of their JSON definition.|Biome identifiers must now be namespaced (ex: {{MC/Cd|minecraft:plains}}). Biomes with a format version lower than 1.21.90 will have their identifier automatically prefixed {{MC/Cd|minecraft:}} when loaded if no namespace is already specified.}}
|{{HistoryLine||1.21.100|dev=Preview 1.21.100.20|exp=Custom biomes|Custom biome names are no longer implied by their filenames. Biome names are explicitly specified via the {{cd|identifier}} property under the {{cd|description}} sub-object of their JSON definition.|Biome identifiers must now be namespaced (ex: {{cd|minecraft:plains}}). Biomes with a format version lower than 1.21.90 will have their identifier automatically prefixed {{cd|minecraft:}} when loaded if no namespace is already specified.}}
|{{HistoryLine|||dev=Preview 1.21.100.22|Added a new server side biome component {{MC/Cd|surface_builder}} that will combine the components {{MC/Cd|surface_parameters}}, {{MC/Cd|frozen_ocean_surface}}, {{MC/Cd|mesa_surface}}, {{MC/Cd|swamp_surface}}, {{MC/Cd|capped_surface}}, and {{MC/Cd|the_end_surface}} into one component. Each biome can only use one builder type. The component can be used for world generation settings such as foundation material and sea floor depth.|Added {{MC/Cd|minecraft:humidity}} component with {{MC/Cd|is_humid}} this forces a biome to either always be humid or never humid. Humidity effects the spread chance, and spread rate of fire in the biome.|Added {{MC/Cd|minecraft:partially_frozen}} This component will impact the temperature in a frozen biome, causing some areas to not be frozen. Ex: patchy ice, patchy snow.}}
|{{HistoryLine|||dev=Preview 1.21.100.22|Added a new server side biome component {{cd|surface_builder}} that will combine the components {{cd|surface_parameters}}, {{cd|frozen_ocean_surface}}, {{cd|mesa_surface}}, {{cd|swamp_surface}}, {{cd|capped_surface}}, and {{cd|the_end_surface}} into one component. Each biome can only use one builder type. The component can be used for world generation settings such as foundation material and sea floor depth.|Added {{cd|minecraft:humidity}} component with {{cd|is_humid}} this forces a biome to either always be humid or never humid. Humidity effects the spread chance, and spread rate of fire in the biome.|Added {{cd|minecraft:partially_frozen}} This component will impact the temperature in a frozen biome, causing some areas to not be frozen. Ex: patchy ice, patchy snow.}}
|{{HistoryLine||1.21.111|dev=Preview 1.21.110.20|exp=Custom biomes|Added {{MC/Cd|max_puddle_depth_below_sea_level}} to the {{MC/Cd|surface_builder}} biome component for the swamp builder type. The component will set the search depth for how far below sea level to search for a surface to add a puddle.|Removed support for loading custom biomes for base game versions 1.21.100 and below.}}
|{{HistoryLine||1.21.111|dev=Preview 1.21.110.20|exp=Custom biomes|Added {{cd|max_puddle_depth_below_sea_level}} to the {{cd|surface_builder}} biome component for the swamp builder type. The component will set the search depth for how far below sea level to search for a surface to add a puddle.|Removed support for loading custom biomes for base game versions 1.21.100 and below.}}
|{{MC/HistoryLine||1.21.111|dev=Preview 1.21.110.25|Custom biomes were released from experimental.}}
|{{HistoryLine||1.21.111|dev=Preview 1.21.110.25|Custom biomes were released from experimental.}}
|{{HistoryLine||26.0|dev=Preview 26.0.25|Added {{MC/Cd|minecraft:village_type}} biome component that determines the type of the village in the biome. This also allows for the generation of villages in the biome; not using this component means the village will never be generated in the biome.|Enabled the Biome Replacement feature in the Nether, however, currently it doesn't work as well as it should.}}
|{{HistoryLine||26.0|dev=Preview 26.0.25|Added {{cd|minecraft:village_type}} biome component that determines the type of the [[Minecraft:village]] in the biome. This also allows for the generation of villages in the biome; not using this component means the village will never be generated in the biome.|Enabled the Biome Replacement feature in the [[Minecraft:Nether]], however, currently it doesn't work as well as it should.}}
|{{HistoryLine||26.20|dev=Preview 26.20.23|exp=Upcoming Creator Features|Added {{cd|minecraft:subsurface_builder}} biome component to apply surface generation rules below the Overworld's terrain surface. Includes {{cd|minecraft:noise_gradient}} builder type for placing block bands via Perlin noise distribution, with parameters {{cd|non_replaceable_blocks}} and {{cd|gradient_blocks}}.|{{cd|minecraft:surface_builder}} now suppose the type {{cd|minecraft:noise_gradient}} doing the same as mentioned above.}}
|{{HistoryLine|upcoming bedrock}}
|{{HistoryLine||26.30|dev=Preview 26.30.25|{{cd|minecraft:subsurface_builder}} and {{cd|minecraft:surface_builder}} with {{cd|minecraft:noise_gradient}} type are now stable and no longer require experimental features. Requires {{cd|format_version}} 1.26.30 or higher.}}
|{{HistoryLine|||dev=Preview 26.30.29|Biome replacement in the [[Minecraft:Nether]] is now working as it should.}}
}}
}}


Line 252: Line 262:


== Navigation ==
== Navigation ==
{{MC/Navbox Java Edition technical|datapack}}
{{Navbox Java Edition technical|datapack}}
{{MC/Navbox Bedrock Edition}}
{{Navbox Bedrock Edition}}


[[Category:Java Edition]]
[[Category:Java Edition]]


de:Biomdefinition
[[Minecraft:de:Biomdefinition]]
fr:Définition de biome
[[Minecraft:fr:Définition de biome]]
ja:バイオームのカスタマイズ
[[Minecraft:ja:バイオームのカスタマイズ]]
pt:Definição de biomas
[[Minecraft:pt:Definição de biomas]]
uk:Визначення біому
[[Minecraft:uk:Визначення біому]]
zh:生物群系定义格式
[[Minecraft:zh:生物群系定义格式]]

Latest revision as of 11:03, 2 June 2026

Template:For Minecraft:Biomes are stored as Minecraft:JSON files within a Minecraft:data pack in the path Template:Cd Template:In or in a Minecraft:behavior pack in the folder Template:Cd Template:In.

JSON format

Java Edition

  • Template:Nbt: The root object.
    • Template:Nbt: Determines whether or not the biome has precipitation.
    • Template:Nbt: Controls gameplay features like grass and foliage color, and a height adjusted temperature (which controls whether raining or snowing occurs if Template:Nbt is Template:Cd, and generation details of some features).
    • Template:Nbt: (optional, defaults to none) Either Template:Cd or Template:Cd. Modifies temperature before calculating the height adjusted temperature. If Template:Cd, makes some places' temperature high enough to rain (0.2).
    • Template:Nbt: Controls grass and foliage color.
    • Template:Nbt: Ambient effects in this biome.
      • Template:Nbt: (Required, but the normal value is 4159204) Decimal value converted from Hex color to use for water blocks and cauldrons.
      • Template:Nbt: (optional) Decimal value converted from Hex color to use for tree leaves and vines. If not present, the value depends on downfall and the temperature.
      • Template:Nbt: (optional) Decimal value converted from Hex color to use for leaf litter.
      • Template:Nbt: (optional) Decimal value converted from Hex color to use for grass blocks, short grass, tall grass, ferns, tall ferns, and sugar cane. If not present, the value depends on downfall and temperature.
      • Template:Nbt: (optional, defaults to none) Can be Template:Cd, Template:Cd or Template:Cd.
    • Template:Nbt: (optional) Map of Minecraft:environment attributes that apply when in this biome.
    • Template:NbtTemplate:NbtTemplate:Nbt: Template:Json ref (Required, but can be empty)
    • Template:Nbt: List of generation steps (Can be empty). Usually there are 11 steps, but any amount is possible.
      • Template:NbtTemplate:NbtTemplate:Nbt each entry of the list: Template:Json ref — Features to place during that generation step. The same placed features in the same step in two biomes cannot be in different orders. In each step, all feature IDs need to be ordered consistently across biomes. For example, in the UNDERGROUND_ORES step of minecraft:plains, ore_dirt is before ore_gravel. In other biomes' UNDERGROUND_ORES step, if both ore_dirt and ore_gravel as present, ore_gravel cannot be before ore_dirt.
      These generation steps are also referred to by name for structure generation. They are, in order:
      • Template:Cd: Used by small end island features in vanilla.
      • Template:Cd: Used by lava lakes in vanilla.
      • Template:Cd: Used for amethyst geodes and icebergs in vanilla.
      • Template:Cd: Used for dungeons and overworld fossils in vanilla.
      • Template:Cd: Used for desert wells and blue ice patches in vanilla.
      • Template:Cd: Not used for features in vanilla.
      • Template:Cd: Used for overworld ore blobs, overworld dirt/gravel/stone variant blobs, and sand/gravel/clay disks in vanilla.
      • Template:Cd: Used for infested block blobs, nether gravel and blackstone blobs, and all nether ore blobs in vanilla.
      • Template:Cd: Used for water and lava springs in vanilla.
      • Template:Cd: Used for trees, bamboo, cacti, kelp, and other ground and ocean vegetation in vanilla.
      • Template:Cd: Used for surface freezing in vanilla.
    • Template:Nbt: (optional) Higher value results in more creatures spawned in world generation. Must be between 0.0 and 0.9999999 (both inclusive).
    • Template:Nbt: (Required, but can be empty. If this object doesn't contain a certain category, mobs in this category do not spawn.) Entity spawning settings.
    • Template:Nbt: (Required, but can be empty. Only mobs listed here use the spawn cost mechanism) See Template:Slink for details.

Template:Calculator

Bedrock Edition

Template:WIP

History

Java Edition

Template:HistoryTable

Bedrock Edition

Template:HistoryTable

External links

References

<references/>

Navigation

Template:Navbox Java Edition technical Template:Navbox Bedrock Edition

Minecraft:de:Biomdefinition Minecraft:fr:Définition de biome Minecraft:ja:バイオームのカスタマイズ Minecraft:pt:Definição de biomas Minecraft:uk:Визначення біому Minecraft:zh:生物群系定义格式