I'm following to get into modding, and everything was worked fine with setting up the workspace and adding a block, but when I tried to add an item, following the item tutorial, the textures for both the block and the item started failing and I get a FileNotFoundException for loading both textures. And when I comment out the registry code for the item, the block still lacks a texture. I have checked the file locations, the texture loading code, the lang file is working fine, but why do both textures have issues when I added the item? Did Forge's texture loading code change from 1.7.2 to 1.7.10?Here are the specifics:- Forge 10.13.0.1152 for MC 1.7.10- Eclipse Luna on Windows 8.1 update 1- Block texture located at: Forge\WuppyTutorial\src\main\resources\assets\einsteinsci_tutorial\textures\blocks\helloWorldOre.png, where WuppyTutorial is where I extracted and set up forge.- Item texture at: \...\textures\items\helloWorldIngot.pngHere are some snippets:
@EventHandlerpublic void preInit(FMLPreInitializationEvent event){ //Register blocks/items helloWorldOre = new BlockHelloWorldOre(); helloWorldIngot = new ItemHelloWorldIngot(); RegisterHelper.registerBlock(helloWorldOre); RegisterHelper.registerItem(helloWorldIngot);}
public BlockHelloWorldOre(){ super(Material.rock); setBlockName("helloWorldOre"); //substring(5) to remove the "tile." from "tile.blockNameHere" setBlockTextureName(Reference.MODID + ":" + getUnlocalizedName().substring(5)); setCreativeTab(CreativeTabs.tabBlock); setStepSound(soundTypeStone); setHardness(0.8F); setResistance(8.0F); setLightLevel(0.8F);}
public ItemHelloWorldIngot(){ super(); setUnlocalizedName("helloWorldIngot"); //substring(5) to remove the "item." from "item.itemNameHere" setTextureName(Reference.MODID + ":" + getUnlocalizedName().substring(5)); setCreativeTab(CreativeTabs.tabMaterials);}
public class RegisterHelper { public static void registerBlock(Block block) { //substring(5) to remove the "tile." in "tile.blockNameHere". GameRegistry.registerBlock(block, Reference.MODID + "_" + block.getUnlocalizedName().substring(5)); } public static void registerItem(Item item) { //substring(5) to remove the "item." in "item.itemNameHere". GameRegistry.registerItem(item, Reference.MODID + "_" + item.getUnlocalizedName().substring(5)); }}
[13:46:27] [main/INFO]: Loading tweak class name cpw.mods.fml.common.launcher.FMLTweaker[13:46:27] [main/INFO]: Using primary tweak class name cpw.mods.fml.common.launcher.FMLTweaker[13:46:27] [main/INFO]: Calling tweak class cpw.mods.fml.common.launcher.FMLTweaker[13:46:27] [main/INFO]: Forge Mod Loader version 7.10.1.1152 for Minecraft 1.7.10 loading[13:46:27] [main/INFO]: Java is Java HotSpot(TM) 64-Bit Server VM, version 1.7.0_60, running on Windows 8.1:amd64:6.3, installed at C:\Program Files\Java\jre7[13:46:27] [main/INFO]: Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation[13:46:27] [main/INFO]: Loading tweak class name cpw.mods.fml.common.launcher.FMLInjectionAndSortingTweaker[13:46:27] [main/INFO]: Loading tweak class name cpw.mods.fml.common.launcher.FMLDeobfTweaker[13:46:27] [main/INFO]: Calling tweak class cpw.mods.fml.common.launcher.FMLInjectionAndSortingTweaker[13:46:27] [main/INFO]: Calling tweak class cpw.mods.fml.common.launcher.FMLInjectionAndSortingTweaker[13:46:27] [main/INFO]: Calling tweak class cpw.mods.fml.relauncher.CoreModManager$FMLPluginWrapper[13:46:27] [main/ERROR]: The binary patch set is missing. Either you are in a development environment, or things are not going to work![13:46:28] [main/ERROR]: The minecraft jar file:/C:/Users/einsteinsci/.gradle/caches/minecraft/net/minecraftforge/forge/1.7.10-10.13.0.1152/forgeSrc-1.7.10-10.13.0.1152.jar!/net/minecraft/client/ClientBrandRetriever.class appears to be corrupt! There has been CRITICAL TAMPERING WITH MINECRAFT, it is highly unlikely minecraft will work! STOP NOW, get a clean copy and try again![13:46:28] [main/ERROR]: FML has been ordered to ignore the invalid or missing minecraft certificate. This is very likely to cause a problem![13:46:28] [main/ERROR]: Technical information: ClientBrandRetriever was at jar:file:/C:/Users/einsteinsci/.gradle/caches/minecraft/net/minecraftforge/forge/1.7.10-10.13.0.1152/forgeSrc-1.7.10-10.13.0.1152.jar!/net/minecraft/client/ClientBrandRetriever.class, there were 0 certificates for it[13:46:28] [main/ERROR]: FML appears to be missing any signature data. This is not a good thing[13:46:28] [main/INFO]: Calling tweak class cpw.mods.fml.relauncher.CoreModManager$FMLPluginWrapper[13:46:28] [main/INFO]: Calling tweak class cpw.mods.fml.common.launcher.FMLDeobfTweaker[13:46:29] [main/INFO]: Launching wrapped minecraft {net.minecraft.client.main.Main}[13:46:30] [main/INFO]: Setting user: ForgeDevName[13:46:31] [Client thread/INFO]: LWJGL Version: 2.9.1[13:46:31] [Client thread/INFO]: Attempting early MinecraftForge initialization[13:46:31] [Client thread/INFO]: MinecraftForge v10.13.0.1152 Initialized[13:46:31] [Client thread/INFO]: Replaced 182 ore recipies[13:46:31] [Client thread/INFO]: Completed early MinecraftForge initialization[13:46:31] [Client thread/INFO]: Searching C:\Users\einsteinsci\SkyDrive\Projects\Forge\WuppyTutorial\eclipse\mods for mods[13:46:32] [Client thread/INFO]: Mod tutorial is missing the required element 'name'. Substituting tutorial[13:46:32] [Client thread/ERROR]: FML has detected a mod that is using a package name based on 'net.minecraft.src' : net.minecraft.src.FMLRenderAccessLibrary. This is generally a severe programming error. There should be no mod code in the minecraft namespace. MOVE YOUR MOD! If you're in eclipse, select your source code and 'refactor' it into a new package. Go on. DO IT NOW![13:46:33] [Client thread/INFO]: Forge Mod Loader has identified 4 mods to load[13:46:33] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:tutorial, BrightWorld Collection v3.3.0.zip, BrightWorld Sound v3.2.2.zip, BrightWorld Texts v3.2.2.zip, Vanilla Water Override.zip, PvP GUI (Orange).zip[13:46:33] [Client thread/INFO]: Processing ObjectHolder annotations[13:46:33] [Client thread/INFO]: Found 341 ObjectHolder annotations[13:46:33] [Client thread/INFO]: Configured a dormant chunk cache size of 0[13:46:33] [Client thread/INFO]: Applying holder lookups[13:46:33] [Client thread/INFO]: Holder lookups appliedStarting up SoundSystem...Initializing LWJGL OpenAL (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org)OpenAL initialized.[13:46:34] [Sound Library Loader/INFO]: Sound engine started[13:46:35] [Client thread/ERROR]: Using missing texture, unable to load tutorial:textures/blocks/helloWorldOre.pngjava.io.FileNotFoundException: tutorial:textures/blocks/helloWorldOre.pngat net.minecraft.client.resources.SimpleReloadableResourceManager.getResource(SimpleReloadableResourceManager.java:71) ~[SimpleReloadableResourceManager.class:?]at net.minecraft.client.renderer.texture.TextureMap.loadTextureAtlas(TextureMap.java:126) [TextureMap.class:?]at net.minecraft.client.renderer.texture.TextureMap.loadTexture(TextureMap.java:91) [TextureMap.class:?]at net.minecraft.client.renderer.texture.TextureManager.loadTexture(TextureManager.java:89) [TextureManager.class:?]at net.minecraft.client.renderer.texture.TextureManager.loadTickableTexture(TextureManager.java:71) [TextureManager.class:?]at net.minecraft.client.renderer.texture.TextureManager.loadTextureMap(TextureManager.java:58) [TextureManager.class:?]at net.minecraft.client.Minecraft.startGame(Minecraft.java:592) [Minecraft.class:?]at net.minecraft.client.Minecraft.run(Minecraft.java:941) [Minecraft.class:?]at net.minecraft.client.main.Main.main(Main.java:164) [Main.class:?]at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_60]at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_60]at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_60]at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_60]at net.minecraft.launchwrapper.Launch.launch(Launch.java:134) [launchwrapper-1.9.jar:?]at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.9.jar:?][13:46:35] [Client thread/INFO]: Created: 1024x512 textures/blocks-atlas[13:46:38] [Client thread/INFO]: Created: 2048x2048 textures/items-atlas[13:46:38] [Client thread/INFO]: Forge Mod Loader has successfully loaded 4 mods[13:46:38] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:tutorial, BrightWorld Collection v3.3.0.zip, BrightWorld Sound v3.2.2.zip, BrightWorld Texts v3.2.2.zip, Vanilla Water Override.zip, PvP GUI (Orange).zip[13:46:41] [Client thread/INFO]: Created: 2048x2048 textures/items-atlas[13:46:41] [Client thread/ERROR]: Using missing texture, unable to load tutorial:textures/blocks/helloWorldOre.pngjava.io.FileNotFoundException: tutorial:textures/blocks/helloWorldOre.pngat net.minecraft.client.resources.SimpleReloadableResourceManager.getResource(SimpleReloadableResourceManager.java:71) ~[SimpleReloadableResourceManager.class:?]at net.minecraft.client.renderer.texture.TextureMap.loadTextureAtlas(TextureMap.java:126) [TextureMap.class:?]at net.minecraft.client.renderer.texture.TextureMap.loadTexture(TextureMap.java:91) [TextureMap.class:?]at net.minecraft.client.renderer.texture.TextureManager.loadTexture(TextureManager.java:89) [TextureManager.class:?]at net.minecraft.client.renderer.texture.TextureManager.onResourceManagerReload(TextureManager.java:170) [TextureManager.class:?]at net.minecraft.client.resources.SimpleReloadableResourceManager.notifyReloadListeners(SimpleReloadableResourceManager.java:134) [SimpleReloadableResourceManager.class:?]at net.minecraft.client.resources.SimpleReloadableResourceManager.reloadResources(SimpleReloadableResourceManager.java:118) [SimpleReloadableResourceManager.class:?]at net.minecraft.client.Minecraft.refreshResources(Minecraft.java:653) [Minecraft.class:?]at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:303) [FMLClientHandler.class:?]at net.minecraft.client.Minecraft.startGame(Minecraft.java:596) [Minecraft.class:?]at net.minecraft.client.Minecraft.run(Minecraft.java:941) [Minecraft.class:?]at net.minecraft.client.main.Main.main(Main.java:164) [Main.class:?]at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_60]at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_60]at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_60]at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_60]at net.minecraft.launchwrapper.Launch.launch(Launch.java:134) [launchwrapper-1.9.jar:?]at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.9.jar:?][13:46:42] [Client thread/INFO]: Created: 1024x512 textures/blocks-atlasSoundSystem shutting down... Author: Paul Lamb, www.paulscode.comStarting up SoundSystem...Initializing LWJGL OpenAL (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org)OpenAL initialized.[13:46:43] [Sound Library Loader/INFO]: Sound engine started[13:46:46] [Server thread/INFO]: Starting integrated minecraft server version 1.7.10[13:46:46] [Server thread/INFO]: Generating keypair[13:46:46] [Server thread/INFO]: Injecting existing block and item data into this server instance[13:46:46] [Server thread/INFO]: Applying holder lookups[13:46:46] [Server thread/INFO]: Holder lookups applied[13:46:46] [Server thread/INFO]: Loading dimension 0 (Test) ([email protected])[13:46:46] [Server thread/INFO]: Loading dimension 1 (Test) ([email protected])[13:46:46] [Server thread/INFO]: Loading dimension -1 (Test) ([email protected])[13:46:46] [Server thread/INFO]: Preparing start region for level 0[13:46:47] [Server thread/INFO]: Changing view distance to 12, from 10[13:46:48] [Netty Client IO #0/INFO]: Server protocol version 1[13:46:48] [Netty IO #1/INFO]: Client protocol version 1[13:46:48] [Netty IO #1/INFO]: Client attempting to join with 4 mods : [email protected],[email protected],[email protected],[email protected][13:46:48] [Netty IO #1/INFO]: Attempting connection with missing mods [] at CLIENT[13:46:48] [Netty Client IO #0/INFO]: Attempting connection with missing mods [] at SERVER[13:46:48] [Server thread/INFO]: [Server thread] Server side modded connection established[13:46:48] [Server thread/INFO]: ForgeDevName[local:E:5e4c8dc2] logged in with entity id 245 at (-124.51909698510768, 64.0, 264.81918590365376)[13:46:48] [Server thread/INFO]: ForgeDevName joined the game[13:46:48] [Client thread/INFO]: [Client thread] Client side modded connection established[13:47:03] [Server thread/INFO]: Saving and pausing game...[13:47:03] [Server thread/INFO]: Saving chunks for level 'Test'/Overworld[13:47:03] [Server thread/INFO]: Saving chunks for level 'Test'/Nether[13:47:03] [Server thread/INFO]: Saving chunks for level 'Test'/The End
I'm new to modding, but not to programming. I have some experience with Java, but most of my skill is with C#. Considering the similarities, I probably know quite a bit of Java.
I don't see any Reference class. Oh, and I was incorrect about your modid being tutorial, I didn't read correctly.
Whoops! Here is my actual Reference class:
Reference.java
package com.einsteinsci.tutorial.help;
public class Reference {
public static final String MODID = "tutorial";
public static final String VERSION = "0.0.0.1";
}
I just use that for constants specific to the mod. Earlier I added my RegisterHelper class, which has the registration code.
Your mod id is tutorial. You should change it to what I said above. Also, you might want to add a name in the @Mod annotation.
Be sure to quote my post if you want a reply.
lol @ Cameronazzi copy-pasting my sig into his
Yes.
Also, I added my Reference class in the OP, which has the registration code.
I don't see any Reference class. Oh, and I was incorrect about your modid being tutorial, I didn't read correctly.
Be sure to quote my post if you want a reply.
lol @ Cameronazzi copy-pasting my sig into his
Whoops! Here is my actual Reference class:
Reference.java
I just use that for constants specific to the mod. Earlier I added my RegisterHelper class, which has the registration code.
EDIT: So I was correct.
Be sure to quote my post if you want a reply.
lol @ Cameronazzi copy-pasting my sig into his