[1.18] BiomeSelectors.foundInOverworld() doesn't work with datapack mods? #1883
Replies: 5 comments
-
That method name is kind of misleading. See the (long) discussion here: The originator of that thread ended up using something similiar to your code:
|
Beta Was this translation helpful? Give feedback.
-
ok. Might also let @modmuss50 know as well, because Tech Reborn has the same problem with not spawning in those biomes, it uses BiomeSelectors.foundInOverworld() for ore gen as well. |
Beta Was this translation helpful? Give feedback.
-
So the tutorial guides devs to add ore with the BiomeSelectors.foundInOverworld(), is that NOT what they should be using? |
Beta Was this translation helpful? Give feedback.
-
In general its pretty hard to write a simple tutorial and also cover all nuances of every possible configuration. If you mean this; It's a wiki. Why don't you update it to add a comment that the simple approach shown doesn't necessarily work with modded/datapack dimensions? |
Beta Was this translation helpful? Give feedback.
-
You can raise it on its github issues. |
Beta Was this translation helpful? Give feedback.
-
I have found that BiomeSelectors.foundInOverworld() doesn't seem to insert ores into biomes created by data packs.
Terralith in particular is an example. It replaces the overworld dimension type json. My ores from Gobber and MoreGems mod would not show up in Terralith biomes.
To force it, I created a custom predicate to select biomes that are not nether or the end and then my ores spawned in those biomes.
my code:
public static Predicate<BiomeSelectionContext> customSelection() { return context -> !NetherBiomes.canGenerateInNether(context.getBiomeKey()) && !TheEndBiomes.canGenerateInTheEnd(context.getBiomeKey()) && context.getBiome().getCategory() != Biome.Category.NONE; }
my ore gen code: https://github.com/kwpugh/gobber_fabric-1.17/tree/1.18.0/src/main/java/com/kwpugh/gobber2/world
Is this already a known issue?
Beta Was this translation helpful? Give feedback.
All reactions