Jump to content

Recommended Posts

Posted

Hello.

 

I am trying to use wuppy's tutorial book on modding mc 1.8 with eclipse and forge.

 

Everything in the file and both item classes is fine compared to what is in the book, it follows it to the letter; but yet I receive this message when trying to run minecraft through the eclipse:

 

AL lib: (EE) alc_cleanup: 1 device not closed

 

Here is the crash report:

 

---- Minecraft Crash Report ----

// This is a token for 1 free hug. Redeem at your nearest Mojangsta: [~~HUG~~]

 

Time: 6/19/16 1:08 PM

Description: Initializing game

 

java.lang.ClassCastException: com.nathantestmod.ItemSamGeneric cannot be cast to com.nathantestmod.ItemKey

at com.nathantestmod.NathanTestMod.PostInit(NathanTestMod.java:104)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:553)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

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:212)

at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:190)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

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:119)

at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:736)

at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:316)

at net.minecraft.client.Minecraft.startGame(Minecraft.java:528)

at net.minecraft.client.Minecraft.run(Minecraft.java:356)

at net.minecraft.client.main.Main.main(Main.java:117)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

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(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)

at GradleStart.main(Unknown Source)

 

 

A detailed walkthrough of the error, its code path and all known details is as follows:

---------------------------------------------------------------------------------------

 

-- Head --

Stacktrace:

at com.nathantestmod.NathanTestMod.PostInit(NathanTestMod.java:104)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:553)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

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:212)

at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:190)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

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:119)

at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:736)

at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:316)

at net.minecraft.client.Minecraft.startGame(Minecraft.java:528)

 

-- Initialization --

Details:

Stacktrace:

at net.minecraft.client.Minecraft.run(Minecraft.java:356)

at net.minecraft.client.main.Main.main(Main.java:117)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

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(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)

at GradleStart.main(Unknown Source)

 

-- System Details --

Details:

Minecraft Version: 1.8

Operating System: Windows 8.1 (amd64) version 6.3

Java Version: 1.8.0_92, Oracle Corporation

Java VM Version: Java HotSpot 64-Bit Server VM (mixed mode), Oracle Corporation

Memory: 908069384 bytes (866 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 MB)

JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M

IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0

FML: MCP v9.10 FML v8.0.99.99 Minecraft Forge 11.14.4.1563 5 mods loaded, 5 mods active

States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored

UCHIJ mcp{9.05} [Minecraft Coder Pack] (minecraft.jar)

UCHIJ FML{8.0.99.99} [Forge Mod Loader] (forgeSrc-1.8-11.14.4.1563.jar)

UCHIJ Forge{11.14.4.1563} [Minecraft Forge] (forgeSrc-1.8-11.14.4.1563.jar)

UCHIJ examplemod{1.0} [Example Mod] (bin)

UCHIE nathantestmod{1.0} [nathantestmod] (bin)

Loaded coremods (and transformers):

GL info: ' Vendor: 'Intel' Version: '4.2.0 - Build 10.18.10.3308' Renderer: 'Intel® HD Graphics 4600'

Launched Version: 1.8

LWJGL: 2.9.1

OpenGL: Intel® HD Graphics 4600 GL version 4.2.0 - Build 10.18.10.3308, Intel

GL Caps: Using GL 1.3 multitexturing.

Using GL 1.3 texture combiners.

Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.

Shaders are available because OpenGL 2.1 is supported.

VBOs are available because OpenGL 1.5 is supported.

 

Using VBOs: No

Is Modded: Definitely; Client brand changed to 'fml,forge'

Type: Client (map_client.txt)

Resource Packs: []

Current Language: English (US)

Profiler Position: N/A (disabled)

 

~ Do not go where the path may lead, go instead where there is no path and leave a trail.

--Ralph Waldo Emerson

Posted

Would this be fixed by changing the code lines

 

public String getUnlocalizedName(ItemStack par1ItemStack)

{

return super.getUnlocalizedName() + "." + metaNames[par1ItemStack.getItemDamage()];

}

 

to "par2ItemStack"?

~ Do not go where the path may lead, go instead where there is no path and leave a trail.

--Ralph Waldo Emerson

Posted

Here is my item class code. Can someone please tell me what to change? I just want to set metadata to the two items: samdust and samingot, within the class SamItemGeneric:

 

1    package com.nathantestmod;

2

3    import net.minecraft.item.Item;

4    import net.minecraft.item.ItemStack;

5

6    import java.util.List;

7

8    import net.minecraft.client.resources.model.ModelBakery;

9    import net.minecraft.creativetab.CreativeTabs;

10  import net.minecraftforge.fml.common.registry.GameRegistry;

11  import net.minecraftforge.fml.relauncher.Side;

12  import net.minecraftforge.fml.relauncher.SideOnly;

13 

14  public class ItemSamGeneric extends Item

15  {

16    private static String name = "sam";

17   private static String[] metaNames = { "dust", "ingot" };

18

19   public ItemSamGeneric()

20   {

21   GameRegistry.registerItem(this,  name);

22   setUnlocalizedName(NathanTestMod.MODID + "_" + name);

23   setCreativeTab(CreativeTabs.tabMisc);

24   setHasSubtypes(true);

25   }

26

27   public String getName()

28   {

29   return name;

30   }

31

32   @Override

33   public String getUnlocalizedName(ItemStack par1ItemStack)

34   {

35   return super.getUnlocalizedName() + "." + metaNames[par1ItemStack.getItemDamage()];

36   }

37   public static String getNameFromDamage(int damage)

38   {

39           return name + metaNames[damage];

40   }

41   public static void registerVariants()

42   {

43   String[] variantNames = new String[metaNames.length];

44   for (int i = 0; i < metaNames.length; i++)

45   {

46   variantNames = NathanTestMod.MODID + ":" + getNameFromDamage(i);

47   }

48   ModelBakery.addVariantName(NathanTestMod.sam, variantNames);

49   }

50   @SideOnly(Side.CLIENT)

51   @Override

52    public void getSubItems(Item itemIn, CreativeTabs tab, List subItems)

53   {

54   for (int i = 0; i < metaNames.length; ++i)

55   {

56   subItems.add(new ItemStack(itemIn, 1, i));

57   }

58   }

59

60  }

~ Do not go where the path may lead, go instead where there is no path and leave a trail.

--Ralph Waldo Emerson

Posted

Ok I'm sorry.

 

Here's the first method, right between the imports and the recipes in the Init Method.

 

public class NathanTestMod

{

public static final String MODID = "nathantestmod";

public static final String VERSION = "1.0";

public static Item key;

public static Item sam;

 

@EventHandler

public void PreInit(FMLPreInitializationEvent event)

{

key = new ItemKey();

 

sam = new ItemSamGeneric();

 

if(event.getSide() == Side.CLIENT)

{

ItemKey.registerVariants();

}

 

and here's the postInit method:

 

@EventHandler

public void PostInit(FMLPostInitializationEvent event)

{

if(event.getSide() == Side.CLIENT)

{

RenderItem renderItem = Minecraft.getMinecraft().getRenderItem();

renderItem.getItemModelMesher().register(key,  0, new ModelResourceLocation(MODID + ":" + ((ItemKey) key).getNameFromDamage(0), "inventory"));

renderItem.getItemModelMesher().register(key,  1, new ModelResourceLocation(MODID + ":" + ((ItemKey) key).getNameFromDamage(1), "inventory"));

renderItem.getItemModelMesher().register(sam,  0, new ModelResourceLocation(MODID + ":" + ((ItemKey) sam).getNameFromDamage(0), "inventory"));

renderItem.getItemModelMesher().register(sam,  1, new ModelResourceLocation(MODID + ":" + ((ItemKey) sam).getNameFromDamage(1), "inventory"));

}

}

 

The weird thing is, eclipse showed no errors in any of the classes.

~ Do not go where the path may lead, go instead where there is no path and leave a trail.

--Ralph Waldo Emerson

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.