Hi Gamepedia users and contributors! Please complete this survey to help us learn how to better meet your needs in the future. We have one for editors and readers. This should only take about 7 minutes!

Bedrock Edition beta biomes documentation

From Minecraft Wiki
Jump to: navigation, search
Information icon.svg
This feature is exclusive to Bedrock Edition.

This is the biome documentation for Bedrock Edition beta 1.14.0.52. New features, components, and capabilities in this release are not final and might change without notice before the final release. Be sure to check the documentation once the release is out of beta if the add-on isn't working properly. Resource and behavior packs created for the beta are not guaranteed to work on the final release.

Overview[edit]

Biomes describe how a local patch of the world should look and behave. By writing custom biome data, the player can:

  1. Change the general shape of terrain for a biome.
  2. Change the ratio of frequency of biome types.
  3. Change the blocks that make up the biome, both at the surface and below.
  4. Change the distribution of decorative features (e.g. trees, grass, etc.) for a biome.
  5. Change the mobs that spawn for a biome.
  6. Change the climate for a biome.

JSON format[edit]

All biomes should specify the version that they target via the "format_version" field. The remainder of the biome data is divided up into independent JSON sub-objects, or components. In general you can think of the presence of a component as defining what game behaviors a biome participates in with the component fields defining how it participates. Broadly there are two categories of components:

  1. Namespaced components (i.e. those with a 'name:' prefix) map to specific behaviors in-game; they may have member fields that parameterize that behavior; only names that have a valid mapping are supported.
  2. Components with no namespace are treated as 'tags': any name consisting of alphanumeric characters, '.' and '_' is permitted; the tag is attached to the biome so that either code or data may check for its existence; tag components may not have member fields.

See the biome properties below for registering biomes.

Here is a sample biome
{
  "format_version": "1.13.0",
  "minecraft:biome": {
    "description": {
      "identifier": "plains"
    },
    "components": {
      "minecraft:climate": {
        "downfall": 0.4,
        "snow_accumulation": [ 0.0, 0.125 ],
        "temperature": 0.8
      },
      "minecraft:overworld_height": {
        "noise_type": "lowlands"
      },
      "minecraft:overworld_surface": {
        "floor_depth": 7,
        "floor_material": "minecraft:gravel",
        "foundation_material": "minecraft:stone",
        "mid_material": "minecraft:dirt",
        "top_material": "minecraft:grass"
      },
      "minecraft:world_generation_rules": {
        "hills_transformation": [
          [ "forest_hills", 1 ],
          [ "forest", 2 ]
        ],
        "mutate_transformation": "sunflower_plains",
        "generate_for_climates": [
          [ "medium", 3 ],
          [ "warm", 1 ],
          [ "cold", 1 ]
        ]
      },

      "animal": {},
      "monster": {},
      "overworld": {},
      "plains": {}
    }
  }
}

Adding biomes[edit]

Biomes are read from JSON files in the biomes subfolders of behavior packs. Loading enforces one biome per file; the file name and the actual biome name must match. Adding a file with a new name to the biome data location will make it available for the game to use, while existing biomes can be overriden via files that match their existing name. Note that if you add a new biome you'll need to write component data that allows it to participate in world generation, or else it won't show up in the worlds.

Components[edit]

minecraft:climate[edit]

Describes temperature, humidity, precipitation, etc. Biomes without this component will have default values.

Type Name Default Value Description
Decimal temperature 0.0
Decimal downfall 0.0
List snow_accumulation [ 0.0, 0.0 ]

minecraft:overworld_height[edit]

Noise parameters used to drive terrain height in the Overworld.

Type Name Default Value Description
List noise_params [ 0.0, 0.0 ]
String noise_type default

minecraft:overworld_surface[edit]

Control the blocks used for the default Minecraft Overworld terrain generation.

Type Name Default Value Description
String top_material Controls the block type used for the surface of this biome.
String mid_material Controls the block type used in a layer below the surface of this biome.
String floor_material Controls the block type used as a floor for bodies of water in this biome.
String foundation_material Controls the block type used deep underground in this biome.
Integer floor_depth Controls how deep below the world water level the floor should occur.

minecraft:surface_material_adjustments[edit]

Specify fine-detail changes to blocks used in terrain generation (based on a noise function).

Type Name Default Value Description
List adjustments All adjustments that match the column's noise values will be applied in the order listed.


materials[edit]

  • "top_material" - Controls the block type used for the surface of this biome when this adjustment is active.
  • "mid_material" - Controls the block type used in a layer below the surface of this biome when this adjustment is active.
  • "floor_material" - Controls the block type used as a floor for bodies of water in this biome when this adjustment is active.
  • "foundation_material" - Controls the block type used deep underground in this biome when this adjustment is active.


noise_range[edit]

Defines a range of noise values [min, max] for which this adjustment should be applied. Default value: [ 0.0, 0.0 ]

minecraft:swamp_surface[edit]

Similar to overworld_surface. Adds swamp surface details.

Type Name Default Value Description
String top_material Controls the block type used for the surface of this biome.
String mid_material Controls the block type used in a layer below the surface of this biome.
String floor_material Controls the block type used as a floor for bodies of water in this biome.
String foundation_material Controls the block type used deep underground in this biome.
Integer floor_depth Controls how deep below the world water level the floor should occur.

minecraft:frozen_ocean_surface[edit]

Similar to overworld_surface. Adds icebergs.

Type Name Default Value Description
String top_material Controls the block type used for the surface of this biome.
String mid_material Controls the block type used in a layer below the surface of this biome.
String floor_material Controls the block type used as a floor for bodies of water in this biome.
String foundation_material Controls the block type used deep underground in this biome.
Integer floor_depth Controls how deep below the world water level the floor should occur.

minecraft:mesa_surface[edit]

Similar to overworld_surface. Adds colored strata and optional pillars.

Type Name Default Value Description
String top_material Controls the block type used for the surface of this biome.
String mid_material Controls the block type used in a layer below the surface of this biome.
String floor_material Controls the block type used as a floor for bodies of water in this biome.
String foundation_material Controls the block type used deep underground in this biome.
Integer floor_depth Controls how deep below the world water level the floor should occur.
String clay_material
String hard_clay_material
Boolean bryce_pillars
Boolean has_forest


minecraft:nether_surface[edit]

Use default Minecraft Nether terrain generation.


minecraft:the_end_surface[edit]

Use default Minecraft End terrain generation.


minecraft:world_generation_rules[edit]

Control how this biome is instantiated (and then potentially modified) during world generation.

Type Name Default Value Description
String hills_transformation
String mutate_transformation
String river_transformation
String shore_transformation
List generate_for_climates [ "", 0 ] Controls the world generation climate categories that this biome can spawn for. A single biome can be associated with multiple categories with different weightings.

Biomes[edit]

Biome Definition Properties[edit]

These properties are part of the Biome Definition. This helps the system determine how to parse and initialize this biome.

Type Name Default Value Description
format_version Specifies the version of the game this biome was made in. If the version is lower than the current version, any changes made to the biome in the vanilla version will be applied to it.
Code Example
Example
{
  "format_version": "1.13.0",
  "minecraft:biome": {
   "components": {
      ...
   }
    ...
  }
}


Biome Description Properties[edit]

Type Name Default Value Description
String identifier The identifier for this biome. The name may include a namespace.