Biome

A biome is a region in a world with distinct geographical features, flora, temperatures, humidities, and sky, water, fog, grass and foliage colors. Biomes separate every generated world into different environments, such as forests, deserts and taigas.

The biome of a location is determined during world generation rather than current environment. Even if the player completely changes all the blocks in a large area to imitate the terrain of other biomes, the biomes in this area are not be affected. However, $$, command can changes the biome in an area.

Temperature and biome colors
Biomes have a temperature value that determines if the water freezes, and if it precipitates as snowfall or rain. The required temperature values for snow and rain are less than 0.15 for snow and above 0.15 for rain. The temperature drops 0.00125 units ($1/800$) per meter of altitude above y=74, but does not change below that level. The temperature and downfall values of a biome are used when determining the colors of a small selection of blocks: grass, grass blocks, some leaves, vines, sugar cane. Blocks such as mossy cobblestone, mossy stone bricks, moss, dripleaves, glow berries and the stems of flowers are not affected by biome coloration. The water color is affected by biome coloration but it's not based on temperature and instead is set by a color code, and the water color of each biomes varies between versions. $$ most biomes have a default water color with the exception of swamps and oceans while in Bedrock Edition most biomes have unique water colors.



These values can be used to determine the heights that snow generates at in different biomes. For example, windswept hills begin to generate snow at around y=113, due to their highland climate, as their temperature value is 0.2, the temperature affects only the transition from rain to snowfall. All the biomes in vanilla with temperature above 1.0 (and by extent, all the dry biomes) are hardcoded to never have precipitation at any height or temperature. For example, savannas do not experience rain or snow due to their dryness. If a biome with a temperature above 1.0 is edited to allow precipitation through a data pack or mod, it simply behaves like a normal rainy biome.



Biomes are split into 5 categories based on their temperature: snowy, cold, temperate/lush, dry/warm and neutral.



They are almost always separated during terrain generation to prevent biomes with huge temperature differences being placed side-by-side (such as a snowy taiga next to a desert), and to allow biomes with similar temperatures to be placed next to each other more often (such as forests and plains).

Tint
Biome grass and foliage colors are selected from two 256×256 colormap images: grass.png and foliage.png. Both colormaps, shown to the right, can be found in. The grass.png colormap sets the colors for the grass block top and sides (along with other types of grass, such as grass, ferns, double tall grass, etc.). Meanwhile, the foliage.png colormap sets the colors for tree leaves (with the exception of azalea, spruce and birch).

Biome colormaps use a triangular gradient by default. However, only the colors in the lower-left half of the image are used, even though the upper-right side of foliage.png is colored. Furthermore, as shown in the template image to the left, a select few pixels are considered when the colormap is read by the game, and are determined by the code below.

The adjusted temperature and adjusted downfall values (recognized as AdjTemp and AdjDownfall in the code, respectively) are used when determining the biome color to select from the colormap. Treating the bottom-right corner of the colormap as  and , the adjusted temperature increases to 1.0 along the X-axis, and the adjusted downfall increases to 1.0 along the Y-axis. The values used to retrieve the colors are computed as follows: "clamp" limits the range of the temperature and downfall to 0.0-1.0. The clamped downfall value is then multiplied by the 0.0-1.0 adjusted temperature value, bringing its value to be inside the lower left triangle. Some biomes' ranges are shown in the template above; the multiplication makes all the line segments point toward the lower right corner.

At borders between or among biomes, the colors of the block and its eight neighbors are computed and the average is used for the final block color.

The exact temperature and downfall values for biomes can be found in various projects, e.g. this biome code.

Several other biome colors are set into the game and currently require external tools in order to be changed. This includes blocks such as birch and spruce leaves and water (which have a hard-coded overlay set onto them), and other features such as the sky and fog.

Sky and fog
The sky colors are not directly determined by the temperature and downfall values but instead are determined by a color code. However, the sky color that is set for each biome is mostly based on the temperature values, which means that warmer biomes have brighter skies and colder biomes have slightly purplish skies.

Generation
Minecraft biomes are generated using several conditions for. These conditions are depth, peaks and valleys, temperature, humidity, erosion, and continentalness. These conditions dictate the final biome result for each location in a given Minecraft seed:


 * Depth: used for the generation of underground biomes.
 * Peaks and valleys: determines height of the terrain and the placement of biomes that depend on the terrain height such as the mountain peak and slope biomes and rivers, it can be one of Valley, Low, Mid, High, or Peak, it is also used for the generation of biome variants that are usually separated by rivers like bamboo jungles.
 * Temperature: only affects the placement of biomes, it ranges from 0 to 4.
 * Humidity: only affects the placement of land biomes, it ranges from 0 to 4.
 * Lush caves only generate when humidity is 3 or higher.

* If weirdness is positive ** If erosion is 3 or lower

If erosion is low enough, then a "near moutain" biome will be selected instead of a regular biome. As PV is closer to Peak, and continentalness is closer to Far Inland, higher erosion levels can produce a near mountain biome. When erosion is very low, PV is High or Peak, and continentalness is sufficiently inland, a peaks biome will be selected instead. When a peaks biome is selected, and temperature is betweeen 0-2, the biome will be Jagged peaks/Frozen peaks if weirdness is negative/positive. If the temperature is 3, the Stony peaks biome will generate. If the temperature is 4, then a badlands biome will generate like in the table below. * If weirdness is positive
 * Erosion: this value is used to determine how flat the terrain is, it ranges from 0 to 6 with lower values being more mountainous and higher values being flatter. This value affects the placement of certain biomes, such as mountain biomes which only generate when erosion is lower than 2, badlands generate when erosion is 3 or lower and swamps only generate when erosion is 6.
 * Deep dark only generates when erosion is low enough.
 * Continentalness: noise used to decide between ocean/beach/land biomes. It can be one of Mushroom fields, Deep ocean, Ocean, Coast, Near inland, Mid inland, or Far inland.
 * Dripstone caves only generate when continentalness is Far inland.
 * Swamps: If erosion is 6, and the temperature is 1-2/3-4, then the biome will be a swamp/mangrove swamp, regardless of humidity. However this will not be the case if continentalness is Coast, or if PV is between High and Peak.

Biome types
$$ there are 63 different biome types: 52 for the Overworld, 5 for the Nether, and 5 for the End, plus one used only for a superflat preset. $$ there are 84 biome types: 48 for the Overworld, 5 for the Nether, 1 for the End, and 30 unused.

Ocean biomes
These biomes are used for the generation of oceans. Oceans are large, open biomes made entirely of water going up to y=63, with underwater relief on the sea floor, such as small mountains and plains, usually including gravel. Squid and fish spawn frequently in the water. Due to its characteristics and generation mechanisms, mushroom fields are also classified as an ocean biome.

Highland biomes
Highland biomes are biomes with high Y-level, rugged terrain, and snow-covered peaks appear above the snow line.

Wooded biomes
Wooded biomes are rich in plants, with trees, flowers and grasses constituting the flora on the surface. It is one of the ideal birthplaces where plenty of wood resources are available, but the dense vegetation makes it dangerous to move around the forest at night because the trees block the view.

Wetland biomes
Wetland biomes contains rivers, swamps and beaches. They have a large amount of water resources. Rivers separate other biomes; beaches generate as a transition between the ocean and land.

Flat biomes
These biomes have a flat terrain and a wide view. Trees spawn less here, while lakes are more common here.

Arid biomes
In these biomes, it neither rains nor snows at all, but the sky still turns overcast during inclement weather. The surface is covered with sparse vegetation.

Cave biomes
These biomes generates inside caves in overworld. They're mostly found underground but can sometimes leak out of cave entrances.

The Nether
The Nether is considered a different dimension. It is a hellish place; all biomes in this dimension are dry and it is not possible to place water in these biomes, though ice can still be placed. Additionally, packed ice and blue ice never melt in the nether, as with the other non-freezing biomes.

The End
The End is considered a different dimension.

Unused biomes
These biomes don't generate in default worlds. They have been completely removed from the game $$.

Removed biomes
These biomes no longer exist in current versions of the game.

Joke biomes
These biomes can only appear in the joke snapshot of the game.

Trivia

 * The term biome is analogous to its scientific usage: in real life, a biome is climatically and geographically defined by distinctive communities of plants, animals and soil organisms supported by similar climatic conditions. They are often referred to as ecosystems.
 * Most biomes in the Overworld are based on real world counterparts. Dark forests or swamps parallel real world biomes except for the addition of giant mushrooms, which don't exist in reality. Biomes in the nether and the end don't exist either.
 * It is possible for biomes to be a single block in size.