stfwi / engineers-decor

Engineer's Decor
MIT License
35 stars 16 forks source link

[1.16.1] Recipes that should be using IE components are falling back on their vanilla alternatives #120

Closed BluSunrize closed 4 years ago

BluSunrize commented 4 years ago

Observation:

Various recipes that imply IE ingrients are not using them. Examples include slag bricks, treated wood poles, stools and ladders, as well as rebar concrete. We're currently using Decor on Forgecraft and @Lanse505 noticed this as well as me, however all my testing and logging was done in a separate 1.16.1 instance, using current versions from CurseForge.

Investigation:

I checked the config files to see if there was a flag disabling IE recipes, but found none. Then I took a look into the recipe JSONs and saw that some of them had two recipes in one file (is that valid? I genuinely don't know, haven't tried it before).

They do appear to have IE-based variations of each recipe, but those are apparently not loading. I've not been able to dive into the sourcecode (given that the 1.16 source doesn't appear to be available on github) but it looks like the engineersdecor:optional recipe condition may not be working correctly?

Log Files & Modlist

I've produced a debug crash for the full mod list, and I've also appended the debug.log file in case that is any help: https://gist.github.com/BluSunrize/3a3897d94787b2d3bd07efd6baf79fdb

If you need any further info on this, lemme know!

stfwi commented 4 years ago

Hi Blu, thanks for the hint, I gonna dig into this (currently reordering the mod into version branches and have to properly refurbish/rebase the 1.16 branch before pushing on the hub, but gonna be soon). Cheers, -

stfwi commented 4 years ago

Oh dear, looks ItemTags.getCollection().getTagMap() is now empty during recipe condition processing. This might be related to load order or parallelizing, or there is another Forge specific tag query now that is up-to-date in that load/reload phase. Need to check the MC/Forge code to find out what this is all about.

stfwi commented 4 years ago

Ok, my expertise in the Forge code does not reach far enough to determine if this is a change or a bug, so I opened this issue in the Forge repo: https://github.com/MinecraftForge/MinecraftForge/issues/7284.

stfwi commented 4 years ago

Aha, FTR the right way to handle this is via TagCollectionManager. Fixed and scheduled for 1.16.1-1.1.3 and 1.16.2-1.1.2-b4.