Simply Improved Terrain prevents modded end biomes from generating when certain combinations of mods are installed
NJL5390 opened this issue · 16 comments
Mod Versions used in testing (With Biomes o Plenty world type):
Simply Improved Terrain version: 0.3.1
Forge Version: 36.1.16
Endergetic Expansion version: 3.0.0
Outer End Version: 0.2.11
Abnormals Core Version: 3.1.1
Biomes O Plenty Version: 13.1.0.458
Atmospheric Version: 3.1.0
Abundance: 1.0.5
Bayou Blues: 1.0.4
Better Badlands: 2.0.3
Environmental: 1.0.0
Fruitful: 2.0.0
Allurement: 1.1.1
Autumnity: 2.1.0
Latest Log: https://gist.github.com/NJL5390/2f84ab7d2702ff931d97084ba90686ee (With the above mods)
Hi!
First of all thanks for the awesome mod! I'm very surprised I hadn't came across this mod before now as it's exactly what I've been looking for!
Secondly, I've unfortunately been having issues with biome generation in The End. Whenever I have this mod installed in my modpack. Whenever I try and explore the end, I find that I cannot locate any biomes added by other mods and can only find vanilla end biomes. This is true even when using the /locatebiome command, none are able to be found. but vanilla end biomes are located very easily, whereas modded ones such as those added by Endergetic Expansion and The Outer End are nowhere to be found.
EDIT: I have been able to narrow down the mods causing this to the list above. I will let you know if I am able to narrow this issue down any further.
Let me know if I can help out in any way and I will try my best to assist.
Thanks.
Looks like the new Abnormals Core was released recently. https://www.curseforge.com/minecraft/mc-mods/abnormals-core
Going to verify everything is good on compatibility then close this issue.
I've been playing with this new version for a while now and I haven't had this bug occur to me at all in that time. In fact the small update you did to your mod shortly after our last conversation seemed to be enough to fix it as even before this new abnormals core was released this issue was fixed, I haven't had this bug occur to me since you last released an update to the forge version of this mod.
But if you want to verify it for yourself then I'll happily wait for you to close the issue.
After a lot of testing I seem to have narrowed down this issue to a few different mods, which I have listed in the edited comment above. I have also been able to get a log file for when this happens too: https://gist.github.com/NJL5390/2f84ab7d2702ff931d97084ba90686ee
Some screenshots of what happens when this issue happens:
I will provide another update to this if I am able to narrow down the culprit mods any further.
After some more testing. I have been unable to narrow down this list any further, Therefore it seems to be a combination of mods together that is causing this issue and not any particular individual mod.
I have also discovered that this is not the only combination of mods that causes this issue, there are other mod combinations that seem to be causing this issue as well. But this is the narrowest list that I have been able to get together to make this issue reproducible as an example of it occurring. So unfortunately it could be some kind of issue with your mod and not necessarily any of the other ones.
I hope this helps you out with this issue. Let me know if I can be of any of further assistance in helping with this issue.
I really hope this issue gets fixed soon as I really like this mod and I'd hate to have to remove this mod so that the end biomes added by my modpack can spawn in again.
Thanks.
Good find. I'll try your combination of mods. I suspect it may have something to do with mods mixing into the same method.
It appears to be Outer End and its dependency Abnormals Core both causing the issue.
Outer End overwrites the biome method. If this were a Mixin that only checks and modifies the return value, it would be compatible with mods like mine that change the End island generation. There's a comment saying it's no longer needed, but they haven't removed the code yet.
But even if they removed that, Abnormals Core which they now use would still cause the issue. It uses a mixin, but it mixes into the method at the HEAD level and reiterates the Vanilla noise code, when the result really only needs to depend on the return value of whatever the existing code is.
I will test the fixes on my end, then see if I can submit them to the respective dev teams.
I will test the fixes on my end, then see if I can submit them to the respective dev teams.
Awesome, I appreciate you working so hard to get this issue fixed! Thanks a lot!
Hmm... tried replacing the code in Abnormals Core with this. End Biomes still spawned without Simply Improved Terrain, but they wouldn't spawn with it. Tried both @At("TAIL")
and @At("RETURN")
. Tested with Endergetic Expansion 3.0.0.
@Inject(at = @At("TAIL"), method = "getNoiseBiome(III)Lnet/minecraft/world/biome/Biome;", cancellable = true)
private void addEndBiomes(int x, int y, int z, CallbackInfoReturnable<Biome> info) {
Biome oldBiome = (Biome)info.getReturnValue();
Biome newBiome = getNoiseBiome(x, z);
boolean island = (oldBiome == this.endHighlandsBiome || oldBiome == this.endMidlandsBiome);
boolean notStillChorus = (newBiome != this.endMidlandsBiome);
if (island && notStillChorus) {
info.setReturnValue(newBiome);
return;
}
if (oldBiome == this.endBarrensBiome && notStillChorus) {
info.setReturnValue(newBiome);
return;
}
}
Going to keep looking for a solution.
You'll find a solution, don't worry. I have faith in you! :)
If you need me to test anything or help out in any way then just let me know. I don't really have any coding experience but I can test whatever needs tested and I'll be willing to help out in whatever way I can!
I put the PR in for Abnormals Core. Now just have to wait for if it's merged, and when its next update to CurseForge is. I'll get the update to this mod on CurseForge shortly.
Thanks for your help with this! I greatly appreciate it and I look forward to seeing your plans for this mod in the future!
Cheers!
It turns out that Mixins responding to the return values of other Mixins isn't a currently supported feature. I'm going to try to either add a mapper that specifically looks for the Abnormals Core code, or create a separate, dedicated mod to fixing both problems.
Oh right, I should clarify that it was the one produced by cloning the repository and building it myself. The version number it lists is 3.2.0, so it may be either a coming change in the 3.2.0 version, or it may be a bug that'll get resolved before 3.2.0 actually gets released.