Jump to content

Recommended Posts

Posted (edited)

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 by TastyCake

My username elsewhere is Fluoride

Posted (edited)

1) What is the error?

2) What version of Minecraft are you modding for?

3) Where do you call registerRenders()?

Edited 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.

Posted (edited)

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

Edited by TastyCake

My username elsewhere is Fluoride

Posted

try 

 this.setRegistryName(new ResourceLocation(Reference.MODID + ":" + registryName));

instead of 

 this.setRegistryName(new ResourceLocation(Reference.MODID, registryName));

 

Posted (edited)
  On 10/24/2017 at 12:27 PM, tebreca said:

try 

 this.setRegistryName(new ResourceLocation(Reference.MODID + ":" + registryName));

instead of 

 this.setRegistryName(new ResourceLocation(Reference.MODID, registryName));

 

Expand  

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 by tebreca
Posted
  On 10/24/2017 at 12:27 PM, tebreca said:

try 

 this.setRegistryName(new ResourceLocation(Reference.MODID + ":" + registryName));

instead of 

 this.setRegistryName(new ResourceLocation(Reference.MODID, registryName));

 

Expand  

What class

My username elsewhere is Fluoride

Posted (edited)
  On 10/24/2017 at 12:32 PM, tebreca said:

Reference.MODID + ":" + item.getUnlocalizedName().substring(5)

Expand  

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 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.

Posted
  On 10/24/2017 at 8:27 PM, TastyCake said:

Thanks. I was following a tutorial and it all worked for the person who posted it. I will try your suggestions.

Expand  

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.