Jump to content

Recommended Posts

Posted

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.

Posted

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.

Posted

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

Posted

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

 

Posted

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

 

 

Posted

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.

Posted

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

Posted

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.

Posted

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

 

 

 

Posted

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.

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



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • So am trying to make a custom 1.19.2 modpack and everything works until I add Oculus. I have tried Oculus+Embedium and Oculus+Rubdium and by themselves they work but as soon as I add anything it crashes no matter what it is. The modpack works fine with just Embedium and Rubdium. Can you help me to see if this is something i can fix or do i just have to deal with not having shaders. Here is the crash log. Thank you for your time. https://paste.ee/p/WXfNZ24K
    • New users at Temureceive a 40 Off discount on orders over 40 Off Use the code [{acx318439}]] during checkout to get TemuDiscount 40 Off For New Users. You n save 40 Off off your first order with the Promo Code available for a limited time only. Extra 30% off for new and existing customers + Up to $40 Off % off & more. Temu Promo Codes for New users- [{acx318439}]] Temudiscount code for New customers- [{acx318439}]] Temu $40 Off Promo Code- [{acx318439}]] what are Temu codes- acx318439 does Temu give you $40 Off - [{acx318439}]] Yes Verified Temu Promo Code january 2025- {acx318439} TemuNew customer offer {acx318439} Temudiscount codejanuary 2025 {acx318439} 40 off Promo Code Temu {acx318439} Temu 40% off any order {acx318439} 40 dollar off Temu code {acx318439} TemuCoupon $40 Off off for New customers There are a number of discounts and deals shoppers n take advantage of with the Teemu Coupon Bundle [{acx318439}]]. TemuCoupon $40 Off off for New customers [{acx318439}]] will save you $40 Off on your order. To get a discount, click on the item to purchase and enter the code. You n think of it as a supercharged savings pack for all your shopping needs Temu Promo Code 80% off – [{acx318439}]] Free Temu codes 50% off – [{acx318439}]] TemuCoupon $40 Off off – [{acx318439}]] Temu buy to get ₱39 – [{acx318439}]] Temu 129 coupon bundle – [{acx318439}]] Temu buy 3 to get €99 – [{acx318439}]] Exclusive $40 Off Off TemuDiscount Code Temu $40 Off Off Promo Code : (acx318439) Temu Discount Code $40 Off Bundle acx318439) acx318439 Temu $40 Off off Promo Code for Exsting users : acx318439) Temu Promo Code $40 Off off Temu 40 Off coupon code (acx318439) will save you 40 Off on your order. To get a discount, click on the item to purchase and enter the code. Yes, Temu offers 40 Off Coupon Code “acx318439” for Existing Customers.  You can get a 40 Off bonus plus 30% off any purchase at Temu with the 40 Off Coupon Bundle at Temu if you sign up with the referral code [{acx318439}]] and make a first purchase of $40 Off or more. Temu Promo Code 40 off-{acx318439} Temu Promo Code -{acx318439} Temu Promo Code $40 Off off-{acx318439} kubonus code -{acx318439} Get ready to unlock a world of savings with our free Temu UK coupons! We’ve got you covered with a wide range of Temu UK coupon code options that will help you maximize your shopping experience.30% Off Temu UK Coupons, Promo Codes + 25% Cash Back [ acx318439]   Yes, Temu offers 40 off coupon code {acx318439} for first-time users. You can get a $40 bonus plus 40% off any purchase at Temu with the $40 Coupon Bundle if you sign up with the referral code [{acx318439}]] and make a first purchase of $40 or more. If you are who wish to join Temu, then you should use this exclusive TemuCoupon code 40 off (acx318439) and get 40 off on your purchase with Temu. You can get a 40% discount with TemuCoupon code {acx318439}. This exclusive offer is for existing customers and can be used for a 40 reduction on your total purchase. Enter coupon code {acx318439} at checkout to avail of the discount. You can use the code {acx318439} to get a 40 off TemuCoupon as a new customer. Apply this TemuCoupon code $40 off (acx318439) to get a $40 discount on your shopping with Temu. If you’re a first-time user and looking for a TemuCoupon code $40 first time user(acx318439) then using this code will give you a flat $40 Off and a 90% discount on your Temu shopping.     •    acx318439: Enjoy flat 40% off on your first Temu order.     •    acx318439: Download the Temu app and get an additional 40% off.     •    acx318439: Celebrate spring with up to 90% discount on selected items.     •    acx318439: Score up to 90% off on clearance items.     •    acx318439: Beat the heat with hot summer savings of up to 90% off.     •    acx318439: Temu UK Coupon Code to 40% off on Appliances at Temu. How to Apply Temu Coupon Code? Using the TemuCoupon code $40 off is a breeze. All you need to do is follow these simple steps:     1    Visit the Temu website or app and browse through the vast collection of products.     2    Once you’ve added the items you wish to purchase to your cart, proceed to the checkout page.     3    During the checkout process, you’ll be prompted to enter a coupon code or promo code.     4    Type in the coupon code: [{acx318439}]] and click “Apply.”     5    Voila! You’ll instantly see the $40 discount reflected in your total purchase amount. Temu New User Coupon: Up To 90% OFF For Existing Customers Temu Existing customer’s coupon codes are designed just for new customers, offering the biggest discounts 90% and the best deals currently available on Temu. To maximize your savings, download the Temu app and apply our Temu new user coupon during checkout.     •    acx318439: New users can get up to 80% extra off.     •    acx318439: Get a massive 40% off your first order!     •    acx318439: Get 20% off on your first order; no minimum spending required.     •    acx318439: Take an extra 15% off your first order on top of existing discounts.     •    acx318439: Temu UK Enjoy a 40% discount on your entire first purchase.  
    • What do I do now when it says "1 error"?
    • Hello everyone new here how are you all?
    • I haven't tested it but under https://minecraft.wiki/w/Items_model_definition it says now:   So I guess the resource location must have changed with 1.24.4, which means you need to move your models/item/ to the new source. But as I said I haven't tested this so it also may be that this wont work. Nevertheless give it a try      EDIT (important) So now I tested it and found out how it works   Let the model files (e.g. the .json from blockbench) within "assets/<your_mod_id>/models/item" In addition to that do the following: Every model you added will need a new file under "assets/<your_mod_id>/items" That file is also a JSON and looks like this: { "model": { "type": "minecraft:model", "model": "your_mod_id:item/custom_item" } } - "type" can be minecraft:model, minecraft:composite, minecraft:condition, minecraft:select, minecraft:range_dispatch, minecraft:empty, minecraft:bundle/selected_item or minecraft:special. (In most cases you would need minecraft:model) - "model" is the path to your actual model for this item. For example the value above would point to "assets/your_mod_id/models/item/custom_item"
  • Topics

  • Who's Online (See full list)

    • There are no registered users currently online
×
×
  • Create New...

Important Information

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