Biome Configs

Note: This information is for OTG 1.12.2. For 1.16.x, see Biome Configs 1.16.

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

Use SettingsMode: WriteAll in the WorldConfig to write the latest settings and documentation (always back up your preset files first).

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

Spigot:

```
/plugins/OpenTerrainGenerator/worlds/_presetname_/WorldBiomes
```

Forge:

```
/mods/OpenTerrainGenerator/worlds/_presetname_/WorldBiomes
```

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

**Defined by**

```
BiomeExtends:
```

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 Inheritance

**Defined by:**

```
ResourceInheritance:
```

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

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

```
BiomeRarity:
```

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

```
BiomeColor:
```

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

```
ReplaceToBiomeName:
```

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

## Isle Biomes Only

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

```
BiomeSizeWhenIsle:
```

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.

```
BiomeRarityWhenIsle:
```

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

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

```
NotBorderNear:
```

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

```
BiomeSizeWhenBorder:
```

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

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

```
BiomeVolatility:
```

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

```
SmoothRadius:
```

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

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 https://minecraft.gamepedia.com/Biome#Biome\_types). 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)

## Water / Lava & Frozen States

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.

```
WaterBlock:
```

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

```
IceBlock:
```

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.

```
CooledLavaBlock:
```

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

## Visuals and weather

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

```
BiomeTemperature:
```

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.

```
BiomeWetness:
```

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

This section control all resources spawning after terrain generation.

For more in-depth information on each resource, see the Resource Queue page.

## Sapling resource

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:

```
Sapling(SaplingType,TreeType,TreeType_Chance[,Additional_TreeType,Additional_TreeType_Chance.....])

```

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

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

## Structures

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

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 https://github.com/MinecraftForge/MinecraftForge/blob/1.10.x/src/main/java/net/minecraftforge/common/BiomeDictionary.java 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 https://minecraft.gamepedia.com/Biome 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.