BiomeConfigs - PG85/OpenTerrainGenerator GitHub Wiki

This page was ported from the TerrainControl wiki and is subject to updating as OTG begins the 1.16 update process.

Here the biome config file is explained. Each biome has it's own config file. You can find the biome config files of a world in /plugins/TerrainControl/worlds/_worldname_/WorldBiomes. There's also a GlobalBiomes folder in /plugins/TerrainControl/GlobalBiomes/ that allows you to share biomes across multiple worlds on the same server.

Jump to

Biome inheritance

Back to top

BiomeExtends:

If you provide a biome name here, Terrain Control will use the settings in that biome for all missing settings in this biome.

When working with Terrain Control, you'll find yourself often creating multiple biomes that are very similar. Just a few settings are different. When you want to make a change to all those biomes, you need to go through each biome config and change the setting.

Biome inheritance solves this problem. An example: you create one biome config with all settings of the biome. For this example, we call that biome MyForest. You then create another biome config called MyForestMountains that is completely empty. At the top of that file, you add BiomeExtends: MyForest. The biome MyForestMountains will now copy all settings from the MyForest biome. You can then add BiomeVolatility: 0.5 to MyForestMountains to make it more hilly. All settings from MyForest are still in the MyForestMountains biome, except the BiomeVolatility setting, which was overridden by the MyForestMountains biome. If you make a change to one of the other settings in MyForest, MyForestMountains will have those changes included too.

ResourceInheritance: true

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

Back to top

BiomeSize: 4

Size of the biome when spawned by a BiomeGroup. Read More See also BiomeSizeWhenIsle and BiomeSizeWhenBorder below.

BiomeRarity:100

Probability of the biome when spawned by a BiomeGroup. Read More See also BiomeRarityWhenIsle below.

BiomeColor:0x999900

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

ReplaceToBiomeName:

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

Isle biomes only

IsleInBiome:

Determines in which biome this biome will spawn as island. Read More

BiomeSizeWhenIsle: 6

Size of this biome when spawned as an ilse biome. Valid values range from 0 to GenerationDepth. 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: 97

Rarity of this biome when spawned as an ilse biome. Seems to have an logaritmetic 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:

Determines to which biome this biome will be border. Read More

NotBorderNear:

This setting determines next to which biome a border biome should not spawn. Read More

BiomeSizeWhenBorder: 8

Size of this biome when spawned as a border biome. Valid values range from 0 to GenerationDepth. 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

Back to top

BiomeHeight:0.1

The height of the biome. 0.0 is half of map height. Doesn't work when TerrainMode in the [WorldConfig]] is set to OldGenerator. [Read More

BiomeVolatility:0.3

How hilly the biome is. Doesn't work when TerrainMode in the WorldConfig is set to OldGenerator. Larger values make the terrain more hilly.

SmoothRadius:2

At the border of two biomes a transition area is created from the height of one biome to the height of the other biome. This setting controls how big that area is. Values must be between 0 and 32, inclusive.

The resulting smooth radius seems to be (thisSmoothRadius + 1 + smoothRadiusOfBiomeOnOtherSide) * 4. So if two biomes next to each other have both a smooth radius of 2, the resulting smooth area will be (2 + 1 + 2) * 4 = 20 blocks wide.

MaxAverageHeight:0.0

Higher values make mountains higher without affecting the lower areas of the terrain. Lower values will make the mountains lower, again without affecting the lower areas of the terrain.

MaxAverageDepth:0.0

Volatility1:0.0

Volatility2:0.0

Another type of noise which also works with TerrainMode:OldGenerator. Read More

VolatilityWeight1:0.5

VolatilityWeight2:0.45

Adjusts the weight of the corresponding volatility settings. This allows you to change how prevalent you want either of the volatility settings to be in the terrain.

DisableBiomeHeight:false

Normally lower areas are filled with stone and higher areas are air. When this setting is set to true, this will be disabled: you will get a Nether/Skylands-like world (depending on the values used in CustomHeightControl).

CustomHeightControl:0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0

List of custom height factors represented by floating point numbers, each entry controls about 7 blocks height. Used to force or surpress blocks a certain altitudes. The left most 0.0 affects biome floor, the right most 0.0 affects biome ceiling. Read More

Rivers

Back to top

There are two different river systems - the standard one and the improved one. See the ImprovedRivers settting in the WorldConfig. Both modes have different river settings, so carefully read the headers to know which settings you can use.

ImprovedRivers:false

RiverBiome:River

Only available when ImprovedRivers is set to false in the WorldConfig. Sets which biome is used as the river biome.

ImprovedRivers:true

RiverHeight:-1.0

Works the same as BiomeHeight, but is used where a river is generated in this biome.

RiverVolatility:0.3

Works the same as BiomeVolatility (scroll up), but is used where a river is generated in this biome.

RiverWaterLevel:63

Works the same as WaterLevelMax (scroll down), but is used where a river is generated in this biome. Can be used to create elevated rivers.

RiverHeightControl:0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0

Works the same as CustomHeightControl (scroll up), but is used where a river is generated in this biome.

Blocks

Back to top

SurfaceBlock:2

Surface block id of the biome. Most biomes use grass (id=2) as surface block. Cannot be higher than 255. Cannot use block data. See the Minecraft Wiki for the possible block ids.

GroundBlock:3

Ground block of the biome. Most biomes use dirt (id=3) as ground block. Cannot be higher than 255. Cannot use block data.

SurfaceAndGroundControl:

Allows for more refined control of the surface and ground blocks of the biome.

After the initial terrain generation, but before any resources are placed, this setting will replace the existing surface and ground blocks. This is done so that block data can be added, which is impossible in the initial terrain generation step. (CraftBukkit limitation.)

Each column in the world has a noise value from what appears to be -7 to 7. Values near 0 are more common than values near -7 and 7. This setting is used to change the surface block based on the noise value for the column.

Syntax: SurfaceBlock[:Data],GroundBlock[:Data],MaxNoise,[AnotherSurfaceBlock[:Data],[AnotherGroundBlock[:Data],MaxNoise[,...]]

Example: SurfaceAndGroundControl: STONE,STONE,-0.8,GRAVEL,STONE,0.0,DIRT,DIRT,10.0

  • When the noise is below -0.8, stone is the surface and ground block, between -0.8 and 0 gravel with stone just below and between 0.0 and 10.0 there's only dirt. Because 10.0 is higher than the noise can ever get, the normal SurfaceBlock and GroundBlock will never appear in this biome.

Alternatively, you can use Mesa, MesaForest or MesaBryce to get blocks like the blocks found in the Mesa biomes. The mesa biome has really complex surfaces, which cannot be recreated using any other setting.

ReplacedBlocks:None

With this setting, you can replace some blocks. The syntax is (blockFrom,blockTo),(anotherBlockFrom,anotherBlockTo),(etc.). You can also use the advanced syntax: (blockIdFrom,blockIdTo:blockDataTo,minHeight,maxHeight),(etc.).

Some examples:

(GRAVEL,GLASS) Replaces all gravel with glass blocks.

(GRASS,DIRT,100,127),(GRAVEL,GLASS) Replaces all grass with dirt from layers 100 to 127 and all gravel with glass.

Water and ice

Back to top

UseWorldWaterLevel:true

Set this to false to use the WaterLevelMax, WaterLevelMin, WaterBlock and IceBlock of this biome (see below). Set this to true to use the WaterLevelMax, WaterLevelMin, WaterBlock and IceBlock inside the WorldConfig.

WaterLevelMax:64

WaterLevelMin:0

Set water level. Every empty block between these levels will be filled with the block from WaterBlock. Only works if UseWorldWaterLevel is set to false.

WaterBlock:9

BlockId used as water in WaterLevel. Only works if UseWorldWaterLevel is set to false.

IceBlock:79

BlockId used as ice. Only works if UseWorldWaterLevel is set to false.

Visuals and weather

Back to top

Warning: most of these settings will only work for clients with the single player version of Terrain Control installed!

BiomeTemperature:0.8

Biome temperature from 0.0 to 1.0. Set it to (a value near) 0 to enable snow and ice. Players without the TC client mod will see snow on the ground but rain in the air.

BiomeWetness:0.4

Biome wetness from 0.0 to 1.0. Set it to 0 to disable rain.

The following colors are hexadecimal colors. The first two digits are the red component (from 00 to ff), the third and fourth digit are the green component and the last two digits are the blue component. Here you could find a lot of possible values, but remember that you have to replace the # with 0x (so #7ba5ff is 0x7ba5ff). Most of these values are multipliers, so that the color you choose gets multiplied with the default color.

SkyColor:0x7ba5ff

Color for the sky.

WaterColor:0xffffff

Color multiplier for the water.

GrassColor:0xffffff

Color for the grass (block and tall grass). Use GrassColorIsMultiplier to set whether this is the actual grass color, or just a multiplier.

GrassColorIsMultiplier:true

Whether the grass color is a multiplier. If you set it to true, the color will be based on this value, the BiomeTemperature and the BiomeWetness. This was the default behaviour before 2.3.2. If you set it to false, the grass color will be just this color.

FoliageColor:0xffffff

FoliageColorIsMultiplier:true

Color for the oak leaves. Works just like GrassColor and GrassColorIsMultiplier. Doesn't affect birch, jungle and pine leaves.

Resources queue

Back to top

In the resources queue you can add, modify and remove the things that populate your world (trees, ores, etc.). On this page each resource is explained.

Here is a small cheatsheet:

SmallLake(Block[:Data],Frequency,Rarity,MinAltitude,MaxAltitude)
Dungeon(Frequency,Rarity,MinAltitude,MaxAltitude)
UnderGroundLake(MinSize,MaxSize,Frequency,Rarity,MinAltitude,MaxAltitude)
Ore(Block[:Data],Size,Frequency,Rarity,MinAltitude,MaxAltitude,BlockSource[,BlockSource2,BlockSource3.....])
UnderWaterOre(Block[:Data],Size,Frequency,Rarity,BlockSource[,BlockSource2,BlockSource3.....])
CustomObject(Object[,AnotherObject[,...]])
CustomStructure([Object,Object_Chance[,AnotherObject,Object_Chance[,...]]])
Tree(Frequency,TreeType,TreeType_Chance[,Additional_TreeType,Additional_TreeType_Chance.....])
Plant(PlantType,Frequency,Rarity,MinAltitude,MaxAltitude,BlockSource[,BlockSource2,BlockSource3.....])
Grass(PlantType,Unused,Frequency,Rarity,BlockSource[,BlockSource2,BlockSource3.....])
Reed(Block[:Data],Frequency,Rarity,MinAltitude,MaxAltitude,BlockSource[,BlockSource2,BlockSource3.....])
Cactus(Block[:Data],Frequency,Rarity,MinAltitude,MaxAltitude,BlockSource[,BlockSource2,BlockSource3.....])
Liquid(Block[:Data],Frequency,Rarity,MinAltitude,MaxAltitude,BlockSource[,BlockSource2,BlockSource3.....])
AboveWaterRes(Block[:Data],Frequency,Rarity)
Vines(Frequency,Rarity,MinAltitude,MaxAltitude)
Vein(Block[:Data],MinRadius,MaxRadius,Rarity,OreSize,OreFrequency,OreRarity,MinAltitude,MaxAltitude,BlockSource[,BlockSource2,..])
Well(BaseBlock[:Data],HalfSlabBlock[:Data],WaterBlock[:Data],Frequency,Rarity,MinAltitude,MaxAltitude,BlockSource[,BlockSource2,..])

Sapling settings

Back to top

This is the place of the Sapling resource. Because it isn't a resource that affects the initial generation, it has been placed apart from other resources in the Resources queue (see above). However, the syntax of the Sapling resource is almost identical to the syntax of the Tree resource. Only the first argument is different: instead of being the frequency it is the SaplingType. The SaplingType can be All, Oak, Redwood, HugeRedwood (grows when 2x2 redwood saplings are placed), Birch, SmallJungle, BigJungle (grows when 2x2 jungle saplings are placed), Acacia, DarkOak (requires 2x2 saplings), RedMushroom and BrownMushroom.

Sapling(SaplingType,Tree,TreeChance[,AnotherTree,AnotherTreeChance[,...]])

Example:

Sapling(Birch,Birch,50,MyCustomBirch,100)

Only affects birch saplings (the first Birch). 50% chance to spawn a normal birch tree (second Birch), 50% chance to spawn the BO2 MyCustomBirch.

Custom objects

Back to top

BiomeObjects:

A list of custom object names, seperated by a comma(,). If you use the keyword UseBiome as a custom object name (for example in the Tree, CustomObject or the Sapling resource), it will spawn one of these objects.

Structures

Back to top

Here you can find some settings for the vanilla structures. Keep in mind that if you disable the structure in the WorldConfig, the structure won't spawn, regardless of these settings.

StrongholdsEnabled: true

If you set this to false, Minecraft will try to find a good stronghold position in a nearby biome where strongholds can spawn. If that fails, it will place the stronghold anyway in this biome.

OceanMonumentsEnabled: false

If you set this to false, no ocean monuments will spawn in this biome. Even if only part of the monument touches this biome, the monument won't be spawned.

NetherFortessesEnabled: true

Whether Nether fortresses can start in this biome. Because the structure is so large, large parts of it can spawn in a neighbor biome.

VillageType: disabled

The type of the village. Set it to disabled to disable villages, set it to wood to spawn a wooden village and set it to sandstone to spawn a sandstone village. Values are case-sensitive.

MineshaftRarity: 1

The Mineshaft rarity. 0 is no mineshafts, 1 is vanilla, 2 is like Minecraft Beta 1.8pre1 and 100 makes your biome a wooden chaos.

RareBuildingType: disabled

The type of the rare building in this biome. Can be desertPyramid, jungleTemple, swampHut, igloo (new in TerrainControl 2.8) or disabled. Values are case-sensitive.

Mob spawning

Back to top

Terrain Control has some basic mob spawning support built in.

However, these settings only work for custom biomes. That's why these settings don't appear for non-custom biomes.

There are four different mob types: monsters (creepers, zombies, skeletons, etc.), passive creatures (cows, chickens, etc.), water creatures (squids) and ambient creatures (bats). Mobs always spawn in groups. You can then add a mob group to the correct list.

The syntax of a group is like this:

{"mob": "Ocelot", "weight": 10, "min": 2, "max": 6}

As you can see, a mob group consists of several key:value pairs, seperated by a comma. All text is surrounded with double quotes. Two curly brackets mark the beginning and the end of the group. The syntax used here is called JSON.

All groups are placed together in a list syntax, which looks like this:

[{group},{anothergroup},{etc.}]

A few examples:

[{"mob": "Sheep", "weight": 12, "min": 4, "max": 4}, {"mob": "Pig", "weight": 10, "min": 4, "max": 4}]

Spawn sheeps and pigs. Sheeps have a higher weight than pigs. Both always spawn in groups of 4.

[{"mob": "Sheep", "weight": 12, "min": 3, "max": 12}

Spawn just sheep in groups from 3 to 12.

SpawnMonstersAddDefaults: true

Set this to true to spawn the normal monsters for this biome and the monsters listed at spawnMonsters.

Set this to false to spawn only the monsters listed at spawnMonsters.

SpawnMonsters: []

List of (additional) monsters to spawn. Vanilla values:

[{"mob": "Spider", "weight": 10, "min": 4, "max": 4}, {"mob": "Zombie", "weight": 10, "min": 4, "max": 4},
{"mob": "Skeleton", "weight": 10, "min": 4, "max": 4}, {"mob": "Creeper", "weight": 10, "min": 4, "max": 4},
{"mob": "Slime", "weight": 10, "min": 4, "max": 4}, {"mob": "Enderman", "weight": 1, "min": 1, "max": 4}]

SpawnCreaturesAddDefaults: true

Set this to true to spawn the normal creatures (pigs, sheeps, cows, etc.) and the creatures listed at spawnCreatures.

Set this to false to spawn only the creatures listed at spawnCreatures.

SpawnCreatures: []

List of (additional) normal creatures to spawn. Vanilla values:

[{"mob": "Sheep", "weight": 12, "min": 4, "max": 4}, {"mob": "Pig", "weight": 10, "min": 4, "max": 4},
{"mob": "Chicken", "weight": 10, "min": 4, "max": 4}, {"mob": "Cow", "weight": 8, "min": 4, "max": 4}]

SpawnWaterCreaturesAddDefaults: true

Set this to true to spawn the default water creatures. In vanilla Minecraft, the only water creature is the squid, but you can install third-party mods that change this. The creatures listed at SpawnWaterCreatures will spawn in addition to these creatures. Set this to false to spawn just the water creatures listed at SpawnWaterCreatures.

SpawnWaterCreatures: []

List of (additional) water creatures to spawn. Vanilla values:

[{"mob": "Squid", "weight": 10, "min": 4, "max": 4}]

SpawnAmbientCreaturesAddDefaults: true

Set this to true to spawn the default ambient creatures. In vanilla Minecraft, the only ambient creature is the bat, but you can install third-party mods that change this. The creatures listed at SpawnAmbientCreatures will spawn in addition to these creatures. Set this to false to spawn just the water creatures listed at SpawnAmbientCreatures.

SpawnAmbientCreatures: []

List of (additional) ambient creatures to spawn.