Hello again Techguy! I'm trying again with another mod that gives the villager the pre-1.0.0 player hurt sound using Audiomod, but to no avail, I know that isn't modloader, but perhaps you could help me anyways?
/**
* Returns the sound this mob makes while it's alive.
*/
protected String getLivingSound()
{
return "mob.villager.default";
}
/**
* Returns the sound this mob makes when it is hurt.
*/
protected String getHurtSound()
{
return "mod.mob.villager.defaulthurt";
}
/**
* Returns the sound this mob makes on death.
*/
protected String getDeathSound()
{
return "mod.mob.villager.defaultdeath";
}
I am making a mod that involves an custom ore. I have created the ore but I need to have it generate in the world. can you post a tutorial on how to do this as an extention of your block tutorial? thank you!
Let me start by saying Thank You. Your's was the upteenth tutorial I found on modding in ModLoader, and the first one that wasn't a video. Since I found it, I have been able to make huge leaps in mod that I am working on.
I did have a quick, and probably pretty stupid, question. You say to keep all of my mods in one mod_ class. Currently, I'm using two (and was planning on using more) so that I can keep items separate from blocks separate from etc. Is this going to cause any long term problems with my mod? I'm introducing a large number of new blocks, items, recipes, and hopefully a custom generated biome, and the sorting and filing part of me wants to keep everything separate and pretty.
Not the most important of questions, to be certain, but I wanted to compliment you on an amazingly written tutorial, and figured I would ponder this little issue at the same time.
I look forward to seeing more of this tutorial, and again Thank you
== ERRORS FOUND ==
src/minecraft/net/minecraft/src/mod_example.java:27: cannot find symbol
symbol : class Map
location: class net.minecraft.src.mod_example
public void addRenderer(Map map)
^
1 error
==================
mod_example.java
package net.minecraft.src;
public class mod_example extends BaseMod
{
public static Block Example = new BlockExample(170, 0).setHardness(1.0F).setResistance(6000.0F).setLightValue(1.0F).setBlockName("Blue");
public mod_example()
{
ModLoader.registerBlock(Example);
Example.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/Namehere.png");
ModLoader.addName(Example, "Future Blue");
ModLoader.addRecipe(new ItemStack(Example, 1), new Object[]{ "###", "###", "###", Character.valueOf('#'), Item.redstone});
}
public String Version()
{
return "1.2.5";
}
public void addRenderer(Map map)
{
map.put(EntityFSB.class, new RenderBiped(new ModelBiped(), 0.5F));
}
@Override
public String getVersion() {
// TODO Auto-generated method stub
return null;
}
@Override
public void load() {
ModLoader.registerEntityID(EntityFSB.class, "FSB", ModLoader.getUniqueEntityId());
ModLoader.addSpawn(EntityFSB.class, 12, 14, 18, EnumCreatureType.creature);
}
}
Hello again Techguy! I'm trying again with another mod that gives the villager the pre-1.0.0 player hurt sound using Audiomod, but to no avail, I know that isn't modloader, but perhaps you could help me anyways?
/**
* Returns the sound this mob makes while it's alive.
*/
protected String getLivingSound()
{
return "mob.villager.default";
}
/**
* Returns the sound this mob makes when it is hurt.
*/
protected String getHurtSound()
{
return "mod.mob.villager.defaulthurt";
}
/**
* Returns the sound this mob makes on death.
*/
protected String getDeathSound()
{
return "mod.mob.villager.defaultdeath";
}
Don't waste time with AudioMod. It's just another dependency that isn't really needed, and it doesn't make life any simpler. Check out this tutorial here about adding sounds without it, written by my good friend lockNload.
I am making a mod that involves an custom ore. I have created the ore but I need to have it generate in the world. can you post a tutorial on how to do this as an extention of your block tutorial? thank you!
Let me start by saying Thank You. Your's was the upteenth tutorial I found on modding in ModLoader, and the first one that wasn't a video. Since I found it, I have been able to make huge leaps in mod that I am working on.
I did have a quick, and probably pretty stupid, question. You say to keep all of my mods in one mod_ class. Currently, I'm using two (and was planning on using more) so that I can keep items separate from blocks separate from etc. Is this going to cause any long term problems with my mod? I'm introducing a large number of new blocks, items, recipes, and hopefully a custom generated biome, and the sorting and filing part of me wants to keep everything separate and pretty.
Not the most important of questions, to be certain, but I wanted to compliment you on an amazingly written tutorial, and figured I would ponder this little issue at the same time.
I look forward to seeing more of this tutorial, and again Thank you
Thanks . Well, it isn't absolutely compulsory that you keep everything in one, but it has made my life easier. Instead of looking for the right mod_ class that I initiated an instances creation in, I just look in the one that I keep. The mod_ class for the mod in my signature has over 500 lines of code in it. Even mods like IndustrialCraft only keep one mod_ class(as far as I'm aware. I only downloaded it once)
== ERRORS FOUND ==
src/minecraft/net/minecraft/src/mod_example.java:27: cannot find symbol
symbol : class Map
location: class net.minecraft.src.mod_example
public void addRenderer(Map map)
^
1 error
==================
mod_example.java
package net.minecraft.src;
public class mod_example extends BaseMod
{
public static Block Example = new BlockExample(170, 0).setHardness(1.0F).setResistance(6000.0F).setLightValue(1.0F).setBlockName("Blue");
public mod_example()
{
ModLoader.registerBlock(Example);
Example.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/Namehere.png");
ModLoader.addName(Example, "Future Blue");
ModLoader.addRecipe(new ItemStack(Example, 1), new Object[]{ "###", "###", "###", Character.valueOf('#'), Item.redstone});
}
public String Version()
{
return "1.2.5";
}
public void addRenderer(Map map)
{
map.put(EntityFSB.class, new RenderBiped(new ModelBiped(), 0.5F));
}
@Override
public String getVersion() {
// TODO Auto-generated method stub
return null;
}
@Override
public void load() {
ModLoader.registerEntityID(EntityFSB.class, "FSB", ModLoader.getUniqueEntityId());
ModLoader.addSpawn(EntityFSB.class, 12, 14, 18, EnumCreatureType.creature);
}
}
“Computers are incredibly fast, accurate and stupid; humans are incredibly slow, inaccurate and brilliant; together they are powerful beyond imagination."
Mods loaded: 1
ModLoader 1.2.5
Minecraft has crashed!
----------------------
Minecraft has stopped running because it encountered a problem.
--- BEGIN ERROR REPORT 9f578458 --------
Generated 12.04.12 15:11
Minecraft: Minecraft 1.2.5
OS: Windows 7 (amd64) version 6.1
Java: 1.6.0_25, Sun Microsystems Inc.
VM: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Sun Microsystems Inc.
LWJGL: 2.4.2
OpenGL: AMD Radeon HD 6800 Series version 4.2.11399 Compatibility Profile Context, ATI Technologies Inc.
java.lang.IllegalArgumentException
at java.util.zip.ZipInputStream.getUTF8String(Unknown Source)
at java.util.zip.ZipInputStream.getFileName(Unknown Source)
at java.util.zip.ZipInputStream.readLOC(Unknown Source)
at java.util.zip.ZipInputStream.getNextEntry(Unknown Source)
at ModLoader.readFromModFolder(ModLoader.java:1270)
at ModLoader.init(ModLoader.java:887)
at ModLoader.addAllRenderers(ModLoader.java:189)
at ahu.<init>(ahu.java:77)
at ahu.<clinit>(ahu.java:8)
at net.minecraft.client.Minecraft.a(SourceFile:273)
at net.minecraft.client.Minecraft.run(SourceFile:657)
at java.lang.Thread.run(Unknown Source)
--- END ERROR REPORT a9d22e32 ----------
The eclipse mod works well. In the ordinary MC only appears this error.
It could be probably that you have a bad zip archiver software and usually happens when you put it in the mods folder try putting your mod into minecraft.jar
Hi, im creating a mod but im wanting an item that when used in a crafting recipe is not used but is just damaged, Is this possible and if so please could you help me.
Hi, im creating a mod but im wanting an item that when used in a crafting recipe is not used but is just damaged, Is this possible and if so please could you help me.
package net.minecraft.src;
import java.util.Random;
public class Itempokedex extends Item
{
public Itempokedex(int par1)
{
super(par1);
maxStackSize = 16;
}
/**
* Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer
*/
public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
public ItemStack onItemRightClick(Modloader.openGUI(par3EntityPlayer, new GuiPokedex()));
{
}
it says the Modloader.openGUI method cant resolve to a type.
and where it says "new GUIPokedex" it says theres a syntax error
also the parameterless constructor for GUIPokedex says it need like a minion close parentheses for finsh declaration.
plz help
src\minecraft\net\minecraft\src\AmberBlock.java:9: error: cannot find symbol
super(i, j, MaterialStone);
----------^
src\minecraft\net\minecraft\src\mod_Amber.java:5: error cannot find symbol
.setResistance(6F)
--------------^
that are my errors
In Amber Block you need to replace:
super(i, j, MaterialStone);
With
super(i, j, Material.rock);
This is because your telling the game to look in the class "Material" for "rock"
( by the way Stone isn't a material)
And in mod_Amber you don't really need .setResistance unless your making a non-contact block.
if it still give you an error try .setResistance(1.0F) otherwise check that your block file's name is actually "BlockAmberBlock" not just AmberBlock.
If I helped Give me an extra REP point!! ----------------------------------------------------------------v
This is because your telling the game to look in the class "Material" for "rock"
( by the way Stone isn't a material)
And in mod_Amber you don't really need .setResistance unless your making a non-contact block.
if it still give you an error try .setResistance(1.0F) otherwise check that your block file's name is actually "BlockAmberBlock" not just AmberBlock.
If I helped Give me an extra REP point!! ----------------------------------------------------------------v
OH ok, thanks i'll try it, but I dont know how to give extra rep XD and you can help me with an OreBlock? for my mod?
To give someone a rep point, follow the instructions in my signature, but for him. And by OreBlock, do you mean a randomly generated natural block?
Im trying to do a new Mod, ore,block,tools and armor, but Im new in this, and I understand some codes, but I still having some problems =/ and thanks for the info about rep
Im trying to do a new Mod, ore,block,tools and armor, but Im new in this, and I understand some codes, but I still having some problems =/ and thanks for the info about rep
He talks about ores and tools in very easy to understand videos. However, you cannot add new armor to the game without modifying base classes, so I would discourage venturing down that path.
BTW, it would be very nice if you would follow the instructions in my signature. :-) Hint, hint, nudge, nudge, wink, wink.
never mind .. i fount out i had to use modloader in order to get my own TileEntity and my own GuiName and my own Container
to work they were needed to register by modloader
i got my own furnace now
now i need to know how to remove tha furnace recipes ..and how to make it burn with coal in it producing Heat ..
got anny sugestions on were i need to look for that ??
My redstone+ mod is getting pretty complicated right now, so it's hard for me to fix the errors. I've decided to call for help.
This is my source:
mod_RedstonePlus.java
package net.minecraft.src;
import java.util.Map;
public class mod_RedstonePlus extends BaseMod
{
public static final Block RedstoneBlock = new BlockRedstoneBlock(160, 0).setBlockName("Redstone Block").setHardness(5F).setResistance(10F);
public static final Block RedstoneStairs = new BlockRedstoneStairs(161, 0).setBlockName("Redstone Stairs").setHardness(5F).setResistance(10F);
public static final Block RedstoneSlab = new BlockRedstoneSlab(162, 0).setBlockName("Redstone Stairs").setHardness(5F).setResistance(10F);
public static final Block RedstoneBrick = new BlockRedstoneBrick(163, 0).setBlockName("Redstone Bricks").setHardness(10F).setResistance(20F);
public static final Item RedstoneDrink = new ItemFood(5001, 5, 1F, false).setItemName("Redstone Drink");
public static final Block DustedStone = new BlockDustedStone(165, 0).setBlockName("Dusted Stone").setHardness(3F).setResistance(6F);
public static final Block RedSTONE = new BlockStoneRed(166, 0).setBlockName("redSTONE").setHardness(6F).setResistance(12F);
public static final Block RedstoneGlass = new BlockRedstoneGlass(164, 0).setBlockName("Redstone Glass").setHardness(2F).setResistance(4F);
public static final Block RedSTONEStairs = new BlockStoneRedStairs(167, 0).setBlockName("RedSTONE Stairs").setHardness(6F).setResistance(12F);
public static final Block StoneRedSlab = new BlockStoneRedSlab(168, 0).setBlockName("RedSTONE Stairs").setHardness(6F).setResistance(12F);
public static final Block StoneRedBrick = new BlockStoneRedBrick(169, 0).setBlockName("RedSTONE Brick").setHardness(12F).setResistance(24F);
public static final Block StoneRedCobble = new BlockStoneRedCobble(170, 0).setBlockName("RedSTONE Cobble").setHardness(5F).setResistance(10F);
public static final Block StoneRedCobbleStairs = new BlockStoneRedCobbleStairs(171, 0).setBlockName("RedSTONE Cobble Stairs").setHardness(5F).setResistance(10F);
public static final Block StoneRedCobbleSlab = new BlockStoneRedCobbleSlab(172, 0).setBlockName("RedSTONE Cobble Slab");
public static final Item RedstonePickaxe = new ItemPickaxe(5002,EnumToolMaterial.REDSTONE).setItemName("RedstonePickaxe");
public static final Item RedstoneAxe = new ItemAxe(5003,EnumToolMaterial.REDSTONE).setItemName("RedstoneAxe");
public static final Item RedstoneSpade = new ItemSpade(5004,EnumToolMaterial.REDSTONE).setItemName("RedstoneSpade");
public static final Item RedstoneHoe = new ItemHoe(5005,EnumToolMaterial.REDSTONE).setItemName("RedstoneHoe");
public static final Item RedstoneSword = new ItemSword(5006,EnumToolMaterial.REDSTONE).setItemName("RedstoneSword");
public static final Item StoneRedPickaxe = new ItemPickaxe(5007,EnumToolMaterial.STONERED).setItemName("RedSTONE Pickaxe");
public static final Item StoneRedAxe = new ItemAxe(5008,EnumToolMaterial.STONERED).setItemName("RedSTONE Axe");
public static final Item StoneRedSpade = new ItemSpade(5009,EnumToolMaterial.STONERED).setItemName("RedSTONE Spade");
public static final Item StoneRedHoe = new ItemHoe(5010,EnumToolMaterial.STONERED).setItemName("RedSTONE Hoe");
public static final Item StoneRedSword = new ItemSword(5011,EnumToolMaterial.STONERED).setItemName("RedSTONE Sword");
public static final Item RedstoneDragonEgg = new ItemFood(5012, 10, 1F, false).setItemName("Redstone Dragon Egg");
public static final Item Battery = new ItemBattery(5013).setItemName("Battery");
public static final Item DrillHandle = new ItemDrillHandle(5014).setItemName("Drill Handle");
public static final Item DrillFrame = new ItemDrillFrame(5015).setItemName("Drill Frame ");
public static final Item DrillHead = new ItemDrillHead(5016).setItemName("Drill Head");
public static final Item ChainsawHandle = new ItemChainsawHandle(5017).setItemName("Chainsaw Handle");
public static final Item ChainsawFrame = new ItemChainsawFrame(5018).setItemName("Chainsaw Frame");
public static final Item ChainsawBlade = new ItemChainsawBlade(5019).setItemName("Chainsaw Blade ");
public static final Item RedstoneIngot = new ItemRedstoneIngot(5020).setItemName("Redstone Ingot");
public static final Item ClawControl = new ItemClawControl(5021).setItemName("Claw Control");
public static final Item ClawSticks = new ItemClawSticks(5022).setItemName("Claw Sticks");
public static final Item ClawHead = new ItemClawHead(5023).setItemName("Claw Head");
public static final Item IonBladeFrame = new ItemIonBladeFrame(5024).setItemName("Ion Blade Frame");
public static final Item IonCell = new ItemIonCell(5025).setItemName("Ion Cell");
public static final Item IonBattery = new ItemIonBattery(5026).setItemName("Ion Battery");
public static final Item IonCore = new ItemIonCore(5027).setItemName("Ion Core");
public static final Item WhackerHandle = new ItemWhackerHandle(5028).setItemName("Wheat Whacker Handle");
public static final Item WhackerBlade = new ItemWhackerBlade(5029).setItemName("Wheat Whacker Blade");
public static final Item WhackerFrame = new ItemWhackerFrame(5030).setItemName("Wheat Whacker Frame");
public static final Item RedstoneWheatWhacker = new ItemHoe(5031, EnumToolMaterial.ADVREDSTONE).setItemName("Redstone Wheat Whacker");
public static final Item RedstoneDiggingClaw = new ItemSpade(5032, EnumToolMaterial.ADVREDSTONE).setItemName("Redstone Digging Claw");
public static final Item RedstoneChainsaw = new ItemAxe(5033, EnumToolMaterial.ADVREDSTONE).setItemName("Redstone Chainsaw");
public static final Item RedstoneDrill = new ItemPickaxe(5034, EnumToolMaterial.ADVREDSTONE).setItemName("Redstone Drill");
public static final Item RedstoneIonBlade = new ItemSword(5035, EnumToolMaterial.ADVREDSTONE).setItemName("Redstone IonBlade ");
public void load()
{
RedstoneBlock.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/RedstoneBlock.png");
RedstoneStairs.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/RedstoneStairs.png");
RedstoneSlab.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/RedstoneSlab.png");
RedstoneBrick.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/RedstoneBrick.png");
RedstoneDrink.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneDrink.png");
DustedStone.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/DustedStone.png");
RedSTONE.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/RedSTONE.png");
RedstoneGlass.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/RedstoneGlass.png");
RedSTONEStairs.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/StoneRedStairs.png");
StoneRedSlab.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/StoneRedSlab.png");
StoneRedBrick.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/StoneRedBrick.png");
StoneRedCobble.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/StoneRedCobble.png");
StoneRedCobbleStairs.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/StoneRedCobbleStairs.png");
StoneRedCobbleSlab.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/RedstonePlus/StoneRedCobbleSlab.png");
RedstonePickaxe.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstonePickaxe.png");
RedstoneAxe.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneAxe.png");
RedstoneSpade.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneShovel.png");
RedstoneHoe.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneHoe.png");
RedstoneSword.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneSword.png");
StoneRedPickaxe.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/StoneRedPickaxe.png");
StoneRedAxe.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/StoneRedAxe.png");
StoneRedSpade.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/StoneRedShovel.png");
StoneRedHoe.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/StoneRedHoe.png");
StoneRedSword.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/StoneRedSword.png");
RedstoneDragonEgg.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneDragonEgg.png");
Battery.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/Battery.png");
DrillHandle.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/DrillHandle.png");
DrillFrame.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneDrillFrame.png");
DrillHead.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneDrillHead.png");
RedstoneDrill.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneDrill.png");
ChainsawHandle.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/ChainsawHandle.png");
ChainsawFrame.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneChainsawFrame.png");
ChainsawBlade.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneChainsawBlade.png");
RedstoneChainsaw.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneChainsaw.png");
RedstoneIngot.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneIngot.png");
ClawControl.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/ClawControlPanel.png");
ClawSticks.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/ClawSticks.png");
ClawHead.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/ClawHead.png");
RedstoneDiggingClaw.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneDiggingClaw.png");
IonBladeFrame.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/IonBladeFrame.png ");
IonCell.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/IonCell.png");
IonBattery.iconIndex = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/IonBattery.png");
RedstoneIonbBlade = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/Ionblade.png");
IonCore = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/IonCore.png");
WhackerBlade = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/WheatWhackerBlade.png ");
WhackerFrame = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/WheatWhackerFrame.png");
WhackerHandle = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/WheatWhackerHandle.png");
RedstoneWheatWhacker = ModLoader.addOverride("/gui/items.png", "/RedstonePlus/RedstoneWheatWhacker.png");
ModLoader.registerBlock(RedstoneBlock);
ModLoader.registerBlock(RedstoneStairs);
ModLoader.registerBlock(RedstoneSlab);
ModLoader.registerBlock(RedstoneBrick);
ModLoader.registerBlock(DustedStone);
ModLoader.registerBlock(RedSTONE);
ModLoader.registerBlock(RedstoneGlass);
ModLoader.registerBlock(RedSTONEStairs);
ModLoader.registerBlock(StoneRedSlab);
ModLoader.registerBlock(StoneRedBrick);
ModLoader.registerBlock(StoneRedCobble);
ModLoader.registerBlock(StoneRedCobbleStairs);
ModLoader.registerBlock(StoneRedCobbleSlab);
ModLoader.addName(RedstoneBlock, "Block of Redstone");
ModLoader.addName(RedstoneStairs, "Redstone Stairs");
ModLoader.addName(RedstoneSlab, "Redstone Slab");
ModLoader.addName(RedstoneBrick, "Redstone Bricks");
ModLoader.addName(RedstoneDrink, "Redstone Drink");
ModLoader.addName(DustedStone, "Dusted Stone");
ModLoader.addName(RedSTONE, "RedSTONE");
ModLoader.addName(RedstoneGlass, "Redstone Glass");
ModLoader.addName(RedSTONEStairs, "RedSTONE Stairs");
ModLoader.addName(StoneRedSlab, "RedSTONE Slab");
ModLoader.addName(StoneRedBrick, "RedSTONE Bricks");
ModLoader.addName(StoneRedCobble, "RedSTONE Cobble");
ModLoader.addName(StoneRedCobbleStairs, "RedSTONE Cobble Stairs");
ModLoader.addName(StoneRedCobbleSlab, "RedSTONE Cobble Slab");
ModLoader.addName(RedstonePickaxe, "Redstone Pickaxe");
ModLoader.addName(RedstoneAxe, "Redstone Axe");
ModLoader.addName(RedstoneSpade, "Redstone Shovel");
ModLoader.addName(RedstoneHoe, "Redstone Hoe");
ModLoader.addName(RedstoneSword, "Redstone Sword");
ModLoader.addName(StoneRedPickaxe, "RedSTONE Pickaxe");
ModLoader.addName(StoneRedAxe, "RedSTONE Axe");
ModLoader.addName(StoneRedSpade, "RedSTONE Shovel");
ModLoader.addName(StoneRedHoe, "RedSTONE Hoe");
ModLoader.addName(StoneRedSword, "RedSTONE Sword");
ModLoader.addName(RedstoneDragonEgg, "Redstone Dragon Egg");
ModLoader.addName(Battery, "Redstone Battery");
ModLoader.addName(DrillHandle, "Drill Handle");
ModLoader.addName(DrillFrame, "Redstone Drill Frame");
ModLoader.addName(DrillHead, "Redstone Drill Head");
ModLoader.addName(RedstoneDrill, "Redstone Drill");
ModLoader.addName(ChainsawHandle, "Chainsaw Handle");
ModLoader.addName(ChainsawFrame, "Redstone Chainsaw Frame");
ModLoader.addName(ChainsawBlade, "Redstone Chainsaw Blade");
ModLoader.addName(RedstoneChainsaw, "Redstone Chainsaw");
ModLoader.addName(RedstoneIngot, "Redstone Ingot");
ModLoader.addName(ClawControl, "Digging Claw Control Panel");
ModLoader.addName(ClawSticks, "Digging Claw Sticks");
ModLoader.addName(ClawHead, "Digging Claw Head");
ModLoader.addName(RedstoneDiggingClaw, "Redstone Digging Claw");
ModLoader.addName(IonBladeFrame, "Ion Blade Frame");
ModLoader.addName(IonCell, "Ion Cell");
ModLoader.addName(IonBattery, "Ion Battery");
ModLoader.addName(RedstoneIonBlade, "Redstone Ion Blade");
ModLoader.addName(IonCore, "Ion Core");
ModLoader.addName(WhackerHandle, "Wheat Whacker Handle ");
ModLoader.addName(WhackerFrame, "Wheat Whacker Frame");
ModLoader.addName(WhackerBlade, "Wheat Whacker Blade");
ModLoader.addName(RedstoneWheatWhacker, "Redstone Wheat Whacker");
ModLoader.addRecipe(new ItemStack(RedstoneBlock, 1), new Object [] {"###","###","###", Character.valueOf('#'), Item.redstone});
ModLoader.addRecipe(new ItemStack(Item.redstone, 9), new Object [] {"# ", Character.valueOf('#'), RedstoneBlock});
ModLoader.addRecipe(new ItemStack(RedstoneStairs, 3), new Object [] {"# ", "## ", "###", Character.valueOf('#'), RedstoneBlock});
ModLoader.addRecipe(new ItemStack(RedstoneBlock, 2), new Object [] {"# ", Character.valueOf('#'), RedstoneStairs});
ModLoader.addRecipe(new ItemStack(RedstoneSlab, 6), new Object [] {"###", Character.valueOf('#'), RedstoneBlock});
ModLoader.addRecipe(new ItemStack(RedstoneBlock, 1), new Object [] {"# ", "# ", Character.valueOf('#'), RedstoneSlab});
ModLoader.addRecipe(new ItemStack(RedstoneBrick, 1), new Object [] {"## ", "## ", Character.valueOf('#'), RedstoneBlock});
ModLoader.addRecipe(new ItemStack(RedstoneBlock, 4), new Object [] {"# ", Character.valueOf('#'), RedstoneBrick});
ModLoader.addRecipe(new ItemStack(RedstoneDrink, 1), new Object [] {" # ", " $ ", Character.valueOf('#'), Item.redstone, Character.valueOf('$'), Item.glassBottle});
ModLoader.addRecipe(new ItemStack(DustedStone, 1), new Object [] {"###", "#$#", "###", Character.valueOf('#'), Item.redstone, Character.valueOf('$'), Block.stone});
ModLoader.addRecipe(new ItemStack(RedSTONEStairs, 3), new Object [] {"# ", "## ", "###", Character.valueOf('#'), RedSTONE});
ModLoader.addRecipe(new ItemStack(RedSTONE, 2), new Object [] {"# ", Character.valueOf('#'), RedSTONEStairs});
ModLoader.addRecipe(new ItemStack(StoneRedSlab, 6), new Object [] {"###", Character.valueOf('#'), RedSTONE});
ModLoader.addRecipe(new ItemStack(RedSTONE, 1), new Object [] {"# ", "# ", Character.valueOf('#'), StoneRedSlab});
ModLoader.addRecipe(new ItemStack(StoneRedBrick, 1), new Object [] {"## ", "## ", Character.valueOf('#'), RedSTONE});
ModLoader.addRecipe(new ItemStack(RedSTONE, 4), new Object [] {"# ", Character.valueOf('#'), StoneRedBrick});
ModLoader.addRecipe(new ItemStack(StoneRedCobbleStairs, 3), new Object [] {"# ", "## ", "###", Character.valueOf('#'), StoneRedCobble});
ModLoader.addRecipe(new ItemStack(StoneRedCobble, 2), new Object [] {"# ", Character.valueOf('#'), StoneRedCobbleStairs});
ModLoader.addRecipe(new ItemStack(StoneRedCobbleSlab, 6), new Object [] {"###", Character.valueOf('#'), StoneRedCobble});
ModLoader.addRecipe(new ItemStack(StoneRedCobble, 1), new Object [] {"# ", "# ", Character.valueOf('#'), StoneRedCobbleSlab});
ModLoader.addRecipe(new ItemStack(RedstonePickaxe, 1), new Object [] {"###", " @ ", " @ ", Character.valueOf('#'), RedstoneIngot, Character.valueOf('@'), Item.stick});
ModLoader.addRecipe(new ItemStack(RedstoneAxe, 1), new Object [] { "## ", "#@ ", " @ ", Character.valueOf('#'), RedstoneIngot, Character.valueOf('@'), Item.stick});
ModLoader.addRecipe(new ItemStack(RedstoneSpade, 1), new Object [] {" # ", " @ ", " @ ", Character.valueOf('#'), RedstoneIngot, Character.valueOf('@'), Item.stick});
ModLoader.addRecipe(new ItemStack(RedstoneHoe, 1), new Object [] {"## ", " @ ", " @ ", Character.valueOf('#'), RedstoneIngot, Character.valueOf('@'), Item.stick});
ModLoader.addRecipe(new ItemStack(RedstoneSword, 1), new Object [] {" # ", " # ", " @ ", Character.valueOf('#'), RedstoneIngot, Character.valueOf('@'), Item.stick});
ModLoader.addRecipe(new ItemStack(StoneRedPickaxe, 1), new Object [] {"###", " @ ", " @ ", Character.valueOf('#'), RedSTONE, Character.valueOf('@'), Item.stick});
ModLoader.addRecipe(new ItemStack(StoneRedAxe, 1), new Object [] { "## ", "#@ ", " @ ", Character.valueOf('#'), RedSTONE, Character.valueOf('@'), Item.stick});
ModLoader.addRecipe(new ItemStack(StoneRedSpade, 1), new Object [] {" # ", " @ ", " @ ", Character.valueOf('#'), RedSTONE, Character.valueOf('@'), Item.stick});
ModLoader.addRecipe(new ItemStack(StoneRedHoe, 1), new Object [] {"## ", " @ ", " @ ", Character.valueOf('#'), RedSTONE, Character.valueOf('@'), Item.stick});
ModLoader.addRecipe(new ItemStack(StoneRedSword, 1), new Object [] {" # ", " # ", " @ ", Character.valueOf('#'), RedSTONE, Character.valueOf('@'), Item.stick});
ModLoader.addRecipe(new ItemStack(Battery, 1), new Object [] {" # ", "#@#", "###", Character.valueOf('#'), Item.ingotIron, Character.valueOf('@'), Item.redstone});
ModLoader.addRecipe(new ItemStack(DrillHandle, 1), new Object [] {" #", " # ", "# @", Character.valueOf('#'), Item.leather, Character.valueOf('@'), Item.ingotIron});
ModLoader.addRecipe(new ItemStack(DrillFrame, 1), new Object [] {"###", "#@#", "#$#", Character.valueOf('#'), RedstoneIngot, Character.valueOf('@'), Battery, Character.valueOf('$'), Item.redstone});
ModLoader.addRecipe(new ItemStack(DrillHead, 1), new Object [] {"@ #", " ##", "###", Character.valueOf('@'), Item.ingotIron, Character.valueOf('#'), RedstoneIngot});
ModLoader.addRecipe(new ItemStack(RedstoneDrill, 1), new Object [] {"@", "!", "#", Character.valueOf('@'), DrillHandle, Character.valueOf('!'), DrillFrame, Character.valueOf('#'), DrillHead});
ModLoader.addRecipe(new ItemStack(ChainsawHandle, 1), new Object [] {"#@ ", "# @", "#@ ", Character.valueOf('#'), Item.leather, Character.valueOf('@'), Item.ingotIron});
ModLoader.addRecipe(new ItemStack(ChainsawFrame, 1), new Object [] {"###", "#@!", "###", Character.valueOf('#'), RedstoneIngot, Character.valueOf('@'), Battery, Character.valueOf('!'), Item.redstone});
ModLoader.addRecipe(new ItemStack(ChainsawBlade, 1), new Object [] {"@@ ", "##@", "@@ ", Character.valueOf('#'), RedstoneIngot, Character.valueOf('@'), Item.redstone});
ModLoader.addRecipe(new ItemStack(RedstoneChainsaw, 1), new Object [] {"[email protected]#", Character.valueOf('!'), ChainsawHandle, Character.valueOf('@'), ChainsawFrame, Character.valueOf('#'), ChainsawBlade});
ModLoader.addRecipe(new ItemStack(ClawControl, 1), new Object [] {"###", "#@#", "#!#", Character.valueOf('#'), RedstoneIngot, Character.valueOf('@'), Block.lever, Character.valueOf('!'), Battery});
ModLoader.addRecipe(new ItemStack(ClawSticks, 1), new Object [] {"# ", " # ", " #", Character.valueOf('#'), RedstoneIngot});
ModLoader.addRecipe(new ItemStack(ClawHead, 1), new Object [] {"# ", "# #", "###", Character.valueOf('#'), RedstoneIngot});
ModLoader.addRecipe(new ItemStack(RedstoneDiggingClaw, 1), new Object [] {"@ ", " ! ", " #", Character.valueOf('@'), ClawControl, Character.valueOf('!'), ClawSticks, Character.valueOf('#'), ClawHead});
ModLoader.addRecipe(new ItemStack(IonCell, 1), new Object [] {" # ","#@#", " # ", Character.valueOf('#'), Item.ingotIron, Character.valueOf('@'), IonCore});
ModLoader.addRecipe(new ItemStack(IonBattery, 1), new Object [] {"#", "@", Character.valueOf('#'), IonCell, Character.valueOf('@'), Battery});
ModLoader.addRecipe(new ItemStack(IonBladeFrame, 1), new Object [] {"#", "@", "#", Character.valueOf('#'), Item.ingotIron, Character.valueOf('@'), IonCore});
ModLoader.addRecipe(new ItemStack(RedstoneIonBlade, 1), new Object [] {"# ", " @ ", " ! ", Character.valueOf('#'), IonCell, Character.valueOf('@'), IonBattery, Character.valueOf('!'), IonBladeFrame});
ModLoader.addRecipe(new ItemStack(WhackerHandle, 1), new Object [] {"#@@", Character.valueOf('#'), Item.leather, Character.valueOf('@'), Item.ingotIron});
ModLoader.addRecipe(new ItemStack(WhackerFrame, 1), new Object [] {"# ", " @ ", " #", Character.valueOf('#'), RedstoneIngot, Character.valueOf('@'), Battery});
ModLoader.addRecipe(new ItemStack(WhackerBlade, 1), new Object [] {" ##", "# ", Character.valueOf('#'), RedstoneIngot});
ModLoader.addRecipe(new ItemStack(RedstoneWheatWhacker, 1), new Object [] {"[email protected]#", Character.valueOf('!'), WhackerHandle, Character.valueOf('@'), WhackerFrame, Character.valueOf('#'), WhackerBlade});
ModLoader.addSmelting(DustedStone.blockID, new ItemStack(RedSTONE, 1));
ModLoader.addSmelting(RedstoneBlock.blockID, new ItemStack(RedstoneGlass, 1));
ModLoader.addSmelting(StoneRedCobble.blockID, new ItemStack(RedSTONE, 1));
ModLoader.addSmelting(Item.redstone.shiftedIndex, new ItemStack(RedstoneIngot, 1));
ModLoader.registerEntityID(EntityRedstoneDragon.class, "Redstone Dragon", ModLoader.getUniqueEntityId());
ModLoader.registerEntityID(EntityRedstoneIonMonster.class, "Redstone Ion Monster", ModLoader.getUniqueEntityId());
ModLoader.addSpawn(EntityRedstoneDragon.class, 1, 1, 3, EnumCreatureType.creature);
ModLoader.addSpawn(EntityRedstoneIonMonster.class, 3, 3, 5, EnumCreatureType.creature);
}
public void addRenderer(Map map)
{
map.put(EntityRedstoneDragon.class, new RenderRedstoneDragon(new ModelRedstoneDragon(), 0.5F));
map.put(EntityRedstoneIonMonster.class, new RenderRedstoneIonMonster(new ModelRedstoneIonMonster(), 0.5F));
}
public String getVersion()
{
return "1.2.5";
}
}
The crash report:
== MCP 6.2 (data: 6.2, client: 1.2.5, server: 1.2.5) ==
# found jad, jad patches, ff patches, osx patches, srgs, name csvs, doc csvs, pa
ram csvs, astyle, astyle config
== Recompiling client ==
> Cleaning bin
> Recompiling
'"C:\Program Files\Java\jdk1.7.0_01\bin\javac" -Xlint:-options -deprecation -g -
source 1.6 -target 1....' failed : 1
== ERRORS FOUND ==
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:100: error: cannot find sy
mbol
RedstoneIonbBlade = ModLoader.addOverride("/gui/items.png", "/Re
dstonePlus/Ionblade.png");
^
symbol: variable RedstoneIonbBlade
location: class mod_RedstonePlus
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:101: error: cannot assign
a value to final variable IonCore
IonCore = ModLoader.addOverride("/gui/items.png", "/RedstonePlus
/IonCore.png");
^
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:101: error: incompatible t
ypes
IonCore = ModLoader.addOverride("/gui/items.png", "/RedstonePlus
/IonCore.png");
^
required: Item
found: int
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:102: error: cannot assign
a value to final variable WhackerBlade
WhackerBlade = ModLoader.addOverride("/gui/items.png", "/Redston
ePlus/WheatWhackerBlade.png ");
^
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:102: error: incompatible t
ypes
WhackerBlade = ModLoader.addOverride("/gui/items.png", "/Redston
ePlus/WheatWhackerBlade.png ");
^
required: Item
found: int
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:103: error: cannot assign
a value to final variable WhackerFrame
WhackerFrame = ModLoader.addOverride("/gui/items.png", "/Redston
ePlus/WheatWhackerFrame.png");
^
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:103: error: incompatible t
ypes
WhackerFrame = ModLoader.addOverride("/gui/items.png", "/Redston
ePlus/WheatWhackerFrame.png");
^
required: Item
found: int
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:104: error: cannot assign
a value to final variable WhackerHandle
WhackerHandle = ModLoader.addOverride("/gui/items.png", "/Redsto
nePlus/WheatWhackerHandle.png");
^
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:104: error: incompatible t
ypes
WhackerHandle = ModLoader.addOverride("/gui/items.png", "/Redsto
nePlus/WheatWhackerHandle.png");
^
required: Item
found: int
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:105: error: cannot assign
a value to final variable RedstoneWheatWhacker
RedstoneWheatWhacker = ModLoader.addOverride("/gui/items.png", "
/RedstonePlus/RedstoneWheatWhacker.png");
^
src\minecraft\net\minecraft\src\mod_RedstonePlus.java:105: error: incompatible t
ypes
RedstoneWheatWhacker = ModLoader.addOverride("/gui/items.png", "
/RedstonePlus/RedstoneWheatWhacker.png");
^
required: Item
found: int
11 errors
==================
!! Can not find server sources, try decompiling !!
It says that all the errors are in the mod_RedstonePlus file, so that's the only source I've given here. If you still need any code to fix it I'll send them.
package net.minecraft.src;
import java.util.Random;
public class Itempokedex extends Item
{
public Itempokedex(int par1)
{
super(par1);
maxStackSize = 16;
}
/**
* Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer
*/
public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
public ItemStack onItemRightClick(Modloader.openGUI(par3EntityPlayer, new GuiPokedex()));
{
}
it says the Modloader.openGUI method cant resolve to a type.
and where it says "new GUIPokedex" it says theres a syntax error
also the parameterless constructor for GUIPokedex says it need like a minion close parentheses for finsh declaration.
plz help
Hi, im creating a mod but im wanting an item that when used in a crafting recipe is not used but is just damaged, Is this possible and if so please could you help me.
“Computers are incredibly fast, accurate and stupid; humans are incredibly slow, inaccurate and brilliant; together they are powerful beyond imagination."
Thank you! It worked
/** * Returns the sound this mob makes while it's alive. */ protected String getLivingSound() { return "mob.villager.default"; } /** * Returns the sound this mob makes when it is hurt. */ protected String getHurtSound() { return "mod.mob.villager.defaulthurt"; } /** * Returns the sound this mob makes on death. */ protected String getDeathSound() { return "mod.mob.villager.defaultdeath"; }I did have a quick, and probably pretty stupid, question. You say to keep all of my mods in one mod_ class. Currently, I'm using two (and was planning on using more) so that I can keep items separate from blocks separate from etc. Is this going to cause any long term problems with my mod? I'm introducing a large number of new blocks, items, recipes, and hopefully a custom generated biome, and the sorting and filing part of me wants to keep everything separate and pretty.
Not the most important of questions, to be certain, but I wanted to compliment you on an amazingly written tutorial, and figured I would ponder this little issue at the same time.
I look forward to seeing more of this tutorial, and again Thank you
Error
== ERRORS FOUND == src/minecraft/net/minecraft/src/mod_example.java:27: cannot find symbol symbol : class Map location: class net.minecraft.src.mod_example public void addRenderer(Map map) ^ 1 error ==================mod_example.java
package net.minecraft.src; public class mod_example extends BaseMod { public static Block Example = new BlockExample(170, 0).setHardness(1.0F).setResistance(6000.0F).setLightValue(1.0F).setBlockName("Blue"); public mod_example() { ModLoader.registerBlock(Example); Example.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/Namehere.png"); ModLoader.addName(Example, "Future Blue"); ModLoader.addRecipe(new ItemStack(Example, 1), new Object[]{ "###", "###", "###", Character.valueOf('#'), Item.redstone}); } public String Version() { return "1.2.5"; } public void addRenderer(Map map) { map.put(EntityFSB.class, new RenderBiped(new ModelBiped(), 0.5F)); } @Override public String getVersion() { // TODO Auto-generated method stub return null; } @Override public void load() { ModLoader.registerEntityID(EntityFSB.class, "FSB", ModLoader.getUniqueEntityId()); ModLoader.addSpawn(EntityFSB.class, 12, 14, 18, EnumCreatureType.creature); } }EntityFSB.java
package net.minecraft.src; import java.util.Random; public class EntityFSB extends EntityCreature { public EntityFSB(World world) { super(world); texture = "/FSB.png"; moveSpeed = 0.5F; } public int getMaxHealth() { return 20; } protected String getLivingSound() { return "mob.villager.default"; } protected String getHurtSound() { return "mob.villager.defaulthurt"; } protected String getDeathSound() { return "mob.villager.defaultdeath"; } protected int getDropItemId() { return Item.ingotIron.shiftedIndex; } protected boolean canDespawn() { return false; } }Don't waste time with AudioMod. It's just another dependency that isn't really needed, and it doesn't make life any simpler. Check out this tutorial here about adding sounds without it, written by my good friend lockNload.
It is on the list to do.
Thanks
You need to import Map.
Also, move everything from your second load() method to the first one and remove the second.
together they are powerful beyond imagination."
It could be probably that you have a bad zip archiver software and usually happens when you put it in the mods folder try putting your mod into minecraft.jar
package net.minecraft.src; import java.util.Random; public class Itempokedex extends Item { public Itempokedex(int par1) { super(par1); maxStackSize = 16; } /** * Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer */ public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) public ItemStack onItemRightClick(Modloader.openGUI(par3EntityPlayer, new GuiPokedex())); { }and where it says "new GUIPokedex" it says theres a syntax error
also the parameterless constructor for GUIPokedex says it need like a minion close parentheses for finsh declaration.
plz help
package net.minecraft.src; public class mod_Amber extends BaseMod { public static final Block AmberBlock = new BlockAmberBlock(188, 0).setBlockName("AmberBlock").setHardness(5F).setResistance(5F).setLightValue(3F); public void load() { AmberBlock.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/Amber/BlockAmber.png"); ModLoader.registerBlock(AmberBlock); ModLoader.addName(AmberBlock, "Amber Block"); ModLoader.addRecipe(new ItemStack(AmberBlock, 1), new Object [] {"#", Character.valueOf('#'), Block.dirt}); } public String getVersion() { return "1.2.5"; } }THANKS
-
View User Profile
-
View Posts
-
Send Message
Curse PremiumWhat are your errors? Please post them.
src\minecraft\net\minecraft\src\AmberBlock.java:9: error: cannot find symbol
super(i, j, MaterialStone);
----------^
src\minecraft\net\minecraft\src\mod_Amber.java:5: error cannot find symbol
.setResistance(6F)
--------------^
that are my errors
In Amber Block you need to replace:
With
This is because your telling the game to look in the class "Material" for "rock"
( by the way Stone isn't a material)
And in mod_Amber you don't really need .setResistance unless your making a non-contact block.
if it still give you an error try .setResistance(1.0F) otherwise check that your block file's name is actually "BlockAmberBlock" not just AmberBlock.
If I helped Give me an extra REP point!! ----------------------------------------------------------------v
OH ok, thanks i'll try it, but I dont know how to give extra rep XD and you can help me with an OreBlock? for my mod?
thanks
To give someone a rep point, follow the instructions in my signature, but for him. And by OreBlock, do you mean a randomly generated natural block?
Im trying to do a new Mod, ore,block,tools and armor, but Im new in this, and I understand some codes, but I still having some problems =/ and thanks for the info about rep
Go to this page: http://www.minecraftforum.net/topic/1067901-modloader-with-mc-121-to-125-how-to-make-a-mod-tutorials/page__fromsearch__1
He talks about ores and tools in very easy to understand videos. However, you cannot add new armor to the game without modifying base classes, so I would discourage venturing down that path.
BTW, it would be very nice if you would follow the instructions in my signature. :-) Hint, hint, nudge, nudge, wink, wink.
Mod Development.
together they are powerful beyond imagination."
and I'm really looking forward for the crop tutorial