LibX

LibX

59M Downloads

Mod Loading fails, incompatible with GT CEu Modern

nevemlaci opened this issue ยท 3 comments

commented

Minecraft version

1.21.1

LibX version

6.0.5

Neoforge version

21.1.150

The latest.log file

https://mclo.gs/LUPcSfl

Issue description

In the comments from GTCEu Modern dev.

Other information

No response

commented

The only mods loaded are SkyBlock Builder, all its dependencies (so LibX) and GregTech CEu Modern with all its dependencies (ldlib)

commented

so, to summarise the actual conversation: we (GTCEu) tried to look into why this happens. After much confusion on "why does this exist and what does it do?", I came to the conclusion that de.melanx.skyblockbuilder.registration.ModItems is being loaded too early by the aforementioned generated class.

I know this happens because GT creates & initalizes some custom registries before vanilla ones are unfrozen (for a good reason, addon content needs to exist in a specific order and this was the cleanest way to do it).
The generated class loads the registration classes when it's called, and because the Item isn't wrapped in any kind of classload-safe supplier structure (like neo/forge does), it's initialized as soon as the class is.
When Items are initialized, they register a "pending" holder to the registry. And in this case fail, because the registry's still frozen.

commented

This seems to be fixed with GregTechCEu/GregTech-Modern#3136