Tired of the same ol' "adding a custom block and simple item and all this other crap there's a million tutorials of"? SO AM I. So, Here I am, bringing you my own modding tutorials for your enjoyment.
Things I will most likely NOT do:
Show how to make a block, show how to make a mob, show how to make your block spawn.
Things I will most likely do:
Different things with items, spawn entities, make things go BOOM.
SETUP:
Setting Up Minecraft Forge!
Basic Item & Crafting Recipe w/ A Little Java Know-What
Extended Recipe & Recompile & Reobfuscate & Playing Your Mod
Item Class Condensing & Item Effects & Error Checking
Custom Weapon and Pickaxe without Modifying Base Classes!
More Looks at Tools Without Modifying Base Classes & Setting Mobs on Fire
Unlimited Item Sprites With Forge!
Please leave any and all feedback/comments/what-have-you on either the youtube video or this thread. Feel perfectly free to subscribe!
There's more to come, I know so far all I have is the same crap a million others have, but this (hopefully) will be a bit more unique!
Against my better judgement, I made a setup video. Woo :sleep.gif:
20 minutes long? That's going to take easily 2+ hours to render.
But, I figured my subs would like it and maybe any of you, too. So... enjoy (once it's out)
Added tutorial for making 2 items use 1 class file, so you're not overloading with .class files, and how to make an item turn into another item (which original credit is given to x2robbie2x) And showed how I personally error check my mods!
i get this error /: im trying to make a pickaxe axe shoval sword and hoe
27 achievements
174 recipes
ModLoader 1.0.0 Initializing...
Mod Initialized: mod_Tools TestMod v0.01
Overriding /gui/items.png with /DiamOsid/Pick.png @ 38. 87 left.
Overriding /gui/items.png with /DiamOsid/Spade.png @ 102. 86 left.
Overriding /gui/items.png with /DiamOsid/Axe.png @ 118. 85 left.
Overriding /gui/items.png with /DiamOsid/Hoe.png @ 119. 84 left.
Overriding /gui/items.png with /DiamOsid/Sword.png @ 120. 83 left.
Overriding /gui/items.png with /DiamOsid/DiamOsid.png @ 134. 82 left.
Exception in thread "Minecraft main thread" java.lang.ExceptionInInitializerError
at net.minecraft.client.Minecraft.startGame(Minecraft.java:314)
at net.minecraft.client.Minecraft.run(Minecraft.java:613)
at java.lang.Thread.run(Thread.java:679)
Caused by: java.lang.RuntimeException: java.lang.NullPointerException
at net.minecraft.src.ModLoader.init(ModLoader.java:770)
at net.minecraft.src.ModLoader.AddAllRenderers(ModLoader.java:162)
at net.minecraft.src.RenderManager.<init>(RenderManager.java:104)
at net.minecraft.src.RenderManager.<clinit>(RenderManager.java:42)
... 3 more
Caused by: java.lang.NullPointerException
at net.minecraft.src.CraftingManager.addRecipe(CraftingManager.java:303)
at net.minecraft.src.ModLoader.AddRecipe(ModLoader.java:372)
at net.minecraft.src.mod_Tools.load(mod_Tools.java:54)
at net.minecraft.src.ModLoader.init(ModLoader.java:739)
... 6 more
heres my code
//modlader templat
package net.minecraft.src;
import java.util.Random;
public class mod_Tools extends BaseMod
{
public static Item DiamOsid = new ItemDiamondobsidion(158).setItemName("DiamOsid");
public static Item PickaxeDO = new ItemPickaxe(153,EnumToolMaterial.DIAMOSID).setItemName("ThePick");
public static Item SpadeDO = new ItemSpade(154,EnumToolMaterial.DIAMOSID).setItemName("TheSpade");
public static Item AxeDO = new ItemAxe(155,EnumToolMaterial.DIAMOSID).setItemName("TheAxe");
public static Item HoeDO = new ItemHoe(156,EnumToolMaterial.DIAMOSID).setItemName("TheHoe");
public static Item SwordDO = new ItemSword(157,EnumToolMaterial.DIAMOSID).setItemName("TheSword");
@Override
public String getVersion()
{
return "TestMod v0.01";
}
public mod_Tools()
{
}
@Override
public void load() {
ModLoader.AddName(PickaxeDO, "TestPick");
ModLoader.AddName(SpadeDO, "TestShovle");
ModLoader.AddName(AxeDO, "TestAxe");
ModLoader.AddName(HoeDO, "TestHoe");
ModLoader.AddName(SwordDO, "TestSword");
ModLoader.AddName(DiamOsid, "TestItem");
PickaxeDO.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/Pick.png" );
SpadeDO.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/Spade.png" );
AxeDO.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/Axe.png" );
HoeDO.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/Hoe.png" );
SwordDO.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/Sword.png" );
DiamOsid.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/DiamOsid.png");
ModLoader.AddRecipe(new ItemStack(PickaxeDO, 1), new Object[] {"###", " $ ", " $ ", Character.valueOf('#'), Item.DiamOsid, Character.valueOf('$'), Item.stick} );
ModLoader.AddRecipe(new ItemStack(SpadeDO, 1), new Object[] {" # ", " $ ", " $ ", Character.valueOf('#'), Item.DiamOsid, Character.valueOf('$'), Item.stick});
ModLoader.AddRecipe(new ItemStack(AxeDO, 1), new Object[] {"## ", "#$ ", " $ ", Character.valueOf('#'), Item.DiamOsid, Character.valueOf('$'), Item.stick});
ModLoader.AddRecipe(new ItemStack(HoeDO, 1), new Object[] {"##", " $ ", " $ ", Character.valueOf('#'), Item.DiamOsid, Character.valueOf('$'), Item.stick});
ModLoader.AddRecipe(new ItemStack(SwordDO, 1), new Object[] {" # ", " # ", " $ ", Character.valueOf('#'), Item.DiamOsid, Character.valueOf('$'), Item.stick});
ModLoader.AddShapelessRecipe(new ItemStack(DiamOsid, 1), new Object[] {"#", "$", Character.valueOf('#'), Item.diamond, Character.valueOf('$'), Block.obsidian});
}
}
i get this error /: im trying to make a pickaxe axe shoval sword and hoe
27 achievements
174 recipes
ModLoader 1.0.0 Initializing...
Mod Initialized: mod_Tools TestMod v0.01
Overriding /gui/items.png with /DiamOsid/Pick.png @ 38. 87 left.
Overriding /gui/items.png with /DiamOsid/Spade.png @ 102. 86 left.
Overriding /gui/items.png with /DiamOsid/Axe.png @ 118. 85 left.
Overriding /gui/items.png with /DiamOsid/Hoe.png @ 119. 84 left.
Overriding /gui/items.png with /DiamOsid/Sword.png @ 120. 83 left.
Overriding /gui/items.png with /DiamOsid/DiamOsid.png @ 134. 82 left.
Exception in thread "Minecraft main thread" java.lang.ExceptionInInitializerError
at net.minecraft.client.Minecraft.startGame(Minecraft.java:314)
at net.minecraft.client.Minecraft.run(Minecraft.java:613)
at java.lang.Thread.run(Thread.java:679)
Caused by: java.lang.RuntimeException: java.lang.NullPointerException
at net.minecraft.src.ModLoader.init(ModLoader.java:770)
at net.minecraft.src.ModLoader.AddAllRenderers(ModLoader.java:162)
at net.minecraft.src.RenderManager.<init>(RenderManager.java:104)
at net.minecraft.src.RenderManager.<clinit>(RenderManager.java:42)
... 3 more
Caused by: java.lang.NullPointerException
at net.minecraft.src.CraftingManager.addRecipe(CraftingManager.java:303)
at net.minecraft.src.ModLoader.AddRecipe(ModLoader.java:372)
at net.minecraft.src.mod_Tools.load(mod_Tools.java:54)
at net.minecraft.src.ModLoader.init(ModLoader.java:739)
... 6 more
heres my code
//modlader templat
package net.minecraft.src;
import java.util.Random;
public class mod_Tools extends BaseMod
{
public static Item DiamOsid = new ItemDiamondobsidion(158).setItemName("DiamOsid");
public static Item PickaxeDO = new ItemPickaxe(153,EnumToolMaterial.DIAMOSID).setItemName("ThePick");
public static Item SpadeDO = new ItemSpade(154,EnumToolMaterial.DIAMOSID).setItemName("TheSpade");
public static Item AxeDO = new ItemAxe(155,EnumToolMaterial.DIAMOSID).setItemName("TheAxe");
public static Item HoeDO = new ItemHoe(156,EnumToolMaterial.DIAMOSID).setItemName("TheHoe");
public static Item SwordDO = new ItemSword(157,EnumToolMaterial.DIAMOSID).setItemName("TheSword");
@Override
public String getVersion()
{
return "TestMod v0.01";
}
public mod_Tools()
{
}
@Override
public void load() {
ModLoader.AddName(PickaxeDO, "TestPick");
ModLoader.AddName(SpadeDO, "TestShovle");
ModLoader.AddName(AxeDO, "TestAxe");
ModLoader.AddName(HoeDO, "TestHoe");
ModLoader.AddName(SwordDO, "TestSword");
ModLoader.AddName(DiamOsid, "TestItem");
PickaxeDO.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/Pick.png" );
SpadeDO.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/Spade.png" );
AxeDO.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/Axe.png" );
HoeDO.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/Hoe.png" );
SwordDO.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/Sword.png" );
DiamOsid.iconIndex = ModLoader.addOverride("/gui/items.png", "/DiamOsid/DiamOsid.png");
ModLoader.AddRecipe(new ItemStack(PickaxeDO, 1), new Object[] {"###", " $ ", " $ ", Character.valueOf('#'), Item.DiamOsid, Character.valueOf('), Item.stick} );
ModLoader.AddRecipe(new ItemStack(SpadeDO, 1), new Object[] {" # ", " $ ", " $ ", Character.valueOf('#'), Item.DiamOsid, Character.valueOf('), Item.stick});
ModLoader.AddRecipe(new ItemStack(AxeDO, 1), new Object[] {"## ", "#$ ", " $ ", Character.valueOf('#'), Item.DiamOsid, Character.valueOf('), Item.stick});
ModLoader.AddRecipe(new ItemStack(HoeDO, 1), new Object[] {"##", " $ ", " $ ", Character.valueOf('#'), Item.DiamOsid, Character.valueOf('), Item.stick});
ModLoader.AddRecipe(new ItemStack(SwordDO, 1), new Object[] {" # ", " # ", " $ ", Character.valueOf('#'), Item.DiamOsid, Character.valueOf('), Item.stick});
ModLoader.AddShapelessRecipe(new ItemStack(DiamOsid, 1), new Object[] {"#", "{:content:}quot;, Character.valueOf('#'), Item.diamond, Character.valueOf('), Block.obsidian});
}
}
Nice :biggrin.gif: I gotta step my game up now there's YouTube competition :tongue.gif:
I'm not trying to compete with you at all xD
Just maybe extending or covering things maybe you don't get around to or make video tutorials for forge since the only ones I've seen are text-based (though still good, some people, like me, just learn better through video)
I did! And still do!:biggrin.gif: He's how I learned my first bit of modding, then I just kinda taught myself/forum-spammed questions in Modding Discussion xD
Minecraft still crashes after i delete item for item.DiamOsid /:and alright on the armor looking froward to it
Lemme see the error report now? OH! Wait.. uhh Edit? haha
Okay, in your shapeless recipe, take out your Character.setValueOf() stuff and the "x", "x", kinda stuff, ONLY in the brackets have {ItemName, ItemName, ItemName} like that. There's no need for declaring character values since the item's placement in the crafting recipe doesn't matter. Check out my very first Item tutorial video to see an example!
20 minutes long? That's going to take easily 2+ hours to render.
But, I figured my subs would like it and maybe any of you, too. So... enjoy (once it's out)
It appears that all of the code parts of your post have shown themselves... that usually means there is an error on how you set it up.
Ugh :sleep.gif: This will be fun
I'll look into it.
And, new tutorial is up, we look at other tools without modifying base classes and set mobs on fire!
27 achievements
174 recipes
ModLoader 1.0.0 Initializing...
Mod Initialized: mod_Tools TestMod v0.01
Overriding /gui/items.png with /DiamOsid/Pick.png @ 38. 87 left.
Overriding /gui/items.png with /DiamOsid/Spade.png @ 102. 86 left.
Overriding /gui/items.png with /DiamOsid/Axe.png @ 118. 85 left.
Overriding /gui/items.png with /DiamOsid/Hoe.png @ 119. 84 left.
Overriding /gui/items.png with /DiamOsid/Sword.png @ 120. 83 left.
Overriding /gui/items.png with /DiamOsid/DiamOsid.png @ 134. 82 left.
Exception in thread "Minecraft main thread" java.lang.ExceptionInInitializerError
at net.minecraft.client.Minecraft.startGame(Minecraft.java:314)
at net.minecraft.client.Minecraft.run(Minecraft.java:613)
at java.lang.Thread.run(Thread.java:679)
Caused by: java.lang.RuntimeException: java.lang.NullPointerException
at net.minecraft.src.ModLoader.init(ModLoader.java:770)
at net.minecraft.src.ModLoader.AddAllRenderers(ModLoader.java:162)
at net.minecraft.src.RenderManager.<init>(RenderManager.java:104)
at net.minecraft.src.RenderManager.<clinit>(RenderManager.java:42)
... 3 more
Caused by: java.lang.NullPointerException
at net.minecraft.src.CraftingManager.addRecipe(CraftingManager.java:303)
at net.minecraft.src.ModLoader.AddRecipe(ModLoader.java:372)
at net.minecraft.src.mod_Tools.load(mod_Tools.java:54)
at net.minecraft.src.ModLoader.init(ModLoader.java:739)
... 6 more
and also can you do armor tuts
Don't put Item.DiamOsid, just put DiamOsid
Also, USE ECLIPSE
That would catch this error for you.And, I'll get into armor when I get into Forge
Minecraft still crashes after i delete item for item.DiamOsid /:and alright on the armor looking froward to it
lol you should watch his videos :wink.gif:
I make Minecraft Videos, So subscribe if you like it and ask me if you want me to do an adventure map!
I'm not trying to compete with you at all xD
Just maybe extending or covering things maybe you don't get around to or make video tutorials for forge since the only ones I've seen are text-based (though still good, some people, like me, just learn better through video)
I did! And still do!:biggrin.gif: He's how I learned my first bit of modding, then I just kinda taught myself/forum-spammed questions in Modding Discussion xD
Lemme see the error report now? OH! Wait.. uhh Edit? haha
Okay, in your shapeless recipe, take out your Character.setValueOf() stuff and the "x", "x", kinda stuff, ONLY in the brackets have {ItemName, ItemName, ItemName} like that. There's no need for declaring character values since the item's placement in the crafting recipe doesn't matter. Check out my very first Item tutorial video to see an example!