BiomeTweaker

BiomeTweaker

13M Downloads

How to set an ID to a new-gen biome?

Phalaaange opened this issue · 17 comments

commented

the set command seems to have no way around the "ID".
the only way I can attach a new-gen biome to.an ID is through full inheritaion, which overide the path from that ID to its origin biome.

thx, its a lot of fun!

commented

Are you referencing the numeric ID or the resource location? There is no way to set the numeric ID, no. The end user isn't supposed to even know they exist. Also, I don't believe I actually documented the command to create a new biome...

commented

okay,then. just that bop has command that can allow us to travel to a biome thru its numeric ID, which makes it convinient to test a new-gen.

commented
  1. Tell them to update it to use resource locations (if it doesn't already).
  2. You can look up the numeric ID of your new biome in the output files.
commented

The command to create a new biome is createBiome, not addBiome

commented

That explained everything! Thx man!
So the wiki isn't the newest version? Where can I view the most recent scripts or any other content?

commented

Oh, man, still not working.
Make a short example for me, would you?

commented

Yeah, I was totally onto the 2nd option, till I realized I couldn't really gen a new biome.
Please help me out!
My core script lines:
Tweaker.addBiome("da_north", "minecraft:ice_flats")
myBiome = forBiomes("da_north")
myBiome.set("name", "Da North")
myBiome.addToGeneration("WARM", 2000)
myBiome.addToGeneration("COOL", 2000)
myBiome.addToGeneration("DESERT", 2000)
myBiome.addToGeneration("ICY", 2000)
myBiome.set("genWeight", 5000)

Ok, is it because "da_north" didn't include any informative biome type? Like I should've put in "danorth_plains" instead?

commented

Yep, tried everything, pretty sure the addBiome command isn't working.

commented

I varied between add and create, but the output kept saying that it couldnt locate "minecraft:danorth_plains" in resource location.

commented

Great! I will keep trying.
btw you forgot to update the example line:D

commented

The class is called add biome, yes, but the command is registered as createBiome:

https://github.com/superckl/BiomeTweaker/blob/1.11/src/main/java/me/superckl/biometweaker/script/command/generation/ScriptCommandAddBiome.java#L26

The biome created will have a resource location that starts with biometweaker. So your biome would be biometweaker:da_north.

I've updated the documentation to reflect this issue.

commented

Still not working, logcat below:

Failed to execute script command: me.superckl.biometweaker.script.command.generation.ScriptCommandAddBiome@440a0330

[me.superckl.api.superscript.script.command.BasicScriptCommandManager:applyCommandsFor:53]: at me.superckl.biometweaker.script.command.generation.ScriptCommandAddBiome.perform(ScriptCommandAddBiome.java:43)

commented

Please post your script and the full error log.

commented

I'll just chime in because I have a similar/the same problem. I attached my full log (I hope it is the right one).

The script I used is:

Tweaker.createBiome("phi_tainted_scar","minecraft:desert")
taintedScar = forBiomes("biometweaker:phi_tainted_scar")

taintedScar.addToGeneration("DESERT", 2000)
taintedScar.addToGeneration("WARM", 2000)
taintedScar.addToGeneration("ICY", 2000)
taintedScar.addToGeneration("COOL", 2000)

taintedScar.set("name", "Tainted Scar")
taintedScar.set("genWeight", 1000)
taintedScar.set("color", 9185829)
taintedScar.set("topBlock", "minecraft:soul_sand")
taintedScar.set("fillerBlock", "minecraft:netherrack")

fml-client-latest.log

commented

Sorry for the delay... I was recovering from mono the last few weeks. Anyway, thanks for the log! The issue is the new changes with forge registry locking.

To fix this, I've added a new script stage "BIOME_REGISTRY" where you should do anything involving new biomes. I've edited your script a bit to include it as an example:

Tweaker.setScriptStage("BIOME_REGISTRY")
Tweaker.createBiome("phi_tainted_scar","minecraft:desert")
taintedScar = forBiomes("biometweaker:phi_tainted_scar")

taintedScar.set("name", "Tainted Scar")
taintedScar.set("genWeight", 1000)
taintedScar.set("color", 9185829)
taintedScar.set("topBlock", "minecraft:soul_sand")
taintedScar.set("fillerBlock", "minecraft:netherrack")

Tweaker.setScriptStage("FINISHED_LOAD")
taintedScar.addToGeneration("DESERT", 2000)
taintedScar.addToGeneration("WARM", 2000)
taintedScar.addToGeneration("ICY", 2000)
taintedScar.addToGeneration("COOL", 2000)

You can grab the latest 1.12 version from the jenkins server:
http://jenkins.superckl.me/job/BiomeTweaker%201.12/

commented

oh man, much appreciate!
thank you for your great works!