Jump to content

Recommended Posts

Posted

So, I'm trying to create a custom item for my mod, having followed MrCrayfish's tutorial, and Minecraft doesn't seem to want to recognize that my JSON file actually exists. As the "image" feature of the forums seems to be broken, meaning that I can not share a screenshot of my path, I'll simply tell you that my path is exactly as follows: src/main/resources/assets/techschmech/models/item/dualSmeltingCalculationCPU.json. This is exactly the path specified by the tutorial, and tutorial does seem to have got it right. Here is the code inside the JSON:

 

{
    "parent": "builtin/generated",
    "textures": {
        "layer0": "techschmech:items/dualSmeltingCalculationCPU"
    },
    "display": {
        "thirdperson": {
            "rotation": [ -90, 0, 0 ],
            "translation": [ 0, 1, -3 ],
            "scale": [ 0.55, 0.55, 0.55 ]
        },
        "firstperson": {
            "rotation": [ 0, -135, 25 ],
            "translation": [ 0, 4, 2 ],
            "scale": [ 1.7, 1.7, 1.7 ]
        }
    }
}

 

It was copied over exactly from apple.json, so there should be no syntactical errors. In fact, the console error itself is:

 

"[19:27:22] [Client thread/ERROR] [FML]: Model definition for location techschmech:dualSmeltingCalculationCPU#inventory not found"

 

Here is the code for my Items class that retrieves and registers renders:

 

package techschmech.registry;

import net.minecraft.client.Minecraft;
import net.minecraft.client.resources.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraftforge.fml.common.registry.GameRegistry;
import techschmech.constants.ModConstants;

public class TSItems {

    public static Item dualSmeltingCalculationCPU;

    public static void init() {
        dualSmeltingCalculationCPU = new Item().setUnlocalizedName("dualSmeltingCalculationCPU");
    }

    public static void register() {
        GameRegistry.registerItem(dualSmeltingCalculationCPU, dualSmeltingCalculationCPU.getUnlocalizedName().substring(5));
    }

    public static void registerRenders() {
        registerRender(dualSmeltingCalculationCPU);
    }

    public static void registerRender(Item item) {
        Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(ModConstants.ID + ":" + item.getUnlocalizedName().substring(5), "inventory"));
    }

}

 

And finally, here is the code for the ClientProxy which actually calls the function in TSItems:

 

package techschmech.proxy;

import techschmech.registry.TSItems;

public class ClientProxy extends CommonProxy {

    @Override
    public void registerRenders() {
        TSItems.registerRenders();
    }

}

 

Please let me know if you require any other information. Thank you in advance ;D

 

EDIT 1

 

I've changed all the names of the files and variables and such to dual_smelting_calculation_cpu as opposed to dualSmeltingCalculationCPU, as per the recommendation of MrCrayfish in his video, and this does not seem to have helped one tiny bit.

 

Who are you? Why have you brought me here? And why are there so many PewDiePie fanboys surrounding meeeeeeeee....... *falls into pit and dies*.

 

Also this. Check it out.

width=700 height=200http://i.imgur.com/J4rrGt6.png[/img]

Posted

UPDATE:

 

I've had a look at http://greyminecraftcoder.blogspot.com/2015/05/symptoms-of-block-and-item-model-errors_24.html and while he/she has a very detailed website, everything that was stated as could be causing the issue was not, in fact, a problem, and every single one of my names is set correctly, and every single one of my tags is set correctly. I've also created a block, but it seems to be having the same problem as the item, with the addition of "[22:04:46] [Client thread/ERROR] [FML]: Model definition for location techschmech:dual_smeltery#normal not found". Help is very much required, thank you.

Who are you? Why have you brought me here? And why are there so many PewDiePie fanboys surrounding meeeeeeeee....... *falls into pit and dies*.

 

Also this. Check it out.

width=700 height=200http://i.imgur.com/J4rrGt6.png[/img]

Posted

Hi

 

Some things to try -

a) Are you sure you are registering your items in preInit and then the mesher in Init?  Try setting breakpoints at the registration and tracing in to make sure the object is not null, the names are what you think they are.

b) You could try some of the ideas on this page  http://greyminecraftcoder.blogspot.com.au/2015/05/common-mistakes-with-filenames.html - especially

  checking the build folder build/classes/main/assets/minecraftbyexample

  intellij problem

 

Apart from that, I don't see any obvious problem either.  I've sometimes had success in searching the forgeSrc lib for the error message, putting a breakpoint at that location, and then inspecting the registry to see what the problem is.

 

As a last resort, this tutorial project has working examples of items and blocks, so you could use that as a base for troubleshooting.

https://github.com/TheGreyGhost/MinecraftByExample

 

-TGG

 

 

 

 

-TGG

 

 

 

Posted

Thank you for providing that. I've decided to switch to Eclipse now, and that has completely fixed my problem. *grumble grumble forge recommending eclipse grumble*. A sad state of events, but it had to be done.

Who are you? Why have you brought me here? And why are there so many PewDiePie fanboys surrounding meeeeeeeee....... *falls into pit and dies*.

 

Also this. Check it out.

width=700 height=200http://i.imgur.com/J4rrGt6.png[/img]

Posted

Thank you for providing that. I've decided to switch to Eclipse now, and that has completely fixed my problem. *grumble grumble forge recommending eclipse grumble*. A sad state of events, but it had to be done.

 

If the problem was that your resources weren't being copied to the output and you were using IntelliJ IDEA, you can add this to your build.gradle to fix it:

// Fix resources not being loaded in IDEA
// http://www.minecraftforge.net/forum/index.php/topic,32467.msg169687.html#msg169687
idea.module.inheritOutputDirs = true

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

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.