ReplaceToBiomeName in default biomes
Protected opened this issue ยท 3 comments
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?
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.)
Found a workaround:
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.