Minecraft Wiki
Advertisement
Information icon
This feature is exclusive to Java Edition. 

Biomes stored as JSON files within a data pack in the path data/<namespace>/worldgen/biome.

JSON format[]

  • : The root object.
    •  has_precipitation: Determines whether or not the biome has precipitation.
    •  temperature: Controls gameplay features like grass and foliage color, and a height adjusted temperature (which controls whether raining or snowing if  has_precipitation is true, and generation details of some features).
    •  temperature_modifier: (optional, defaults to none) Either none or frozen. Modifies temperature before calculating the height adjusted temperature. If frozen, makes some places' temperature high enough to rain (0.2).
    •  downfall: Controls grass and foliage color.
    •  effects: Ambient effects in this biome.
      •  fog_color: Decimal value converted from Hex color to use for fog.
      •  sky_color: Decimal value converted from Hex color to use for the sky.
      •  water_color: Decimal value converted from Hex color to use for water blocks and cauldrons.
      •  water_fog_color: Decimal value converted from Hex color to use for fog.
      •  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.
      •  grass_color: (optional) Decimal value converted from Hex color to use for grass blocks, grass, tall grass, ferns, tall ferns, and sugar cane. If not present, the value depends on downfall and temperature.
      •  grass_color_modifier: (optional, defaults to none) Can be none, dark_forest or swamp.
      •  particle: (optional) The particle to use throughout this biome.
        •  probability: Controls how often the particle spawns. Value higher than 1 is regarded as 1, lower than 0 is regarded as 0.
        •  options: Controls what particle to use. See also Commands/particle.
          •  type: The namespaced id of the particle type.
            If type is block, block_marker or falling_dust, additional field are as follows:
          •  value: Contains the block state used for the particle.
            • Block state
            If type is item, additional fields are as follows:
          •  value: Contains the item data used for the particle.
            •  id: Namespaced id of the item to use.
            •  Count: The amount of the item.
            •  tag: NBT data present on the item in JSON format. See NBT format#JSON and NBT.
            If type is dust, additional fields are as follows:
          •  color: Three floats representing the red, green, and blue components of the dust color, each from 0 to 1.
          •  scale: Controls the size of the dust particles.
            If type is dust_color_transition, additional fields are as follows:
          •  fromColor: Three floats representing the red, green, and blue components of the start color, each from 0 to 1.
          •  toColor: Three floats representing the red, green, and blue components of the end color, each from 0 to 1.
          •  scale: Controls the size of the particles.
            If type is sculk_charge, additional field is as follows:
          •  roll: The angle the particle displays at in radians.
            If type is vibration, additional fields are as follows:
          •  destination: The destination.
            • A position source
          •  arrival_in_ticks: The duration of the move.
            If type is shriek, additional field is as follows:
          •  delay: The delay in ticks.
      •  ambient_sound: (optional) A namespace ID of the sound event to use for ambient sound. Can also be an object to specify a fixed audible range of the sound.
        •  sound_id: A namespace ID of the sound event to use.
        •  range: (optional) The fixed audible range of the sound.
      •  mood_sound: (optional) Settings for mood sound.
        •  sound: A namespace ID of the sound event to use. Can also be an object to specify a fixed range of the sound.
          •  sound_id: A namespace ID of the sound event to use.
          •  range: (optional) The fixed audible range of the sound.
        •  tick_delay: The mininum delay between two plays. See also Ambience#Mood_algorithm.
        •  block_search_extent: Determines the cubic range of possible positions to find place to play the mood sound. The player is at the center of the cubic range, and the edge length is 2 * block_search_extent.
        •  offset: The higher the value makes the sound source further away from the player.
      •  additions_sound: (optional) Settings for additions sound.
        •  sound: A namespace ID of the sound event to use. Can also be an object to specify a fixed range of the sound.
          •  sound_id: A namespace ID of the sound event to use.
          •  range: (optional) The fixed audible range of the sound.
        •  tick_chance: The propability to start playing the sound per tick. Value higher than 1 is regarded as 1, lower than 0 is regarded as 0.
      •  music: (optional) Specific music that should be played in the biome.
        •  sound: A namespace ID of the sound event to use. Can also be an object to specify a fixed range of the sound.
          •  sound_id: A namespace ID of the sound event to use.
          •  range: (optional) The fixed audible range of the sound.
        •  min_delay: The min delay between two music.
        •  max_delay: The max delay between two music.
        •  replace_current_music: Whether or not to replace music which is already playing.
    •  carvers: The carvers to use.
      •  air: (Optional, can be empty) List of carvers used during the air cave generation step. Can be an id of a configured carver, a tag of configured carvers, or a configured carver object, or a list of configured carver IDs, or a list of configured carver objects.
      •  liquid: (Optional, can be empty) List of carvers used during the liquid cave generation step. Currently doesn't work. Can be an id of a configured carver, a tag of configured carvers, or a configured carver object, or a list of configured carver IDs, or a list of configured carver objects.
    •  features: (Can be empty) A list of 11 elements. Each element can be a tag of placed feature, a list of placed feature IDs, or a list of placed feature objects. The features are applied to each chunk in order in each 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 UNDERGROUND_ORES step of minecraft:plains, ore_dirt is before ore_gravel, so in other biomes' UNDERGROUND_ORES step, if there are ore_dirt and ore_gravel, ore_gravel cannot be after ore_dirt. The generation steps are also used in stucture features.
      • : Generation step RAW_GENERATION. Used by small end island features in vanilla.
      • : Generation step LAKES. Used by lava lakes in vanilla.
      • : Generation step LOCAL_MODIFICATIONS. Used for amethyst geodes and icebergs in vanilla.
      • : Generation step UNDERGROUND_STRUCTURES. Used for dungeons and overworld fossils in vanilla.
      • : Generation step SURFACE_STRUCTURES. Used for desert wells and blue ice patches in vanilla.
      • : Generation step STRONGHOLDS. Not used for features in vanilla.
      • : Generation step UNDERGROUND_ORES. Used for overworld ore blobs, overworld dirt/gravel/stone variant blobs, and sand/gravel/clay disks in vanilla.
      • : Generation step UNDERGROUND_DECORATION. Used for infested block blobs, nether gravel and blackstone blobs, and all nether ore blobs in vanilla.
      • : Generation step FLUID_SPRINGS. Used for water and lava springs in vanilla.
      • : Generation step VEGETAL_DECORATION. Used for trees, bamboo, cacti, kelp, and other ground and ocean vegetation in vanilla.
      • : Generation step TOP_LAYER_MODIFICATION. Used for surface freezing in vanilla.
    •  creature_spawn_probability: (optional) Higher value results in more creatures spawned in world generation. Must be between 0.0 and 0.9999999 (both inclusive).
    •  spawners: (Required, but can be empty. If this object doesn't contain a certain category, mobs in this category will not be spawned) Entity spawning settings.
      •  <mob category>: (Can be empty. If empty, mobs in this category will not be spawned) The key must be one of monster, creature, ambient, water_creature, underground_water_creature, water_ambient, misc, or axolotls. A list of spawner data objects, one for each mob which should spawn in this biome.
        • : The spawner data for a single mob.
          •  type: The namespaced entity id of the mob.
          •  weight: How often this mob should spawn, higher values produce more spawns.
          •  minCount: The minimum count of mobs to spawn in a pack. Must be greater than 0.
          •  maxCount: The maximum count of mobs to spawn in a pack. Must be greater than 0. And must be not less than  minCount.
    •  spawn_costs: (Required, but can be empty. Only mobs listed here use the spawn cost mechanism) See Spawn#Spawn costs for details.
      •  <entity id>: The namespaced entity id of the mob.
        •  energy_budget: New mob's maximum potential.
        •  charge: New mob's charge.

History[]

Java Edition
1.1922w11aRemoved the category field. Functionality has been moved to biome tags.
1.19.3Pre-release 3Now when specifying a sound event, a fixed audible range can be also specified within an object.
1.19.423w03aRenamed the precipitation field to 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".[1]
Pre-release 1Now  minCount and  maxCount in  spawners must be a positive integer. And  maxCount must be not less than  minCount.

References[]

Advertisement