
[5.0.26] Strange Interaction with Rotten Flesh, Thaumcraft, Natura
Plet53 opened this issue ยท 32 comments
Issue Description:
Rotten Flesh fails to have any thaumcraft aspects.
What happens:
^
What you expected to happen:
Rotten Flesh having aspects (namely Humanus, Victus, Perditio)
Steps to reproduce:
- Install the following modset:
Baubles [1.5.2]
EnderCore [0.5.30]
EnderIO [5.0.26]
Mantle [1.3.2.24]
Natura [4.3.2.49]
Thaumcraft [6.1.BETA16]
Forge [14.23.4.2707] - Hold shift while mouse is over Rotten Flesh in inventory
Affected Versions:
- EnderIO: 5.0.26
- EnderCore: 0.5.30
- Minecraft: 1.12.2
- Forge: 14.23.4.2707
Your most recent log file where the issue was present:
https://gist.github.com/Plet53/af00c40809b5d825ea137f1b8964a172
This doesn't sound like an Ender IO issue at all. Can you replicate it without ender io?
Coal and snowballs also don't have aspects with the .26 and .25 versions
The .24 version has them
@EpicSquid does this happen if you disable darksteel Intergration by chance?
I am having similar issues. If I downgrade to Ender IO 5.0.24, the aspects on coal come back.
These are the mods I'm playing with. Forge 2708, MC 1.12.2.
This issue is present in my game (has EnderIO 5.0.26 and EnderCore 0.5.31 with Forge 14.23.4.2705 and MC 1.12.2), though I did not know it was a bug until now.
I changed .add(getAspects(Items.COAL)) to .add(Aspect.FIRE, 10).add(Aspect.ENERGY, 10) and the normal coal got its aspects back, is getAspects buggy somehow when used like this?
This issue isn't resolved with the 5.0.29 version of EnderIO. Is it possible to turn this off with a config option or something?
@tyler489 Did you file a bug with azanor's github?
I just commented out the entire method loadAspects and things went back to normal. I know it's not a great fix, but Thaumcraft integration that breaks Thaumcraft isn't very useful to me. I was using an older EnderIO build, but it didn't have the refined storage conduits.
I don't know what part of the subrouting is breaking aspects on snow, because nothing references snow in that section that I noticed.
It would be great if you just removed the aspect integration in the next EnderIO release to fix Thaumcraft until the real problem is fixed.
Thanks.
I submitted a pull request to remove the loadAspects function which restores the aspects that were lost with EnderIO integration. Hopefully the actual problem will be resolved and this won't be necessary, but it's an okay "right now" fix.
You can also readd the lost aspects using ModTweaker. Here is a demo ZenScript that readds Coal and Coal block aspects. It was tested with EnderIO 5.0.29 and EnderCore 5.35.
import thaumcraft.aspect.CTAspectStack;
// readd aspects that EnderIO integration breaks
minecraft:coal.setAspects(aspect:ignis*10, aspect:potentia*10);
minecraft:coal_block.setAspects(aspect:ignis*67, aspect:potentia*67);
What makes you think this will ever be fixed, jd? I'm inclined to just completely remove Thaumcraft support for good...
It may not be, but TC is still in beta. A public beta, but still a beta. It's not even complete, so the term beta is a rather charitable one.
If maintaining the TC support code is problematic, I would drop it. You guys are doing amazing work for free, and I very much appreciate it.
Finally heard back from anazor.... 13 days later
https://gyazo.com/738a469b6002d4d9139194c517191b44
Even if there is no good way to know if his code has been run and calculated aspects already before the Ender IO code runs, why should calling his library functions break aspects on other items later? His response doesn't fully address the problem I think.
In init
, as the Thaumcraft API states to use it "once Thaumcraft is past the FMLPreInitializationEvent phase". But moving that to after postInit
should not be too hard. Sad that it took 2 months to get that tiny bit of information...
As of Beta 20 there's a new event for aspect registration and anything done before Thaumcraft's registration is cleared.
Yes but from what I can tell, I could not find any Thaumcraft integration code in Natura at all. I'm not sure if I missed it or not, but the issue does not persist if Ender IO is removed as well. It only happens if both are running. I'm only bringing this up here because of the weird nature of this, that it specifically needs both mods - not one or the other. Also, there was already a ticket there that I added on to.
This is still a current problem even with Thaumcraft Beta 23 and Natura. Strangely enough, it does not happen if you remove Natura. I hope we can see an update to the Thaumcraft API soon.
Mario, Thaumcraft API changes won't help here, the most they can do is crash the game when Natura is installed. This needs a change in Natura, they need to register their aspects in post init instead of pre init as the old Thaumcraft API documentation claimed. Might be worth telling them (hint, hint)...
It does not appear it has been entirely fixed. The patch fixing this came out a day before Thaumcraft updated to add an event for registering aspects and old versions will be depricated, so I am unsure if it updated to use that method? Either way, I double checked all versions of the mods I am using, and everything appears to be up to date.
Ender IO 5.0.31
EnderCore 0.5.37
Natura 4.3.2.62
Mantle 1.3.2.24
Thaumcraft Beta 23
When it comes to things being fixed, other items losing aspects like Coal and Snow have been fixed, but strangely enough rotten flesh persists as a problem.
Quite sure this has nothing to do with Ender IO---we don't use Items.ROTTEN_FLESH at all in the Thaumcraft aspect code.
My guess is that there's a third mod in there that has a dependency on Ender IO, Natura, mantle, and/or Tinkers. When you add both Natura and Ender IO, the loading order gets shifted so that mod is loaded before Thaumcraft---triggering the error.
I do not have this issue in my own pack and I don't have Natura in there. Ender IO currently has no aspects but that's because thaumcraft changed to using an event for the aspect implementation.
Thaumcraft did change the API back around Aug 3rd to use an event for registration, and it does not look like Ender IO has updated the Thaumcraft API for about 4 months according to the repository. I have already tested all of this in an instance with only Natura, Ender IO, Thaumcraft and JEI - plus all core mods needed. Its not anything else, its certainly isolated to one of these mods. Thaumcraft calculates some aspects through recipes and the like, so that might be how it gets down to Rotten Flesh.
Like epic said thaumcraft made everything happen in an event and enderio doesn't use that event yet.. therefor it can not be enderio breaking it.
I can't explain why he doesn't get aspects, but that is irrelevant. The old methods to register aspects still work, they are only deprecated and will be removed in the future. They still fully work right now, and I can confirm that Ender IO has aspects on all of its alloys minus End Steel plus the other things it adds aspects to, like the tormented Enderman head.
see also Azanor/thaumcraft-beta#1619