Mod ID filtering crashes game
ilyvion opened this issue ยท 6 comments
This exception is from using the Mod ID filter on the Logistical Sorter, but the same/a similar exception happens when trying to use the same filter on the Digital Miner. The version of Mekanism used is 1.10.2-9.2.1.295.
The error is triggered as soon as you hit the check mark next to the text input field. Doesn't seem to matter what you enter, a single space, a valid mod name, whatever. Instant crash. Seems to me, by glancing at the code, that there's some error handling missing or some incorrect logic somewhere.
java.lang.NullPointerException: Updating screen events
at mekanism.common.util.ItemRegistryUtils.getMod(ItemRegistryUtils.java:41)
at mekanism.common.OreDictCache.getModIDStacks(OreDictCache.java:125)
at mekanism.client.gui.GuiTModIDFilter.updateStackList(GuiTModIDFilter.java:335)
at mekanism.client.gui.GuiTModIDFilter.setModID(GuiTModIDFilter.java:356)
at mekanism.client.gui.GuiTModIDFilter.func_73864_a(GuiTModIDFilter.java:305)
at net.minecraft.client.gui.GuiScreen.func_146274_d(GuiScreen.java:548)
at net.minecraft.client.gui.GuiScreen.func_146269_k(GuiScreen.java:517)
at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:1700)
at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1055)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:371)
at net.minecraft.client.main.Main.main(SourceFile:124)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)A detailed walkthrough of the error, its code path and all known details is as follows:
_----------------------------------------------------------------------------------------- Head --
Thread: Client thread
Stacktrace:
at mekanism.common.util.ItemRegistryUtils.getMod(ItemRegistryUtils.java:41)
at mekanism.common.OreDictCache.getModIDStacks(OreDictCache.java:125)
at mekanism.client.gui.GuiTModIDFilter.updateStackList(GuiTModIDFilter.java:335)
at mekanism.client.gui.GuiTModIDFilter.setModID(GuiTModIDFilter.java:356)
at mekanism.client.gui.GuiTModIDFilter.func_73864_a(GuiTModIDFilter.java:305)
at net.minecraft.client.gui.GuiScreen.func_146274_d(GuiScreen.java:548)
at net.minecraft.client.gui.GuiScreen.func_146269_k(GuiScreen.java:517)-- Affected screen --
Details:
Screen name: mekanism.client.gui.GuiTModIDFilter
Well, like I said, I've tried both sensible things, like "Mekanism" and "minecraft" and nonsensical, like " " (single space). But after trying a bit more, I'm struggling to trigger the bug consistently. I cannot seem to trigger it in single-player, only in multiplayer, and not with 100% consistency. When it does crash, though, it's always a NullPointerException
at mekanism.common.util.ItemRegistryUtils.getMod(ItemRegistryUtils.java:41)
You shouldn't have any problem compiling Mekanism. Only thing you could be missing where the gradle scripts, which where added a couple months ago. With Gradle, you don't need to worry about downloading external dependencies.
I ask because we had something similar on our server. And now I have a logistical sorter that I can't open because it will crash my client.
I'd try to debug the problem myself, but I've never had much success with getting a Minecraft mod to build, there's always some dependency or something missing somewhere, or setting up the environment requires you to manually download, build and reference the source code for like five other mods and libraries or something.