TerrainControl icon indicating copy to clipboard operation
TerrainControl copied to clipboard

ReplaceToBiomeName in default biomes

Open Protected opened this issue 11 years ago • 3 comments
trafficstars

We worked for several months on a world which used ReplaceToBiomeName on ocean. As far as we know, due to the unique handling of ocean and ocean regions, it's impossible to replace this with a custom biome (even if we do use a custom biome, islands won't generate in the same places, so generation will be broken). Would it be possible to fix TC so it allows ReplaceToBiomeName on default biomes again? Is there really a reason to break backwards compatibility like this?

Protected avatar May 28 '14 14:05 Protected

The reason to break backwards compatibility was because of the virtual biomes. I already explained it over here.

I wonder if we can add an Ocean biome setting to the WorldConfig. You could then use OceanBiome: MyCustomBiome. (@Timethor is currently working on revamping the biome system, so I won't make the change right now; to give @Timethor a more stable code base to work on.)

rutgerkok avatar May 28 '14 17:05 rutgerkok

Found a workaround:

2014-06-01_10 08 27

You need to add this BiomeConfig to your world:

# Add this biome to the WorldConfig to CustomBiomes, IsleBiomes and BorderBiomes.
# If desired, modify the Beach biome to also be a border in this biome.

#######################################################################
# +-----------------------------------------------------------------+ #
# |                         Biome placement                         | #
# +-----------------------------------------------------------------+ #
#######################################################################

# Extending the ocean biome.
BiomeExtends: Ocean

# Seems to work fine. Lower values don't.
BiomeSize: 4

# Replace the whole ocean
BiomeRarity: 100

# The hexadecimal color value of this biome. Used in the output of the /tc map command,
# and used in the input of BiomeMode:FromImage.
BiomeColor: #9933FF

# Set this to an appropriate value
ReplaceToBiomeName: Jungle

# Replace the inner parts of the ocean
IsleInBiome: Ocean

# The outer parts too
BiomeIsBorder: Ocean

#######################################################################
# +-----------------------------------------------------------------+ #
# |                          Resource queue                         | #
# +-----------------------------------------------------------------+ #
#######################################################################

# This section controls all resources spawning after terrain generation.
# The resources will be placed in this order.

SmallLake(WATER,4,7.0,8,120)
SmallLake(LAVA,2,1.0,8,120)
UnderGroundLake(25,60,2,5.0,0,50)
Dungeon(8,100.0,0,128)
Ore(DIRT,32,20,100.0,0,128,STONE)
Ore(GRAVEL,32,10,100.0,0,128,STONE)
Ore(COAL_ORE,16,20,100.0,0,128,STONE)
Ore(IRON_ORE,8,20,100.0,0,64,STONE)
Ore(GOLD_ORE,8,2,100.0,0,32,STONE)
Ore(REDSTONE_ORE,7,8,100.0,0,16,STONE)
Ore(DIAMOND_ORE,7,1,100.0,0,16,STONE)
Ore(LAPIS_ORE,7,1,100.0,0,16,STONE)
UnderWaterOre(SAND,7,4,100.0,DIRT,GRASS)
UnderWaterOre(CLAY,4,1,100.0,DIRT,CLAY)
CustomObject(UseWorld)
Plant(Dandelion,2,100.0,0,128,GRASS,DIRT)
Grass(Tallgrass,NotGrouped,10,100.0,GRASS,DIRT)
Plant(PUMPKIN,1,3.0,0,128,GRASS)
Liquid(WATER,20,100.0,8,128,STONE)
Liquid(LAVA,10,100.0,8,128,STONE)

You need to give it a name, add it to the WorldConfig in CustomBiomes, IsleBiomes and BorderBiomes. You then need to replace any references to the Ocean biome (for example in BiomeIsBorder of the Beach biome) with the name of this biome. You can then set the ReplaceToBiomeName to something interesting for this custom ocean biome.

rutgerkok avatar Jun 01 '14 08:06 rutgerkok

Thanks, man. I hadn't seen your reply on the commit and I didn't read your replies here before now, since I've been busy. I'll ask my colleague to give it a try and let you know how it goes.

Protected avatar Jun 08 '14 18:06 Protected