BiomeTweaker

BiomeTweaker

13M Downloads

Continued issues with extreme hills and liquid filler

Kazerima opened this issue ยท 13 comments

commented

After some additional work, the issue is from before still persisting, particularly near spawn.
These biomes also include trees even when tree generation is disabled.
The custom tree generation and liquid filler commands are also not functioning.
I have have all options in BiomeTweakerCore enabled.

commented

Please include what versions you are using and any scripts you have written. If there errors or warnings from BiomeTweaker in your log, post them as well. I can't help you if you don't give me any information.

commented

I'm currently using the latest build of BiomeTweaker and BiomeTweakerCore for 1.12.2
There's no error messages appearing during startup, though I'm not so sure about the log.
Here's my code:

all = forAllBiomes()
all.registerGenBlockRep("minecraft:dirt", "minecraft:gravel")
all.registerGenBlockRep("minecraft:grass", "minecraft:gravel")
all.set("topBlock", "minecraft:gravel")
all.set("fillerBlock", "minecraft:gravel")
all.removeDecoration("PUMPKIN")
all.removeDecoration("BIG_SHROOM")
all.set("genVillages", false)
all.set("skyColor", 333300)
all.set("enableRain", true)
all.set("fogColor", 666633)
all.set("liquidFillerBlock", "nuclearcraft:fluid_sulfuric_acid")
all.set("genInitialSnow", false)

Tweaker.setWorld(0)
Tweaker.setPlacementStage("POST_ORES")
neoTree = newTreeDecoration()
neoTree.set("mainBlock", "primal_tech:charcoal_block")
neoTree.set("checkCanGrow", false)
neoTree.set("leafBlock", "exnihilocreatio:block_dust")
neoTree.set("count", 4)
neoTree.addSoilBlock("minecraft:gravel")
myBiome.addDecoration(neoTree)

The "neoTree" objects aren't being generated, water is not being replaced with sulfuric acid, and there are sections of extreme hill type biome that are still generating grass and dirt. When I included the command from the wiki to disable tree generation, trees continued to appear in these biomes.

commented

The neoTree objects are now spawning, but the sulfuric acid is still not replacing the water and grass blocks are still spawning despite the replacement command. I don't know where to find the logs for BiomeTweaker, but here's the Core config file:

# Configuration file

asm {
    # 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. [default: ]
    S:"ASM Blacklist" <
     >
}


"asm tweaks" {
    # Enables the 'addActualFillerBlock' command. [default: false]
    B:"Actual Filler Blocks"=true

    # Enables 'fogColor' in the set command. [default: false]
    B:"Fog Color"=true

    # Enables 'foliageColor' in the set command. [default: false]
    B:"Foliage Color"=true

    # Enables 'grassColor' in the set command. [default: false]
    B:"Grass Color"=true

    # Enables 'genInitialSnow' in the set command. [default: false]
    B:"Initial Snow Gen"=true

    # Enables 'oceanFillerBlock' in the set command. [default: false]
    B:"Ocean Filler Block"=true

    # Enables 'oceanTopBlock' in the set command. [default: false]
    B:"Ocean Top Block"=true

    # 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' method. 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. [default: false]
    B:"Remove Late Block Assignments"=true

    # Enables 'skyColor' in the set command. [default: false]
    B:"Sky Color"=true

    # Enables 'waterColor' in the set command. [default: false]
    B:"Water Color"=true
}

The new text of my config is as follows:

all = forAllBiomes()
all.registerGenBlockRep("minecraft:dirt", "minecraft:gravel")
all.registerGenBlockRep("minecraft:grass", "minecraft:gravel")
all.registerGenBlockRep("minecraft:water", "minecraft:nuclearcraft:fluid_sulfuric_acid")
all.set("topBlock", "minecraft:gravel")
all.set("fillerBlock", "minecraft:gravel")
all.removeDecoration("PUMPKIN")
all.removeDecoration("BIG_SHROOM")
all.set("genVillages", false)
all.set("skyColor", 333300)
all.set("enableRain", true)
all.set("fogColor", 666633)
all.set("genInitialSnow", false)

Tweaker.setWorld(0)
Tweaker.setPlacementStage("POST_ORES")
neoTree = newTreeDecoration()
neoTree.set("mainBlock", "primal_tech:charcoal_block")
neoTree.set("checkCanGrow", false)
neoTree.set("leafBlock", "exnihilocreatio:block_dust")
neoTree.set("count", 4)
neoTree.addSoilBlock("minecraft:gravel")
all.addDecoration(neoTree)
commented

...oh, just noticed my error in the fluid registry, going to test that again

commented

Do you think moving replacement later in world gen would help me get past those few blocks that aren't being properly converted?

commented

Worth a shot, though I don't see any reason why that would fix it.

commented

Well, if replacement happens before decorative blocks are added, the decorative blocks may end up not being altered. If the replacement happens after, then decorative blocks should be getting replaced too. This might help me if all those mountain grass/dirt blocks are decorations. I also noticed some water patches are not being properly transformed to acid, so it might be happening at the decoration step in swamp biomes due to the lily pads appearing in that area.

commented

Looks like that did the trick after all, though podzol and coarse dirt aren't affected by the replacement. I'll have to check for a way to replace block variants.

commented

You need to add the tree decoration to a biome you have created an object for. The "myBiome" object doesn't exist in your script. This would be a very clear error in the log, if you looked.

Liquid filler block doesn't do what you think it does. Use a replacement instead.

And please post your BiomeTweakerCore config file.

commented

Looks like that did the trick after all, though podzol and coarse dirt aren't affected by the replacement. I'll have to check for a way to replace block variants.

podzolRep = newBlockReplacement()
podzol = forBlock("minecraft:dirt")
podzol.setProperty("variant", "podzol")
podzolRep.set("block", podzol)

coarseDirtRep = newBlockReplacement()
coarseDirt = forBlock("minecraft:dirt")
coarseDirt.setProperty("variant", "coarse_dirt")
coarseDirtRep.set("block", coarseDirt)
commented

Thank you for the help!

commented

You're welcome, if your issue is solved you can close it and you can also join the discord if you have questions that aren't issues!