OreDictTips

OreDictTips

16.5k Downloads

Hangs on Loading World

Opened this issue ยท 6 comments

commented

OreDictTips Version 2.0.1
Forge Versions 2484 & 2485 (I have not tested any others since other mods require these)

Minecraft hangs on the "Loading world" screen. I think the relevant info is in fml-junk-earlystartup.log

commented

The pastee you linked has rotted, however I think I know why you were getting an error at this phase and I wasn't. While I imagine those mods are doing weird things, I don't think it hurts to have a safety check in this mod to protect against that weird stuff. For the record I started getting this when I added Shadowfacts' Forgeline, BC eXtra Pipes, and BuildCraft to my instance. Not that it matters necessarily.

Since the pastee has rotted away, here's the error

[15:39:38] [Server thread/ERROR] [FML]: A fatal exception occurred during the server about to start event
net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Minecraft Forge (forge)

Caused by: java.lang.IllegalArgumentException: Stack can not be invalid!
	at net.minecraftforge.oredict.OreDictionary.getOreIDs(OreDictionary.java:481) ~[OreDictionary.class:?]
	at io.github.elifoster.oredicttips.OreDictTips.addOreDictTips(OreDictTips.java:55) ~[OreDictTips.class:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_153_OreDictTips_addOreDictTips_ItemTooltipEvent.invoke(.dynamic) ~[?:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) ~[ASMEventHandler.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179) ~[EventBus.class:?]
	at net.minecraftforge.event.ForgeEventFactory.onItemTooltip(ForgeEventFactory.java:323) ~[ForgeEventFactory.class:?]
	at net.minecraft.item.ItemStack.func_82840_a(ItemStack.java:889) ~[aip.class:?]
	at net.minecraft.client.Minecraft.lambda$null$3(Minecraft.java:593) ~[bib.class:?]
	at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:267) ~[?:1.8.0_161]
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382) ~[?:1.8.0_161]
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[?:1.8.0_161]
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[?:1.8.0_161]
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) ~[?:1.8.0_161]
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_161]
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) ~[?:1.8.0_161]
	at net.minecraft.client.Minecraft.lambda$populateSearchTreeManager$5(Minecraft.java:596) ~[bib.class:?]
	at net.minecraft.client.util.SearchTree.func_194042_b(SourceFile:49) ~[cgw.class:?]
	at net.minecraft.client.util.SearchTree.func_194043_a(SourceFile:44) ~[cgw.class:?]
	at java.util.ArrayList.forEach(ArrayList.java:1257) ~[?:1.8.0_161]
	at net.minecraft.client.Minecraft.func_193986_ar(Minecraft.java:603) ~[bib.class:?]
	at net.minecraftforge.fml.client.FMLClientHandler.reloadSearchTrees(FMLClientHandler.java:1120) ~[forge-1.12.2-14.23.2.2639-universal.jar:?]
	at net.minecraftforge.fml.common.FMLCommonHandler.reloadSearchTrees(FMLCommonHandler.java:773) ~[forge-1.12.2-14.23.2.2639-universal.jar:?]
	at net.minecraftforge.common.ForgeModContainer.mappingChanged(ForgeModContainer.java:561) ~[forge-1.12.2-14.23.2.2639-universal.jar:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_161]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_161]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_161]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_161]
	at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91) ~[guava-21.0.jar:?]
	at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150) ~[guava-21.0.jar:?]
	at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76) ~[guava-21.0.jar:?]
	at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399) ~[guava-21.0.jar:?]
	at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71) ~[guava-21.0.jar:?]
	at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116) ~[guava-21.0.jar:?]
	at com.google.common.eventbus.EventBus.post(EventBus.java:217) ~[guava-21.0.jar:?]
	at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:278) ~[LoadController.class:?]
	at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:256) ~[LoadController.class:?]
	at net.minecraftforge.fml.common.Loader.fireRemapEvent(Loader.java:902) ~[Loader.class:?]
	at net.minecraftforge.registries.GameData.freezeData(GameData.java:233) ~[GameData.class:?]
	at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:730) ~[Loader.class:?]
	at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:352) ~[FMLClientHandler.class:?]
	at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:534) ~[bib.class:?]
	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:377) ~[bib.class:?]
	at net.minecraft.client.main.Main.main(SourceFile:123) ~[minecraft-1.12.2-client.jar:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_161]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_161]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_161]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_161]
	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) ~[launchwrapper-1.12.jar:?]
	at net.minecraft.launchwrapper.Launch.main(Launch.java:28) ~[launchwrapper-1.12.jar:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_161]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_161]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_161]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_161]
	at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196) ~[OneSixLauncher.class:?]
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231) ~[OneSixLauncher.class:?]
	at org.multimc.EntryPoint.listen(EntryPoint.java:143) ~[EntryPoint.class:?]
	at org.multimc.EntryPoint.main(EntryPoint.java:34) ~[EntryPoint.class:?]
commented

Hm. It looks like solving this problem for 1.10/1.11 would require splitting the mod, because 1.10 has nullability of ItemStacks whereas 1.11 uses air instead of null.

commented

Reopened because it's still not fixed for 1.10 and 1.11

commented

Thanks for reporting this. I tested this on all supported versions of Minecraft, with their latest versions of Forge as of today, and was unable to reproduce this issue. Here is that info:

Minecraft Forge OreDictTips Bug?
1.10.2 12.18.3.2477 1.0.1 No
1.11.2 13.20.1.2476 1.0.1 No
1.12 14.21.1.2443 2.0.1 No
1.12.1 14.22.1.2485 2.0.1 No

I also looked in my fml-junk-earlystartup.log file for the 1.12.1 instance, and did not find any errors output by OreDictTips. My guess would be that some mod you have installed is prematurely firing the tooltip event with an empty itemstack (which is not normal behavior AFAIK), causing OreDictTips to error. I would advise looking into which mod in your pack is doing this.

commented

Ok, no biggie. I just needed your mod for convenience.

commented

I'm going to leave this open in case I am incorrect.