Posted October 23, 20177 yr Hi. I've been having a lot of trouble with registering item renders in my ModItems class. I get an error in the end of the file at registerRender(Item item). It doesn't give much info about the error. It just crashes. If you need more information I can post more of the classes that get referenced. Please help. ModItems.java -- Pastebin Edited October 23, 20177 yr by TastyCake My username elsewhere is Fluoride
October 24, 20177 yr 1) What is the error? 2) What version of Minecraft are you modding for? 3) Where do you call registerRenders()? Edited October 24, 20177 yr by Draco18s Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
October 24, 20177 yr Author Minecraft Version is 1.11.2 The error is Time: 10/24/17 8:02 AM Description: There was a severe problem during mod loading that has caused the game to fail net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Le Big Boss (lbb) Caused by: java.lang.NullPointerException at com.tastycake.lebigboss.init.ModItems.registerRender(ModItems.java:44) at com.tastycake.lebigboss.init.ModItems.registerRenders(ModItems.java:31) at com.tastycake.lebigboss.proxy.ClientProxy.registerRenders(ClientProxy.java:14) at com.tastycake.lebigboss.ModMain.preInit(ModMain.java:29) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:649) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) at com.google.common.eventbus.EventBus.post(EventBus.java:275) at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:253) at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:231) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) at com.google.common.eventbus.EventBus.post(EventBus.java:275) at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:148) at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:647) at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:276) at net.minecraft.client.Minecraft.init(Minecraft.java:478) at net.minecraft.client.Minecraft.run(Minecraft.java:387) at net.minecraft.client.main.Main.main(Main.java:118) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) at GradleStart.main(GradleStart.java:26) IntelliJ IDEA doesn't show any errors in my code. More Files ModItems.java Reference.java ModMain.java CommonProxy.java ClientProxy.java ItemObsidianIngot.java Edited October 24, 20177 yr by TastyCake My username elsewhere is Fluoride
October 24, 20177 yr try this.setRegistryName(new ResourceLocation(Reference.MODID + ":" + registryName)); instead of this.setRegistryName(new ResourceLocation(Reference.MODID, registryName));
October 24, 20177 yr 4 minutes ago, tebreca said: try this.setRegistryName(new ResourceLocation(Reference.MODID + ":" + registryName)); instead of this.setRegistryName(new ResourceLocation(Reference.MODID, registryName)); and in your ModItems try to use ModelLoader.setCustomModelResourceLocation(item, 0, new ModelResourceLocation(new ResourceLocation(Reference.MODID + ":" + item.getUnlocalizedName().substring(5)), "inventory")); instead of ModelLoader.setCustomModelResourceLocation(item, 0, new ModelResourceLocation(new ResourceLocation(Reference.MODID, item.getUnlocalizedName().substring(5)), "inventory")); I think that would work Edited October 24, 20177 yr by tebreca
October 24, 20177 yr Author 21 minutes ago, tebreca said: try this.setRegistryName(new ResourceLocation(Reference.MODID + ":" + registryName)); instead of this.setRegistryName(new ResourceLocation(Reference.MODID, registryName)); What class My username elsewhere is Fluoride
October 24, 20177 yr 2 hours ago, tebreca said: Reference.MODID + ":" + item.getUnlocalizedName().substring(5) Oh jesus fucking christ on a crutch. Use item.getRegistryName() instead of all of this garbage Also, you have a NullPointerException, which none of the above suggestions will fix. Your problem is here: @EventHandler public void preInit(FMLPreInitializationEvent event) { Utils.getLogger().info("Pre Initialization"); Utils.getLogger().info("Loading Proxies..."); proxy.registerRenders(); } @EventHandler public void Init(FMLInitializationEvent event) { ModItems.init(); ModItems.register(); Utils.getLogger().info("Initialization"); } You're registering your renderers before you ever create your item. Fuck. How are you people this incompetent? Of course you got a NPE, this wasn't even a hard problem to figure out. All you had to do was look at the order in which you were doing things and realize that they were WRONG. On top of that, you should be using the Registry events anyway! Edited October 24, 20177 yr by Draco18s Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
October 24, 20177 yr Author Thanks. I was following a tutorial and it all worked for the person who posted it. I will try your suggestions. My username elsewhere is Fluoride
October 24, 20177 yr Author 1 minute ago, TastyCake said: Thanks. I was following a tutorial and it all worked for the person who posted it. I will try your suggestions. Oh. Turns out I put them in the wrong spots. The tutorial wasn't wrong. My username elsewhere is Fluoride
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.