Posted May 27, 201411 yr Hello, I was following the guides on YouTube; and now struggling... I am picking up coding from not looking at it for about a year. Please don't yell at things I may do wrong but rather tell me its not done like that haha Secondly I have looked at the forums and cant find someone with a similar error therefore making me conclude I'm missing something. Overview of problem: I can create the block in Techne and export etc.. the code seems fine in my opinion (obviously something is wrong) and I have no ''errors'' however once in game my block I place down is transparent, yet not in the sense that it allows you to see through the world, but it literally is like a pane of glass. I can get my texture for the block to be viewable in hand so long as its not the 3D version. If it is then my texture in hand is like I have assigned no texture at all. Here is my workspace layout: http://gyazo.com/ffd5cb3312377b69b807a145d99ac1ab and here is my code: ModelCollumStone: http://pastebin.com/U6Y99ZGD TileEntityCollumStone: http://pastebin.com/v2S7CnfB HandEntityCollumStoneRenderer: http://pastebin.com/EjAV4EmW TileEntityCollumStoneRenderer: http://pastebin.com/VG2YT9Qj CollumStone: http://pastebin.com/1Nm6255e ClientProxy: http://pastebin.com/zEPeVfXF CommonProxy: http://pastebin.com/gZXShKd2 KimptonCore: http://pastebin.com/0hFB7S6c From what I can tell, my client proxy isn't being read? therefore the block doesn't know where to locate its rendering code - regardless of the textures. I'm not in a hurry to get an answer, nor for someone to write this for me, I wish to learn as a I go along. I have very small knowledge over Java but I'm quite competent with JavaScript. Possibly pointing me in the right direction would help me more than just a lump of code that solves this issue. I know in my paste bin for ''CollumStone'' i haven't written my Creative Tab - its because it doesn't load my block into that either, so I leave it in as Deco Tab. Here's an image in-game: http://gyazo.com/347863c3ba94f4a70d4775ef571caa08 ps. I know column is not spelt Collum but i have plans to use column as a prefix for future blocks and therefore used Collum while I test things out. Many thanks in advanced, Kimpton - The Wannabe Modder. *MODIFICATION* I have a sneaky suspicion that I possibly have set-up this grindle thing completely wrong - if this helps aha: I will resetup my Eclipse and reply if this error persists.
May 28, 201411 yr For one thing, fix your modid: lowercase letters and numbers only (spaces are iffy, so leave those out for safety). Another, you don't use new Block/Item/TE in the main class section. Put those inside your Preinitialization event method. -S- (if I helped, please click Thank and applaud) http://6upnqa.dm2301.livefilestore.com/y2mtf-vG7Tqq1TiiVpIm53KWj7294NDPoHfSHHb4PzZiMAUfRCfK0UY0MwOu7Q3zTBNVTKqWjr2-xgBfFRpQT5p-QivtvknPpoABMNUw9br9WuZcBFkjePhnAbW500gVm-P/sequiturian.png[/img]
May 28, 201411 yr Author Okay thanks for clearing the modid thing: having to read a few 1.6.4 videos, I was told it didn't matter? But either way thanks'. Secondly do you mean place: public static Block CollumStone = new CollumStone(Material.rock).setBlockName("CollumStone"); into @EventHandler public void PreInit(FMLPreInitializationEvent preEvent){ //Registering Creative Tabs latheTab = new CreativeTabs("kimpton"){ @SideOnly(Side.CLIENT) public Item getTabIconItem(){ return Item.getItemFromBlock(KimptonCore.CollumStone); } }; //Registering Blocks GameRegistry.registerBlock(CollumStone, "CollumStone"); //Registering Tile Entities GameRegistry.registerTileEntity(TileEntityCollumStone.class, "CollumStone"); //Rendering Blocks and Mobs kimptonProxy.RenderInfomation(); kimptonProxy.registerTileEntitySpecialRenderer(); } If so - then the block doesn't get registered at all. *MODIFICATION* package com.kimpton.common; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPostInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import com.kimpton.block.entity.TileEntityCollumStone; import com.kimpton.block.render.TileEntityCollumStoneRenderer; import com.kimpton.blockDatabase.CollumStone; @Mod(modid = KimptonCore.modid, version = KimptonCore.VERSION) public class KimptonCore { public static final String modid = "lathemod"; public static final String VERSION = "1.0"; //Own Creative Tabs public static CreativeTabs latheTab; //Defining Blocks public static Block CollumStone; //Proxy Settings @SidedProxy(clientSide = "com.kimpton.common.ClientProxy", serverSide = "com.kimpton.common.CommonProxy") public static CommonProxy kimptonProxy; @EventHandler public void PreInit(FMLPreInitializationEvent preEvent){ //Registering Creative Tabs latheTab = new CreativeTabs("kimpton"){ @SideOnly(Side.CLIENT) public Item getTabIconItem(){ return Item.getItemFromBlock(KimptonCore.CollumStone); } }; //Define Block Properties CollumStone = new CollumStone(Material.rock).setBlockName("CollumStone"); //Registering Blocks GameRegistry.registerBlock(CollumStone, "CollumStone"); //Registering Tile Entities GameRegistry.registerTileEntity(TileEntityCollumStone.class, "CollumStone"); //Rendering Blocks and Mobs kimptonProxy.RenderInfomation(); kimptonProxy.registerTileEntitySpecialRenderer(); } @EventHandler public void Init(FMLInitializationEvent event){ } @EventHandler public void PostInit(FMLPostInitializationEvent postEvent){ } } That boots - main problem still persists however..
May 28, 201411 yr Author By the way, I rebuilt my eclipse and grindle - didn't solve problem, but now I can see the documentation
May 29, 201411 yr Author BUMP - If this is against the rules I'm sorry. Could really use some more advice.
May 29, 201411 yr Hi I suspect the problem is that you've made your RenderInformation static, so it doesn't override CommonProxy.RenderInformation. It's a good idea to put @Override before any methods you want to override, so the compiler will tell you you've got a problem. i.e. try this and see what it tells you public class ClientProxy extends CommonProxy { @Override public static void RenderInfomation(){ -TGG
May 29, 201411 yr Author Ok thanks for replying Yeah it doesn't like it being there ''@Override'' however leaving it in there and the complier doesn't spit out anything - runs completely smooth..
May 29, 201411 yr I don't remember the exact method but, I think there is a method called isNormalBlock() You can find it in the block class /build/temp/recompSrc/net.minecraft.block/block.java Hope this helps.
May 29, 201411 yr Author yeah I put that in already: public boolean renderAsNormalBlock(){ return false; }
May 29, 201411 yr Ok thanks for replying Yeah it doesn't like it being there ''@Override'' however leaving it in there and the complier doesn't spit out anything - runs completely smooth.. Well that's strange. When I put @Override before a static method it refuses to compile and tells me "static method xxx in derived class cannot override instance method xxx in base class" What happens if you remove the static from your RenderInformation()? (BTW you should really name it renderInformation() to be consistent with Java naming conventions ) -TGG
May 29, 201411 yr Author Okay yep now it's spitting out problems. Having renamed RenderInfomation to renderInfomation (and in all the other relative places also) while also removing ''Static" in common and client proxy it throws out this: [15:10:28] [Client thread/ERROR] [FML]: Fatal errors were detected during the transition from PREINITIALIZATION to INITIALIZATION. Loading cannot continue [15:10:28] [Client thread/ERROR] [FML]: mcp{8.09} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized FML{7.2.156.1060} [Forge Mod Loader] (forgeSrc-1.7.2-10.12.1.1060.jar) Unloaded->Constructed->Pre-initialized Forge{10.12.1.1060} [Minecraft Forge] (forgeSrc-1.7.2-10.12.1.1060.jar) Unloaded->Constructed->Pre-initialized lathemod{1.0} [lathemod] (bin) Unloaded->Constructed->Errored [15:10:28] [Client thread/ERROR] [FML]: The following problems were captured during this phase [15:10:28] [Client thread/ERROR] [FML]: Caught exception from lathemod java.lang.NullPointerException at com.kimpton.block.model.ModelCollumStone.<init>(ModelCollumStone.java:100) ~[ModelCollumStone.class:?] at com.kimpton.block.render.TileEntityCollumStoneRenderer.<init>(TileEntityCollumStoneRenderer.java:20) ~[TileEntityCollumStoneRenderer.class:?] at com.kimpton.common.ClientProxy.renderInfomation(ClientProxy.java:16) ~[ClientProxy.class:?] at com.kimpton.common.KimptonCore.PreInit(KimptonCore.java:53) ~[KimptonCore.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_05] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_05] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_05] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_05] at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:513) ~[FMLModContainer.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_05] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_05] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_05] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_05] at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) ~[guava-15.0.jar:?] at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47) ~[guava-15.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314) ~[guava-15.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) ~[guava-15.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:267) ~[guava-15.0.jar:?] at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:209) ~[LoadController.class:?] at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:188) ~[LoadController.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_05] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_05] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_05] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_05] at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) ~[guava-15.0.jar:?] at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47) ~[guava-15.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314) ~[guava-15.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) ~[guava-15.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:267) ~[guava-15.0.jar:?] at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119) [LoadController.class:?] at cpw.mods.fml.common.Loader.loadMods(Loader.java:500) [Loader.class:?] at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:202) [FMLClientHandler.class:?] at net.minecraft.client.Minecraft.startGame(Minecraft.java:520) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:890) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:112) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_05] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_05] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_05] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_05] 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:?] From what I can tell is that now its not static, my Core class cant read the function? This is the same error with or without "Override". Thanks in advanced.
May 29, 201411 yr From what I can tell is that now its not static, my Core class cant read the function? This is the same error with or without "Override". Nah, dude, that's a good sign. It means your ClientProxy code is actually running now. So now you're finding the next bug If you look at this part here java.lang.NullPointerException at com.kimpton.block.model.ModelCollumStone.<init>(ModelCollumStone.java:100) ~[ModelCollumStone.class:?] It tells you that there's something wrong in your ModelCollumStone constructor, at line 100: probably here I think Shape16.mirror = true; Shape16 = new ModelRenderer(this, 0, 0); Techne is notorious for this bug, i.e. using Shape16 before initialising it. Compare the Shape16 lines to the others (eg Shape15). -TGG
May 29, 201411 yr Author Haha! It works Shape15 = new ModelRenderer(this, 0, 0); Shape15.addBox(0F, 0F, 0F, 1, 16, 1); Shape15.setRotationPoint(6F, 8F, 4F); Shape15.setTextureSize(154, 154); Shape15.mirror = true; setRotation(Shape15, 0F, 0F, 0F); Shape16 = new ModelRenderer(this, 0, 0); Shape16.addBox(0F, 0F, 0F, 1, 16, 1); Shape16.setRotationPoint(4F, 8F, 6F); Shape16.setTextureSize(154, 154); Shape16.mirror = true; The gap was the error - it had an extra " Shape16.mirror = true; " in that gap - Looking at the other Shapes, it was quite obvious it didn't need to be there. There's a texture bug now - but don't worry I can sort that out. Thank you very much!
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.