Skip to content

Instantly share code, notes, and snippets.

@keybounce
Last active August 29, 2015 14:19
Show Gist options
  • Save keybounce/96a4743fd3fd995ec9a3 to your computer and use it in GitHub Desktop.
Save keybounce/96a4743fd3fd995ec9a3 to your computer and use it in GitHub Desktop.
Silly Biome Tops, Biome Tweaker
{
//If true, BiomeTweaker will generate separate files for each biome when creating the status report.
"separate files":true,
//If true, BiomeTweaker will only perform ASM changes necessary for it to function.
//Tweaks such as color overrides and block replacement may not work in certain biomes.
//You can enable this if you are having issues with compatibility.
"enable light asm":false,
//Enable this if you want BiomeTweaker to force topBlock and fillerBlock overrides in most biomes.
//This is done by using ASM to strip some assignments that happen in the "genTerrainBlocks" blocks. This will not work for all biomes.
//This WILL cause issues where some biomes will have incorrect top and filler blocks if you do not override them (Extreme Hills (M), Mutated Savannah, Taiga).
//light ASM must be disabled for this to have any effect.
"remove late block assignments":false,
//This can be used to specify biome classes BiomeTweaker should not touch with ASM. You can find the class for a biome in the output files.
//You should only be using this if you understand what ASM is, and you know the issue it is causing.
"asm blacklist":[],
//An array of tweak files to include. An example tweak file is created along with this configuration file.
"include":[FixTF.txt, SillyBiomeTops.txt]
}
# Twilight forest does not clamp humidity and temperature to the 0-1 range when fetching colors.
# This ruins the seasons mode of reasonable realism.
#
# But the big issue is twilight swamps. RR makes the humidity level higher than normal, as it
# is a swamp. This is fine normally -- the 0.7 temp * 1.2 humidity is less than 1.
#
# But to adjust temperatures, we need to bring that humidity back down.
tfswamp = forBiomes(45)
tfswamp.set("humidity", 0.90)
#Set top and filler for all biomes
# Coarse dirt, and Sandstone are "catchmes" for COG. Permits trees to be planted at worldgen.
# COG will later turn the dirt into netherrack and lava, and the sandstone into sandstone, netherrack, lava.
# Harder wildlife will kill the trees, and the saplings will "time out" with the unplantable ground
#
# NB: None of those will provide support to unstable stone ... Enjoy caving
## So, coarse dirt does not work. That means normal grass/dirt as normal.
# COG will have to catch grass, and look deep -- grass can easily make it down to 59.
# Sandstone still works in filler.
# Shores, beaches, get sand normally (stone beach gets gravel ... maybe include that in limonite?)
# But deserts, mesas ... those sand-tops need to be "nastified" by COG, so we set them to the grass markers here.
## ** Ack, Mesa!
# Mesas will not work correctly unless they are sand and stained_hardened_clay.
# Period.
#
# Caves / ravines will not carve correctly with any other top/filler.
# What this means: Mesas have to look normal here, and tweaked in COG.
#
# Hardened clay, and stained hardened clay, can be matched easily. The top block (red sand)
# can be detected. So all the "nethering", netherrack, air pockets, etc, all has to be COG.
# Rewrite. Here are the biome types.
TF = forBiomes(40-58)
mushroom=forBiomes(14)
beaches = forBiomesOfTypes("BEACH")
rivers = forBiomesOfTypes("River")
sandy = forBiomesOfTypes("Sandy")
nether = forBiomesOfTypes("Hell")
mesas = forBiomes(37-39, 165-167)
plateauNonM = forBiomes(36, 38, 39)
savannaPlateau = forBiomes(36)
mesaPlateau = forBiomes(38, 39)
savannaMs = forBiomes(163, 164)
basicVanilla = forAllBiomesExcept(mushroom, TF, nether, sandy, savannaMs, beaches, rivers)
nonMesaPlateau = forBiomes(savannaPlateau)
# Special case vanilla junk
deserts = forBiomes(2,130)
specialCaseVanillaCode = forBiomes (deserts, mushroom)
#### Important: Mushroom island shore has the same special-case in vanilla as
# mushroom island. But we ignore that. We replace top and filler in shores with
# sand -- that kills the caving support, in favor of limonite deposits.
#
## For the special case vanilla biomes: Vanilla does not carve caves here.
# Deserts, none of the sand/sandstone is carved. Mushroom, the mycelium is not
# carved, and the dirt normally is. But we get rid of the dirt.
# Now, organize the biomes by the changes
unchanged = forBiomes(savannaMs, TF, nether, mesas)
targets = forAllBiomesExcept(unchanged)
hellify = forBiomes(plateauNonM)
lavaOceans = forAllBiomesExcept(TF)
sandyTops = forBiomes(beaches, rivers)
myceliumTops = forBiomes(mushroom)
sandAndClay = forBiomes(mesas)
sandyFiller = forBiomes(rivers)
sandstoneFiller = forAllBiomesExcept(sandyFiller, unchanged, hellify, sandAndClay)
yuckyTops = forAllBiomesExcept(unchanged, sandyTops, myceliumTops, hellify, sandAndClay)
# thornlands and twilight stream are no chickens
specialKillChickens = forBiomes(58, 46)
killChickens = forBiomes(targets, specialKillChickens)
# and the rest of twilight forest has fewer than normal
reducedChickens = forBiomes(TF)
## Order matters -- reduce first, kill second -- the sets are not properly disjointed
# In other words: thornlands and twilight stream should not have chickens.
# ohh, the highland centers? ... wow, they have normal spawns.
# Summary:
# Mesa gets lava oceans, are otherwise unchanged
# Basic vanilla get (coarse dirt? grass?), as a marker here, and netherrack later from COG.
# Also, sandstone filler, lava oceans
# Mushroom gets sandstone and lava, but keeps mycelium tops.
# "Beach" gets sand and sandstone.
# "Rivers" gets sand and sand.
# plateauNonM gets "hellified" -- netherrack, and COG makes air pockets.
# Simplified:
# 1. Lava oceans unless you are in TF. I'd like to make that dimension specific, but this won't do it.
# 2. Most biomes get sandstone filler.
# 3. Ground is the "least friendly" that will support plants/trees. That's coarse dirt, if possible.
# 4. COG does most changes.
# 5. Mesas need to be left alone here.
# 6. Deserts will need to be left alone ... silly special-case caving code in vanilla.
lavaOceans.set("liquidFillerBlock","minecraft:lava")
yuckyTops.set("topBlock", "ganyssurface:coarse_dirt")
sandyFiller.set("fillerBlock", "minecraft:sand")
sandstoneFiller.set("fillerBlock", "minecraft:sandstone")
# sandyTops and myceliumTops are no-ops
# sandAndClay is a no-op
# Hellify biomes get re-decorated in COG
hellify.removeAllSpawns("CREATURE")
hellify.removeAllSpawns("MONSTER")
hellify.removeAllSpawns("CAVE_CREATURE")
hellify.removeAllSpawns("WATER_CREATURE")
#
# Now to play with the nether mobs.
# Raise the magma cubes up, lower pigmen slightly.
hellify.addSpawn("net.minecraft.entity.monster.EntityPigZombie", "MONSTER", 100, 4, 4)
hellify.addSpawn("net.minecraft.entity.monster.EntityGhast", "MONSTER", 50, 4, 4)
hellify.addSpawn("net.minecraft.entity.monster.EntityMagmaCube", "MONSTER", 20, 4, 4)
hellify.set("enableRain", false)
hellify.addDicType("NETHER")
# COG will insert giant air pockets in these
# This changes the spawn to a single pair, weight 1, instead of a group of 4, weight 10
reducedChickens.removeSpawn("net.minecraft.entity.passive.EntityChicken", "CREATURE")
reducedChickens.addSpawn("net.minecraft.entity.passive.EntityChicken", "CREATURE", 1, 2, 2)
killChickens.removeSpawn("net.minecraft.entity.passive.EntityChicken", "CREATURE")
# For TF, chickens are normally 10 out of 97, or about 10% of all creatures.
# We reduce that. The base spawn is 87 + chicken count. This makes them 1-in-88 groups, and
# half the normal size group.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment