BiomeTweaker

BiomeTweaker

13M Downloads

Removing lava lakes, initial snow, and adding BOP biomes?

trimman1 opened this issue ยท 2 comments

commented

I made a script for my game where I tried to remove the initial snow, stop lava lakes from spawning, and stop villages from spawning. My code seemed to stop the villages from spawning, but lava lakes and initial snow were spawning. Just to double-check that my code wasn't completely broken, I tried to make the top block Netherrack, and it worked! The Netherrack, however, only spawned in traditional Minecraft biomes, and the BOP biomes were unchanged. Also, even in the vanilla Minecraft biomes, the lava lakes and initial snow were still there. I'll post the code below, but can anyone help me figure out why this isn't working?

Thank you very much.

allBiomes = forAllBiomes()
allBiomes.set("genVillages", false)
allBiomes.set("genInitialSnow", false)
allBiomes.removeDecoration("LAKE_LAVA")
allBiomes.set("topBlock", "minecraft:netherrack")

commented

BiomeTweaker for MC is now EOL, so I will not be addressing bugs that are related to BT - MC interactions. If this bug persists in BiomeTweaker for MC 1.18, please submit a new issue.

commented
Tweaker.setStage("BIOME_REGISTRY")
Tweaker.setWorld(0)

allBiomes = forAllBiomes()
allBiomes.set("genVillages", false)
allBiomes.set("genInitialSnow", false)
allBiomes.removeDecoration("LAKE_LAVA")
allBiomes.set("topBlock", "minecraft:netherrack")

So far should work but some BOP biomes seems to place their topBlock and fillerBlock in ORES so you have to do something like this

Tweaker.setReplacementStage(POST_ORES)

TopBlockReplacement = newBlockReplacement()
TopBlockReplacement.set("block", "minecraft:netherrack")
TopBlockReplacement.set("ignoreMeta", "true")

after that you need to do this

Biome = forBiomes("biomesoplenty:shield")
Biome.registerGenBlockRep("minecraft:grass", TopBlockReplacement)

for each biome, cause the blocks can change. But that only works as long as the block is not something like sand cause it isn't always only the topBlock in that biome. Otherwise you need to do set the minY and maxY for the Replacement (that is just cheating and won't give you the desired results everytime).

TopBlockReplacement.set("minY", 63)
TopBlockReplacement.set("maxY",70)