Each biome has it's own configuration file (BiomeName.bc) which can be edited in any text editor Notepad++ is recommended).

You can find the biome config files of a world in:





There's also a GlobalBiomes folder in /OpenTerrainGenerator/GlobalBiomes/ that allows you to share biomes across multiple worlds on the same server.

Every Biome configuration file is divided into sections each representing a specific aspect of its generation process.
Here we list all of them with a brief explanation of its usage, remember that every Biome configuration file already comes with plenty of comments to look into too.

Biome inheritance Edit

Defined by


If you provide a Biome name here, OTG will use the settings from the specified biome for all the missing ones in the current Biome configuration.

When working with certain worlds you may find yourself often creating multiple biomes that are very similar. When you want to make a change to all of those biomes, you would need to go through each of their configs and change their settings.

Biome inheritance solves this problem by introducing the mechanic of child biomes inheriting settings from a parent one.

For instance if you made the MyForest Biome (with all of its settings specified) and you wish to make a more hilly version of it, you can just make a new biome called MyForestMountains where you specify BiomeExtends: MyForest and set only the option BiomeVolatility: 0.5. All the other missing settings in MyForestMountains will be inherited from MyForest. From now on all the changes in MyForest will be transposed to MyForestMountains except the BiomeVolatility: 0.5.

Resource InheritanceEdit

Defined by:


Boolean, when set to `true`, all resources of the parent biome (if any) will be copied to the resources queue of this biome. If a resource in the parent biome looks very similar to that of a child biome (for example, two ores of the same type) it won't be copied.

Biome Placement Edit

Integer from 0 to GenerationDepth, set the size of the biome when spawned by a BiomeGroup. See also BiomeSizeWhenIsle and BiomeSizeWhenBorder below.

Integer from 0 to 100, the probability of the biome when spawned by a BiomeGroup. See also BiomeRarityWhenIsle below.


This is the internal (hexadecimal) color for this biome to be used in FromImage mode and on the biome map.


Only available in custom biomes. Replaces this biome to the one specified after the terrain has generated.

Isle Biomes Only Edit

String, another biome name. Determines in which biome this biome will spawn as an island.

Integer from 0 to GenerationDepth, size of this biome when spawned as an isle biome. Larger numbers give smaller islands. The biome must be smaller than the biome it's going to spawn in, so the BiomeSizeWhenIsle number must be larger than the BiomeSize of the other biome.


Rarity of this biome when spawned as an isle biome. Seems to have an logarithmic scale: a rarity of 100 makes the biome spawn everywhere in the parent biome, 99 only on 50% of the biome, and so on.

Border Biomes Only Edit

String, another biome name. Determines to which biome this biome will be border.

String, another biome name. This setting determines next to which biome a border biome should not spawn.


Integer from 0 to GenerationDepth, size of this biome when spawned as a border biome. Larger numbers give smaller borders. The biome must be smaller than the biome it's going to spawn in, so the BiomeSizeWhenBorder number must be larger than the BiomeSize of the other biome.

Terrain Height and Volatility Edit

Float from -10.0 to 10.0, the height of the biome, the below table shows the resulting Y level:

Float, how hilly the biome is, larger values make the terrain more hilly.


This setting must be in the range 0-32 and its scope is to ease the transition between the two adjacent biomes. The formula is: [SmoothRadius (of this biome) + 1 + SmoothRadius (of the adjacent biome)]*4 Hence two biomes with a SmoothRadius of 3 and 5 will yield a 36 blocks wide transition ((3+1+5)*4).

Rivers Edit

This section rules how rivers are generated and it is split in two mutually excluding configurations depending based on the ImprovedRivers: option in WorldConfig.ini.

When ImprovedRivers: false

The RiverBiome: {biome name} option is read and taken in account, here you can specify which biome should be used as a "river", usually the Vanilla River or FrozenRiver biome is used (you can check them here This will most likely cause a non-homogenous transition in the landscape, here is where the ImprovedRivers: true comes handy.

When ImprovedRivers: true these options become available:

RiverHeight: float behaves like BiomeHeight (see Biome_Configs#Terrain_Height_and_Volatility)

RiverVolatility: float behaves like BiomeVolatility (see Biome_Configs#Terrain_Height_and_Volatility)

RiverWaterLevel: {Y coordinate in the World} acts like a filler, every empty space between the surface and this quote will be filled with water.

RiverCustomHeightControl: behaves like CustomHeightControl (see Biome_Configs#Terrain_Height_and_Volatility)

Blocks Edit

Water / Lava & Frozen States Edit

This section has a main toggle which is the UseWorldWaterLevel option that defaults to `true` meaning that OTG will ignore all the other settings in this section and defaults to the global world ones. Changing the option to `false` enable the options which are almost self-explanatory:


Integer from 0 to sky limit, these options set the higher and lower Y boundaries where water (or a custom block) will be spawned whenever the surface Y height is lower than WaterLevelMax and higher than WaterLevelMin.


String name of the block. What to spawn when the abovementioned criteria are met.


String name of the block. Which block should be spawned as "Ice" in place of water whenever the BiomeTemperture is below the default Vanilla Minecraft 0.15.


Same as the IceBlock but for Lava replacement when it's too "cold" for liquid lava to exist.

Visuals and weather  Edit

For Server installations of OTG this settings will have an effect only on the clients with OTG installed too.


A value between 0.0 and 2.0 set the Biome Temperature following Vanilla standards. If this is set for a Vanilla Biome replacement it will only affect foliage and grass color.


A value between 0.0 and 1.0 set the chance rain can occur.


Self-explanatory, it is a color expressed as a hexadecimal value, here you can read a list of common colors, otherwise google is your friend=). Remember to prepend the #.


Boolean `true` or `false`, simpy put tells OTG if the grass and foliage colors must always exactly be as set above (`false`) or if the color can change as a mixture between the above set color the BiomeTemperature and the BiomeWetness settings (`true`).

Resource queue Edit

This section control all resources spawning after terrain generation.

The resources will be placed in the order you define them, here's an example in which Ore Dirt will be added before Ore Gravel. Do keep in mind that high resource frequency or rarity may slow down terrain generation.


These are the possible resources as of OTG 1.12.2+-+v6

Liquid(BlockName,Frequency,Rarity,MinAltitude,MaxAltitude,BlockSource[,BlockSource2,BlockSource3.....]) AboveWaterRes(BlockName,Frequency,Rarity)Vines(Frequency,Rarity,MinAltitude,MaxAltitude)
IceSpike(BlockName,IceSpikeType,Frequency,Rarity,MinAltitude,MaxAltitude,Blocksource[,BlockSource2,...]) ===== Explaination/Example usage of the resources:

BlockName:    must be the name of a block. May include block data, like "WOOL:1". BlockSource:    list of blocks the resource can spawn on/in. You can also use "Solid" or "All". Frequency:      number of attempts to place this resource in each chunk. Rarity:         chance for each attempt, Rarity:100 - mean 100% to pass, Rarity:1 - mean 1% to pass. MinAltitude and MaxAltitude: height limits. BlockSource:    mean where or whereupon resource will be placed

TreeType:       Tree (original oak tree) - BigTree - Birch - TallBirch - SwampTree -                  HugeMushroom (randomly red or brown) - HugeRedMushroom - HugeBrownMushroom -                  Taiga1 - Taiga2 - HugeTaiga1 - HugeTaiga2 -                  JungleTree (the huge jungle tree) - GroundBush - CocoaTree (smaller jungle tree)                  DarkOak (from the roofed forest biome) - Acacia                  You can also use your own custom objects, as long as they have set Tree to true in their settings.

TreeTypeChance: similar to Rarity. Example:                  Tree(10,Taiga1,35,Taiga2,100) - plugin tries 10 times, for each attempt it tries to place Taiga1 (35% chance), if that fails, it attempts to place Taiga2 (100% chance).

PlantType:      one of the plant types: Allium, AzureBluet, BlueOrchid, BrownMushroom, Dandelion, DeadBush, DoubleTallgrass, Fern, LargeFern, Lilac, OrangeTulip, OxeyeDaisy, Peony, PinkTulip, Poppy, RedMushroom, RedTulip, RoseBush, Sunflower, Tallgrass, WhiteTulip or simply a BlockName

IceSpikeType:   one of the ice spike types: Basement,HugeSpike,SmallSpike

Object:         can be a any kind of custom object (bo2 or bo3) but without the file extension. You can                   also use UseWorld to spawn one of the object in the WorldObjects folder and UseBiome to spawn                  one of the objects in the BiomeObjects setting. When using BO2s for UseWorld, the BO2 must have                   this biome in their spawnInBiome setting.

Plant and Grass resource: both a resource of one block. Plant can place blocks underground, Grass cannot. Liquid resource: a one-block water or lava source SmallLake and UnderGroundLake resources: small lakes of about 8x8 blocks Vein resource: not in vanilla. Starts an area where ores will spawn. Can be slow, so use a low Rarity (smaller than 1). CustomStructure resource: starts a BO3 structure in the chunk.

Sapling resource Edit

OpenTerrainGenerator allows you to grow your custom objects from saplings, instead of the vanilla trees. Add one or more Sapling functions here to override vanilla spawning for that sapling.

The syntax is:


Works like Tree resource instead first parameter.

Sapling types: All, Oak, Redwood, Birch, SmallJungle, BigJungle, RedMushroom, BrownMushroom, Acacia, DarkOak, HugeRedwood All - will make the tree spawn from all saplings, but not from mushrooms. BigJungle - for when 4 jungle saplings grow at once. RedMushroom/BrownMushroom - will only grow when bonemeal is used.

Custom objects Edit

These objects will spawn when using the UseBiome keyword. BiomeObjects:

Structures Edit

Here you can change, enable or disable the stuctures. If you have disabled the structure in the WorldConfig, it won't spawn, regardless of these settings. Disables strongholds for this biome. If there is no suitable biome nearby, Minecraft will ignore this setting.

StrongholdsEnabled: false

Whether a Woodland Mansion can be placed in this biome.

WoodLandMansionsEnabled: false

Whether an Ocean Monument can be placed in this biome.

OceanMonumentsEnabled: false

Whether a Nether Fortress can start in this biome. Might extend to neighbor biomes.

NetherFortressesEnabled: true

The village type in this biome. Can be wood, sandstone, taiga, savanna or disabled.

VillageType: disabled

The mineshaft type in this biome. Can be normal, mesa or disabled.

MineshaftType: normal

The mineshaft rarity from 0 to 100. 0 = no mineshafts, 1 = default rarity, 100 = a wooden chaos. Note that mineshafts will never spawn, regardless of this setting, if MineshaftType was set to disabled

MineshaftRarity: 1.0

The type of the aboveground rare building in this biome. Can be desertPyramid, jungleTemple, swampHut, igloo or disabled.

RareBuildingType: disabled

Mob spawning Edit

It's not possible to change mob spawns in vanilla biomes. These are the values used by vanilla for this biome. They are read-only: # changes to this setting are ignored and overwritten.

The monsters (skeletons, zombies, etc.) that spawn in this biome For instance [{"mob": "Spider", "weight": 100, "min": 4, "max": 4}, {"mob": "Zombie", "weight": 100, "min": 4, "max": 4}] Use the "/otg entities" console command to get a list of possible mobs and mob types. Use the "/otg biome -m" console command to get the list of registered mobs for a biome.

SpawnMonsters: []

The friendly creatures (cows, pigs, etc.) that spawn in this biome For instance [{"mob": "Sheep", "weight": 12, "min": 4, "max": 4}, {"mob": "Pig", "weight": 10, "min": 4, "max": 4}] Use the "/otg entities" console command to get a list of possible mobs and mob types. Use the "/otg biome -m" console command to get the list of registered mobs for a biome.

SpawnCreatures: []

The water creatures (only squids in vanilla) that spawn in this biome For instance [{"mob": "Squid", "weight": 10, "min": 4, "max": 4}] Use the "/otg entities" console command to get a list of possible mobs and mob types. Use the "/otg biome -m" console command to get the list of registered mobs for a biome.

SpawnWaterCreatures: []

The ambient creatures (only bats in vanila) that spawn in this biome For instance [{"mob": "Bat", "weight": 10, "min": 8, "max": 8}] Use the "/otg entities" console command to get a list of possible mobs and mob types. Use the "/otg biome -m" console command to get the list of registered mobs for a biome.

SpawnAmbientCreatures: []

Forge Biome Dictionary ID used by other mods to identify a biome and place modded blocks, items and mobs in it. This will only work for modded items/blocks/mobs that are placed in biomes while chunks are being generated. Most mods that add mods add their mobs to biomes' internal mob list when MC starts and let MC's mob spawning mechanics handle the actual spawning. This means that when TC creates new biomes when it generates a world other mods do not add their mobs to those biomes. This can be solved by using the InheritMobsBiomeName setting to inherit a a mob list from a vanilla biome. NOTE: Only works for biomes with id's under < 255 (non-virtual biomes). For virtual biomes the BiomeDictId is inherited via ReplaceToBiomeName.

BiomeDictId: See for a list.

Inherit the internal mobs list of another biome. Inherited mobs can be overridden using the SpawnMonsters, SpawnCreatures, SpawnWaterCreatures and SpawnAmbientCreatures settings. Any mob type defined using those settings will override inherited mob settings for the same mob. Use this setting to inherit modded mobs from vanilla biomes (see also: BiomeDictId)

InheritMobsBiomeName: See for a list of biomes.

Modded creatures work the same as vanilla creatures but with different EntityNames. Where you first sheep in {"mob": "Sheep", "weight": 12, "min": 4, "max": 4} you will need to use the EntityClassName. These can be easily found by using mods as Tellme. To get a list of the entityclassnames use /tellme dump entities.

Community content is available under CC-BY-SA unless otherwise noted.