Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

SackCastellon

Members
  • Joined

  • Last visited

Everything posted by SackCastellon

  1. As, the title says, i want to know how to display a chat message on enter in a world. Thanks for helping. SOLUTION: Main.class package SackCastellon.core; import cpw.mods.fml.common.FMLCommonHandler; import SackCastellon.core.event.SkcEvent; import SackCastellon.core.proxy.CommonProxy; import SackCastellon.core.reference.Reference; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; 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; @Mod(modid=Reference.ID, name=Reference.NAME, version=Reference.VERSION, dependencies=Reference.DEPENDENCIES) public class SKCCore { @Instance(Reference.ID) public static SKCCore instance; @SidedProxy(clientSide=Reference.CLPROXY, serverSide=Reference.CMPROXY) public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { FMLCommonHandler.instance().bus().register(new SkcEvent()); System.out.println("Event Handler Initialized"); } @EventHandler public void load(FMLInitializationEvent event) {} @EventHandler public void postInit(FMLPostInitializationEvent event) {} } Event.class package SackCastellon.core.event; import net.minecraft.util.ChatComponentText; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.gameevent.PlayerEvent.PlayerLoggedInEvent; public class SkcEvent { @SubscribeEvent public void onPlayerLogin(PlayerEvent.PlayerLoggedInEvent event) { event.player.func_146105_b(new ChatComponentText(event.player.getDisplayName() + " is testing chat messages")); } }
  2. Yes, i also noticed it Ok Yes, It is quite easy, just create a file at: Your-Forge-Folder\src\main\resources\assets\Your-Mod-ID\lang\ named en_US.lang (for English USA) And type the unlocalized name of your item. Eg: item.Stirrup.name=Stirrup item.Tag.name=Tag item.Knot.name=Knot item.Rope.name=Rope
  3. First: I'm using language files (.lang) instead LanguageRegistry method. And the names load correctly Second: I just noticed i have no languages!!! P.S.: I'm using forge 1.7.2-10.12.0.976
  4. hah, you helping me, I helping you. =) But I have already tried this way to register. Is it work for you? maybe I put my textures in wrong place? Where did you placed textures? The textures go here: Your-Forge-Folder\src\main\resources\assets\Your-Mod-ID\textures\items\Your-Texture.png
  5. @Override public void registerIcons(IIconRegister par1IconRegister) { this.itemIcon = par1IconRegister.registerIcon("modid:texture"); }
  6. Updated i added the ItemLoader.class with the Item.
  7. I've registered recipes as usually: RecipeLoader.class package SackCastellon.craftablehorsearmor.loader; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; import cpw.mods.fml.common.registry.GameRegistry; public class RecipeLoader { public static final Item Stirrup = (Item)Item.field_150901_e.getObject("stirrup"); public void load() { Item.field_150901_e.func_148756_a(500, "stirrup", (new Item()).setUnlocalizedName("Stirrup").setCreativeTab(CreativeTabs.tabMisc).setTextureName(Reference.TexturePath + "Stirrup")); } } ItemLoader.class package SackCastellon.craftablehorsearmor.loader; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; import cpw.mods.fml.common.registry.GameRegistry; public class RecipeLoader { public static void load() { GameRegistry.addRecipe(new ItemStack(ItemLoader.Stirrup, 2), new Object[] {" I ", "I I", "III", 'I', Items.iron_ingot}); } } Main class package SackCastellon.craftablehorsearmor; import java.io.File; import SackCastellon.core.helper.LogHelper; import SackCastellon.craftablehorsearmor.loader.RecipeLoader; import SackCastellon.craftablehorsearmor.proxy.CommonProxy; import SackCastellon.craftablehorsearmor.reference.Reference; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; 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; @Mod(modid=Reference.MODID, name=Reference.NAME, version=Reference.VERSION, dependencies=Reference.DEPENDENCIES) public class CraftableHorseArmor { @Instance(Reference.MODID) public static CraftableHorseArmor instance; @SidedProxy(clientSide=Reference.CLPROXY, serverSide=Reference.CMPROXY) public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { // Items LogHelper.info(Reference.MODID, "Loading items."); try { ItemLoader.load(); LogHelper.info(Reference.MODID, "Items succesfully loaded."); } catch(Exception e) { LogHelper.severe(Reference.MODID, "Could not load items."); } } @EventHandler public void load(FMLInitializationEvent event) { // Recipes LogHelper.info(Reference.MODID, "Loading Recipes."); try { RecipeLoader.load(); LogHelper.info(Reference.MODID, "Recipes succesfully loaded."); } catch(Exception e) { LogHelper.severe(Reference.MODID, "Could not load Recipes."); } } @EventHandler public void postInit(FMLPostInitializationEvent event) {} } But when i run minecraft i get this crash: Crash [02:21:35] [Client thread/FATAL]: Reported exception thrown! net.minecraft.util.ReportedException: Rendering item at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1139) ~[EntityRenderer.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:979) ~[Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:869) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:103) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_25] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_25] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_25] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_25] 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:?] Caused by: java.lang.NullPointerException at net.minecraft.item.ItemStack.getItemDamage(ItemStack.java:231) ~[itemStack.class:?] at net.minecraft.client.renderer.entity.RenderItem.renderItemIntoGUI(RenderItem.java:406) ~[RenderItem.class:?] at net.minecraft.client.renderer.entity.RenderItem.renderItemAndEffectIntoGUI(RenderItem.java:548) ~[RenderItem.class:?] at net.minecraft.client.gui.inventory.GuiContainer.func_146977_a(GuiContainer.java:271) ~[GuiContainer.class:?] at net.minecraft.client.gui.inventory.GuiContainer.drawScreen(GuiContainer.java:101) ~[GuiContainer.class:?] at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1109) ~[EntityRenderer.class:?] ... 9 more ---- Minecraft Crash Report ---- // Everything's going to plan. No, really, that was supposed to happen. Time: 1/01/14 2:21 Description: Rendering item java.lang.NullPointerException: Rendering item at net.minecraft.item.ItemStack.getItemDamage(ItemStack.java:231) at net.minecraft.client.renderer.entity.RenderItem.renderItemIntoGUI(RenderItem.java:406) at net.minecraft.client.renderer.entity.RenderItem.renderItemAndEffectIntoGUI(RenderItem.java:548) at net.minecraft.client.gui.inventory.GuiContainer.func_146977_a(GuiContainer.java:271) at net.minecraft.client.gui.inventory.GuiContainer.drawScreen(GuiContainer.java:101) at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1109) at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:979) at net.minecraft.client.Minecraft.run(Minecraft.java:869) at net.minecraft.client.main.Main.main(Main.java:103) 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:134) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Stacktrace: at net.minecraft.item.ItemStack.getItemDamage(ItemStack.java:231) at net.minecraft.client.renderer.entity.RenderItem.renderItemIntoGUI(RenderItem.java:406) -- Item being rendered -- Details: Item Type: null Item Aux: ~~ERROR~~ NullPointerException: null Item NBT: null Item Foil: ~~ERROR~~ NullPointerException: null Stacktrace: at net.minecraft.client.renderer.entity.RenderItem.renderItemAndEffectIntoGUI(RenderItem.java:548) at net.minecraft.client.gui.inventory.GuiContainer.func_146977_a(GuiContainer.java:271) at net.minecraft.client.gui.inventory.GuiContainer.drawScreen(GuiContainer.java:101) -- Screen render details -- Details: Screen name: net.minecraft.client.gui.inventory.GuiCrafting Mouse location: Scaled: (176, 65). Absolute: (353, 348) Screen size: Scaled: (427, 240). Absolute: (854, 480). Scale factor of 2 -- Affected level -- Details: Level name: MpServer All players: 1 total; [EntityClientPlayerMP['Player72'/2, l='MpServer', x=743,57, y=58,62, z=517,93]] Chunk stats: MultiplayerChunkCache: 225, 225 Level seed: 0 Level generator: ID 01 - flat, ver 0. Features enabled: false Level generator options: Level spawn location: World: (740,4,514), Chunk: (at 4,0,2 in 46,32; contains blocks 736,0,512 to 751,255,527), Region: (1,1; contains chunks 32,32 to 63,63, blocks 512,0,512 to 1023,255,1023) Level time: 58474 game time, 58474 day time Level dimension: 0 Level storage version: 0x00000 - Unknown? Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false) Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false Forced entities: 3 total; [EntitySpider['Spider'/0, l='MpServer', x=718,53, y=56,00, z=531,75], EntitySpider['Spider'/1, l='MpServer', x=737,78, y=56,00, z=496,22], EntityClientPlayerMP['Player72'/2, l='MpServer', x=743,57, y=58,62, z=517,93]] Retry entities: 0 total; [] Server brand: fml,forge Server type: Integrated singleplayer server Stacktrace: at net.minecraft.client.multiplayer.WorldClient.addWorldInfoToCrashReport(WorldClient.java:384) at net.minecraft.client.Minecraft.addGraphicsAndWorldToCrashReport(Minecraft.java:2430) at net.minecraft.client.Minecraft.run(Minecraft.java:891) at net.minecraft.client.main.Main.main(Main.java:103) 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:134) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) -- System Details -- Details: Minecraft Version: 1.7.2 Operating System: Windows 7 (amd64) version 6.1 Java Version: 1.7.0_25, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 68640496 bytes (65 MB) / 414646272 bytes (395 MB) up to 878051328 bytes (837 MB) JVM Flags: 0 total; AABB Pool Size: 20006 (1120336 bytes; 1 MB) allocated, 61 (3416 bytes; 0 MB) used IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0 FML: MCP v9.01-pre FML v7.2.28.976 Minecraft Forge 10.12.0.976 6 mods loaded, 6 mods active mcp{8.09} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available FML{7.2.28.976} [Forge Mod Loader] (forge-1.7.2-10.12.0.976-mcp.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available Forge{10.12.0.976} [Minecraft Forge] (forge-1.7.2-10.12.0.976-mcp.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available examplemod{1.0} [Example Mod] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available SKC-Core{1.1.0.0} [sKC Core] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available SKC-CraftableHorseArmor{1.1.0.0} [Craftable Horse Armor] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available Launched Version: 1.7.2 LWJGL: 2.9.0 OpenGL: Intel(R) HD Graphics GL version 2.1.0 - Build 8.15.10.2827, Intel Is Modded: Definitely; Client brand changed to 'fml,forge' Type: Client (map_client.txt) Resource Packs: [] Current Language: ~~ERROR~~ NullPointerException: null Profiler Position: N/A (disabled) Vec3 Pool Size: 262 (14672 bytes; 0 MB) allocated, 61 (3416 bytes; 0 MB) used Anisotropic Filtering: Off (1) #@!@# Game crashed! Crash report saved to: #@!@# C:\Users\Juanjo hijo\AppData\Roaming\Modding\forge-1.7.2-10.12.0.976-src\.\crash-reports\crash-2014-01-01_02.21.35-client.txt AL lib: (EE) alc_cleanup: 1 device not closed I couldn't find the problem. So hope someone can find it. Thanks for helping and have a happy new year. SOLUTION: Click here: http://www.minecraftforge.net/forum/index.php/topic,15103.msg76893.html#msg76893 Or go to the penultimate message
  8. I know the code to load/register a Basic Item on 1.6.4 and prior was: Item Loader: package SackCastellon.craftablehorsearmor.library.loader; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; public class ItemLoader { public static Item Stirrup; public static void load() { Stirrup = new SKCItem(1000).setUnlocalizedName("Stirrup").setCreativeTab(CreativeTabs.tabMisc).setTextureName( "CraftableHorseArmor:Stirrup"); } } Main Class: package SackCastellon.craftablehorsearmor; import java.io.File; import SackCastellon.core.helper.LogHelper; import SackCastellon.craftablehorsearmor.loader.ItemLoader; import SackCastellon.craftablehorsearmor.proxy.CommonProxy; import SackCastellon.craftablehorsearmor.reference.Reference; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; 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; @Mod(modid=Reference.MODID, name=Reference.NAME, version=Reference.VERSION, dependencies=Reference.DEPENDENCIES) public class CraftableHorseArmor { @Instance(Reference.MODID) public static CraftableHorseArmor instance; @SidedProxy(clientSide=Reference.CLPROXY, serverSide=Reference.CMPROXY) public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) {} @EventHandler public void load(FMLInitializationEvent event) { // Items LogHelper.info(Reference.MODID, "Loading items."); try { ItemLoader.load(); LogHelper.info(Reference.MODID, "Items succesfully loaded."); } catch(Exception e) { LogHelper.severe(Reference.MODID, "Could not load items."); } } @EventHandler public void postInit(FMLPostInitializationEvent event) {} } But how in 1.7.2 there aren't ID because the items are based on strings this code doesn't work. So i tried to write a new code based on vanilla minecraft code, like this: package SackCastellon.craftablehorsearmor.loader; import SackCastellon.craftablehorsearmor.reference.Reference; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; public class ItemLoader { public static final Item Stirrup = (Item)Item.field_150901_e.getObject("stirrup"); public static void load() { Item.field_150901_e.func_148756_a(500, "stirrup", (new Item()).setUnlocalizedName("Stirrup").setCreativeTab(CreativeTabs.tabMisc).setTextureName("CraftableHorseArmor:Stirrup")); } } But still doesn't work.. Somebody know how to load/register a Item now? Thanks for helping SOLUTION: Just move the ItemLoader.load() from the load method to the preInit method in the Main Class package SackCastellon.craftablehorsearmor; import java.io.File; import SackCastellon.core.helper.LogHelper; import SackCastellon.craftablehorsearmor.loader.ItemLoader; import SackCastellon.craftablehorsearmor.proxy.CommonProxy; import SackCastellon.craftablehorsearmor.reference.Reference; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; 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; @Mod(modid=Reference.MODID, name=Reference.NAME, version=Reference.VERSION, dependencies=Reference.DEPENDENCIES) public class CraftableHorseArmor { @Instance(Reference.MODID) public static CraftableHorseArmor instance; @SidedProxy(clientSide=Reference.CLPROXY, serverSide=Reference.CMPROXY) public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { // Items LogHelper.info(Reference.MODID, "Loading items."); try { ItemLoader.load(); LogHelper.info(Reference.MODID, "Items succesfully loaded."); } catch(Exception e) { LogHelper.severe(Reference.MODID, "Could not load items."); } } @EventHandler public void load(FMLInitializationEvent event) {} @EventHandler public void postInit(FMLPostInitializationEvent event) {} }
  9. I know the code to override/remove vanilla recipes on 1.6.4 and prior was: List<IRecipe> recipes = CraftingManager.getInstance().getRecipeList(); Iterator<IRecipe> Leash = recipes.iterator(); while (Leash.hasNext()) { ItemStack is = Leash.next().getRecipeOutput(); if (is != null && is.itemID == Items.lead.itemID) Leash.remove(); }; But how in 1.7.2 there aren't ID this code doesn't work. Somebody know how to remove recipes now? Thanks for helping SOLUTION: List<IRecipe> recipes = CraftingManager.getInstance().getRecipeList(); Iterator<IRecipe> Leash = recipes.iterator(); while (Leash.hasNext()) { ItemStack is = Leash.next().getRecipeOutput(); if (is != null && is.getItem() == Items.lead) Leash.remove(); };
  10. I've done everything said in [TUTORIAL] Getting Started with ForgeGradle but when i run the client i get this: [18:40:10] [main/INFO]: Loading tweak class name cpw.mods.fml.common.launcher.FMLTweaker [18:40:10] [main/INFO]: Using primary tweak class name cpw.mods.fml.common.launcher.FMLTweaker [18:40:10] [main/INFO]: Calling tweak class cpw.mods.fml.common.launcher.FMLTweaker [18:40:11] [main/INFO]: Forge Mod Loader version 7.2.28.976 for Minecraft 1.7.2 loading [18:40:11] [main/INFO]: Java is Java HotSpot(TM) 64-Bit Server VM, version 1.7.0_25, running on Windows 7:amd64:6.1, installed at C:\Program Files\Java\jre7 [18:40:11] [main/INFO]: Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation [18:40:11] [main/INFO]: Loading tweak class name cpw.mods.fml.common.launcher.FMLInjectionAndSortingTweaker [18:40:11] [main/INFO]: Loading tweak class name cpw.mods.fml.common.launcher.FMLDeobfTweaker [18:40:11] [main/INFO]: Calling tweak class cpw.mods.fml.common.launcher.FMLInjectionAndSortingTweaker [18:40:11] [main/INFO]: Calling tweak class cpw.mods.fml.common.launcher.FMLInjectionAndSortingTweaker [18:40:11] [main/INFO]: Calling tweak class cpw.mods.fml.relauncher.CoreModManager$FMLPluginWrapper [18:40:11] [main/ERROR]: The binary patch set is missing. Either you are in a development environment, or things are not going to work! [18:40:12] [main/ERROR]: The minecraft jar file:/C:/Users/Juanjo%20hijo/.gradle/caches/minecraft/net/minecraftforge/forge/1.7.2-10.12.0.976/forge-1.7.2-10.12.0.976-mcp.jar!/net/minecraft/client/ClientBrandRetriever.class appears to be corrupt! There has been CRITICAL TAMPERING WITH MINECRAFT, it is highly unlikely minecraft will work! STOP NOW, get a clean copy and try again! [18:40:12] [main/ERROR]: FML has been ordered to ignore the invalid or missing minecraft certificate. This is very likely to cause a problem! [18:40:12] [main/ERROR]: Technical information: ClientBrandRetriever was at jar:file:/C:/Users/Juanjo%20hijo/.gradle/caches/minecraft/net/minecraftforge/forge/1.7.2-10.12.0.976/forge-1.7.2-10.12.0.976-mcp.jar!/net/minecraft/client/ClientBrandRetriever.class, there were 0 certificates for it [18:40:12] [main/ERROR]: FML appears to be missing any signature data. This is not a good thing [18:40:12] [main/INFO]: Calling tweak class cpw.mods.fml.relauncher.CoreModManager$FMLPluginWrapper [18:40:12] [main/INFO]: Calling tweak class cpw.mods.fml.common.launcher.FMLDeobfTweaker [18:40:12] [main/INFO]: Launching wrapped minecraft {net.minecraft.client.main.Main} [18:40:14] [main/ERROR]: Unable to launch java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_25] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_25] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_25] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_25] 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:?] Caused by: joptsimple.MissingRequiredOptionException: Missing required option(s) ['accessToken'] at joptsimple.OptionParser.ensureRequiredOptions(OptionParser.java:447) ~[OptionParser.class:?] at joptsimple.OptionParser.parse(OptionParser.java:437) ~[OptionParser.class:?] at net.minecraft.client.main.Main.main(Main.java:44) ~[Main.class:?] ... 6 more IMPORTANT: I changed the Program Arguments from: --version 1.6 --tweakClass cpw.mods.fml.common.launcher.FMLTweaker to: --version 1.7.2 --tweakClass cpw.mods.fml.common.launcher.FMLTweaker Because I'm using Forge 1.7.2-10.12.0.976. May be it's the problem. (I think it isn't) Thanks for helping. SOLUTION: Just add: --accessToken whatever to the Program Arguments Finally it should look like this: --version 1.7.2 --tweakClass cpw.mods.fml.common.launcher.FMLTweaker --accessToken whatever
  11. I think you don't have ramdom number into the game. You only have youID + 256, try: //26201 is meant to be the block ID however it seems to be randomly set hydronutrientsItem = new Itemhydronutrients(26201 - 256).setUnlocalizedName("hydroponicnutrientsItem"); It happens because minecraft adds 256 to the ID you set to items, so if you want an item with ID 3000, you will have to write 3000 - 256 or 2744
  12. I added this to the class: @Override @SideOnly(Side.CLIENT) public void registerIcons(IconRegister par1IconRegister) { this.Texture = new Icon[4]; for (int i = 0; i < 4; ++i) { LogHelper.info("TexturePath = " + this.TexturePath); LogHelper.info("TextureNames[0] = " + TextureNames[0]); LogHelper.info("TextureNames[1] = " + TextureNames[1]); LogHelper.info("TextureNames[2] = " + TextureNames[2]); LogHelper.info("TextureNames[3] = " + TextureNames[3]); this.Texture[i] = par1IconRegister.registerIcon(TexturePath + this.getUnlocalizedName().substring(5).toLowerCase() + "/" + (TextureNames[i].startsWith("EBXL") ? "ebxl/" : "vanilla/") + (TextureNames[i].startsWith("EBXL") ? TextureNames[i].substring(5) : TextureNames[i])); } } And the crash report says: 2013-11-30 17:37:18 [iNFO] [Minecraft-Client] Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Better Wood, FMLFileResourcePack:SKC Core, FMLFileResourcePack:Craftable Horse Armor, FMLFileResourcePack:Pixel Art, FMLFileResourcePack:Stained Sand, FMLFileResourcePack:Stained Wood 2013-11-30 17:37:18 [iNFO] [sKC-BetterWood] TexturePath = betterwood: 2013-11-30 17:37:18 [iNFO] [sTDOUT] ---- Minecraft Crash Report ---- 2013-11-30 17:37:18 [iNFO] [sTDOUT] // Daisy, daisy... 2013-11-30 17:37:18 [iNFO] [sTDOUT] 2013-11-30 17:37:18 [iNFO] [sTDOUT] Time: 30/11/13 17:37 2013-11-30 17:37:18 [iNFO] [sTDOUT] Description: Registering texture So, i'm assuming the problem is on TextureNames[]. Am i right?
  13. No. It's not empty, anyway it shouldn't be a problem, because if there'is no texture Minecraft loads a "No Texture" texture:
  14. Does somebody know why it crashes? The crash report 2013-11-29 17:53:35 [iNFO] [sTDOUT] ---- Minecraft Crash Report ---- 2013-11-29 17:53:35 [iNFO] [sTDOUT] // Hi. I'm Minecraft, and I'm a crashaholic. 2013-11-29 17:53:35 [iNFO] [sTDOUT] 2013-11-29 17:53:35 [iNFO] [sTDOUT] Time: 29/11/13 17:53 2013-11-29 17:53:35 [iNFO] [sTDOUT] Description: Registering texture 2013-11-29 17:53:35 [iNFO] [sTDOUT] 2013-11-29 17:53:35 [iNFO] [sTDOUT] java.lang.NullPointerException 2013-11-29 17:53:35 [iNFO] [sTDOUT] at SackCastellon.betterwood.items.MetaItemSoup.registerIcons(MetaItemSoup.java:98) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.renderer.texture.TextureMap.registerIcons(TextureMap.java:186) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.renderer.texture.TextureMap.loadTextureAtlas(TextureMap.java:62) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.renderer.texture.TextureMap.loadTexture(TextureMap.java:57) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.renderer.texture.TextureManager.loadTexture(TextureManager.java:84) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.renderer.texture.TextureManager.onResourceManagerReload(TextureManager.java:148) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.resources.SimpleReloadableResourceManager.notifyReloadListeners(SimpleReloadableResourceManager.java:119) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.resources.SimpleReloadableResourceManager.reloadResources(SimpleReloadableResourceManager.java:103) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.refreshResources(Minecraft.java:543) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:265) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.startGame(Minecraft.java:509) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.run(Minecraft.java:808) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.main.Main.main(Main.java:93) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at java.lang.reflect.Method.invoke(Unknown Source) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.launchwrapper.Launch.launch(Launch.java:131) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.launchwrapper.Launch.main(Launch.java:27) 2013-11-29 17:53:35 [iNFO] [sTDOUT] 2013-11-29 17:53:35 [iNFO] [sTDOUT] 2013-11-29 17:53:35 [iNFO] [sTDOUT] A detailed walkthrough of the error, its code path and all known details is as follows: 2013-11-29 17:53:35 [iNFO] [sTDOUT] --------------------------------------------------------------------------------------- 2013-11-29 17:53:35 [iNFO] [sTDOUT] 2013-11-29 17:53:35 [iNFO] [sTDOUT] -- Head -- 2013-11-29 17:53:35 [iNFO] [sTDOUT] Stacktrace: 2013-11-29 17:53:35 [iNFO] [sTDOUT] at SackCastellon.betterwood.items.MetaItemSoup.registerIcons(MetaItemSoup.java:98) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.renderer.texture.TextureMap.registerIcons(TextureMap.java:186) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.renderer.texture.TextureMap.loadTextureAtlas(TextureMap.java:62) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.renderer.texture.TextureMap.loadTexture(TextureMap.java:57) 2013-11-29 17:53:35 [iNFO] [sTDOUT] 2013-11-29 17:53:35 [iNFO] [sTDOUT] -- Resource location being registered -- 2013-11-29 17:53:35 [iNFO] [sTDOUT] Details: 2013-11-29 17:53:35 [iNFO] [sTDOUT] Resource location: minecraft:textures/atlas/items.png 2013-11-29 17:53:35 [iNFO] [sTDOUT] Texture object class: net.minecraft.client.renderer.texture.TextureMap 2013-11-29 17:53:35 [iNFO] [sTDOUT] Stacktrace: 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.renderer.texture.TextureManager.loadTexture(TextureManager.java:84) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.renderer.texture.TextureManager.onResourceManagerReload(TextureManager.java:148) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.resources.SimpleReloadableResourceManager.notifyReloadListeners(SimpleReloadableResourceManager.java:119) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.resources.SimpleReloadableResourceManager.reloadResources(SimpleReloadableResourceManager.java:103) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.refreshResources(Minecraft.java:543) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:265) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.startGame(Minecraft.java:509) 2013-11-29 17:53:35 [iNFO] [sTDOUT] 2013-11-29 17:53:35 [iNFO] [sTDOUT] -- Initialization -- 2013-11-29 17:53:35 [iNFO] [sTDOUT] Details: 2013-11-29 17:53:35 [iNFO] [sTDOUT] Stacktrace: 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.run(Minecraft.java:808) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.client.main.Main.main(Main.java:93) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at java.lang.reflect.Method.invoke(Unknown Source) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.launchwrapper.Launch.launch(Launch.java:131) 2013-11-29 17:53:35 [iNFO] [sTDOUT] at net.minecraft.launchwrapper.Launch.main(Launch.java:27) 2013-11-29 17:53:35 [iNFO] [sTDOUT] 2013-11-29 17:53:35 [iNFO] [sTDOUT] -- System Details -- 2013-11-29 17:53:35 [iNFO] [sTDOUT] Details: 2013-11-29 17:53:35 [iNFO] [sTDOUT] Minecraft Version: 1.6.4 2013-11-29 17:53:35 [iNFO] [sTDOUT] Operating System: Windows 7 (amd64) version 6.1 2013-11-29 17:53:35 [iNFO] [sTDOUT] Java Version: 1.7.0_25, Oracle Corporation 2013-11-29 17:53:35 [iNFO] [sTDOUT] Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation 2013-11-29 17:53:35 [iNFO] [sTDOUT] Memory: 768823120 bytes (733 MB) / 1038876672 bytes (990 MB) up to 1038876672 bytes (990 MB) 2013-11-29 17:53:35 [iNFO] [sTDOUT] JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M 2013-11-29 17:53:35 [iNFO] [sTDOUT] AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used 2013-11-29 17:53:35 [iNFO] [sTDOUT] Suspicious classes: FML and Forge are installed 2013-11-29 17:53:35 [iNFO] [sTDOUT] IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0 2013-11-29 17:53:35 [iNFO] [sTDOUT] FML: MCP v8.11 FML v6.4.45.953 Minecraft Forge 9.11.1.953 9 mods loaded, 9 mods active 2013-11-29 17:53:35 [iNFO] [sTDOUT] mcp{8.09} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available 2013-11-29 17:53:35 [iNFO] [sTDOUT] FML{6.4.45.953} [Forge Mod Loader] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available 2013-11-29 17:53:35 [iNFO] [sTDOUT] Forge{9.11.1.953} [Minecraft Forge] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available 2013-11-29 17:53:35 [iNFO] [sTDOUT] SKC-Core{1.1.0.0} [sKC Core] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available 2013-11-29 17:53:35 [iNFO] [sTDOUT] SKC-BetterWood{1.1.0.0} [better Wood] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available 2013-11-29 17:53:35 [iNFO] [sTDOUT] SKC-CraftableHorseArmor{1.1.0.0} [Craftable Horse Armor] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available 2013-11-29 17:53:35 [iNFO] [sTDOUT] SKC-PixelArt{1.0.0.0} [Pixel Art] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available 2013-11-29 17:53:35 [iNFO] [sTDOUT] SKC-StainedSand{1.0.0.0} [stained Sand] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available 2013-11-29 17:53:35 [iNFO] [sTDOUT] SKC-StainedWood{1.0.0.0} [stained Wood] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available 2013-11-29 17:53:35 [iNFO] [sTDOUT] Launched Version: 1.6 2013-11-29 17:53:35 [iNFO] [sTDOUT] LWJGL: 2.9.0 2013-11-29 17:53:35 [iNFO] [sTDOUT] OpenGL: Intel(R) HD Graphics GL version 2.1.0 - Build 8.15.10.2827, Intel 2013-11-29 17:53:35 [iNFO] [sTDOUT] Is Modded: Definitely; Client brand changed to 'fml,forge' 2013-11-29 17:53:35 [iNFO] [sTDOUT] Type: Client (map_client.txt) 2013-11-29 17:53:35 [iNFO] [sTDOUT] Resource Pack: Default 2013-11-29 17:53:35 [iNFO] [sTDOUT] Current Language: English (US) 2013-11-29 17:53:35 [iNFO] [sTDOUT] Profiler Position: N/A (disabled) 2013-11-29 17:53:35 [iNFO] [sTDOUT] Vec3 Pool Size: ~~ERROR~~ NullPointerException: null 2013-11-29 17:53:35 [iNFO] [sTDOUT] #@!@# Game crashed! Crash report saved to: #@!@# C:\Users\Juanjo hijo\AppData\Roaming\.modding\forge-1.6.4-9.11.1.953-src\forge\mcp\jars\.\crash-reports\crash-2013-11-29_17.53.35-client.txt And this is the Item's Class package SackCastellon.betterwood.items; import java.util.List; import SackCastellon.betterwood.library.loader.ItemLoader; import SackCastellon.betterwood.library.loader.NameLoader; import cpw.mods.fml.common.Loader; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.client.renderer.texture.IconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemFood; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.Icon; import net.minecraft.util.MathHelper; import net.minecraft.world.World; public class MetaItemSoup extends ItemFood { private String TexturePath = ItemLoader.TexturePath; private Item ReturnItem; private String LoreMaterial; private String[] ItemLore; private String[] TextureNames; @SideOnly(Side.CLIENT) private Icon[] Texture; public MetaItemSoup(int par1,Item par2) { super(par1, 6, 0.6F, false); /* this.LoreMaterial = par2[1]; this.TextureNames = par3; this.ItemLore = par4; */ this.ReturnItem = par2; this.setHasSubtypes(true); this.setMaxDamage(0); } public String getMaterial(ItemStack par1) { int k = MathHelper.clamp_int(par1.getItemDamage(), 0, ItemLore.length - 1); return ItemLore[k]; } public Item setItemNames (String[][] par1) { this.LoreMaterial = par1[0][1]; this.TextureNames = par1[1]; this.ItemLore = par1[2]; return this; } @Override public void addInformation(ItemStack par1, EntityPlayer par2, List par3, boolean par4){ NBTTagCompound nbt = par1.getTagCompound(); { par3.add(this.LoreMaterial + ": " + this.getMaterial(par1)); } } public String getUnlocalizedName(ItemStack par1ItemStack) { int i = MathHelper.clamp_int(par1ItemStack.getItemDamage(), 0, TextureNames.length - 1); return super.getUnlocalizedName() + "." + TextureNames[i]; } public Icon getIconFromDamage(int par1) { int i = MathHelper.clamp_int(par1, 0, TextureNames.length - 1); return this.Texture[i]; } public void getSubItems(int par1, CreativeTabs par2, List par3) { for (int meta = 0; meta < this.TextureNames.length; ++meta) { par3.add(new ItemStack(par1, 1, meta)); } } @Override @SideOnly(Side.CLIENT) public void registerIcons(IconRegister par1IconRegister) { this.Texture = new Icon[4]; for (int i = 0; i < 4; ++i) { this.Texture[i] = par1IconRegister.registerIcon(TexturePath + this.getUnlocalizedName().substring(5).toLowerCase() + "/" + (TextureNames[i].startsWith("EBXL") ? "ebxl/" : "vanilla/") + (TextureNames[i].startsWith("EBXL") ? TextureNames[i].substring(5) : TextureNames[i])); } } public ItemStack onEaten(ItemStack par1, World par2, EntityPlayer par3) { return new ItemStack(ReturnItem, 1, par1.getItemDamage()); } } I hope someone can help me. Thanks.
  15. I don't know why the custom lore of my items don't load from the .xml file, but it load the items name. https://dl.dropboxusercontent.com/u/184200482/img/2013-11-23_17.54.11.png[/img] https://dl.dropboxusercontent.com/u/184200482/img/2013-11-23_17.54.24.png[/img] LoreLoader.class package SackCastellon.betterwood.library.loader; import net.minecraft.util.StatCollector; public class LoreLoader { public static String HeadSword = StatCollector.translateToLocal("lore.head.sword"); public static String HandleSword = StatCollector.translateToLocal("lore.handle.sword"); public static String HeadShovel = StatCollector.translateToLocal("lore.head.shovel"); public static String HandleShovel = StatCollector.translateToLocal("lore.handle.shovel"); public static String HeadPickaxe = StatCollector.translateToLocal("lore.head.pickaxe"); public static String HandlePickaxe = StatCollector.translateToLocal("lore.handle.pickaxe"); public static String HeadAxe = StatCollector.translateToLocal("lore.head.axe"); public static String HandleAxe = StatCollector.translateToLocal("lore.handle.axe"); public static String HeadHoe = StatCollector.translateToLocal("lore.head.hoe"); public static String HandleHoe = StatCollector.translateToLocal("lore.handle.hoe"); public static String Oak = StatCollector.translateToLocal("lore.oak"); public static String Spruce = StatCollector.translateToLocal("lore.spruce"); public static String Birch = StatCollector.translateToLocal("lore.birch"); public static String Jungle = StatCollector.translateToLocal("lore.jungle"); public static String Acacia = StatCollector.translateToLocal("lore.acacia"); public static String DarkOak = StatCollector.translateToLocal("lore.darkOak"); public static String Stone = StatCollector.translateToLocal("lore.stone"); public static String Iron = StatCollector.translateToLocal("lore.iron"); public static String Gold = StatCollector.translateToLocal("lore.gold"); public static String Diamond = StatCollector.translateToLocal("lore.diamond"); public static String EBXL_Acacia = StatCollector.translateToLocal("lore.ebxl.acacia"); public static String EBXL_BaldCypress = StatCollector.translateToLocal("lore.ebxl.baldCypress"); public static String EBXL_Cypress = StatCollector.translateToLocal("lore.ebxl.cypress"); public static String EBXL_Fir = StatCollector.translateToLocal("lore.ebxl.fir"); public static String EBXL_JapaneseMaple = StatCollector.translateToLocal("lore.ebxl.japaneseMaple"); public static String EBXL_RainbowEucalyptus = StatCollector.translateToLocal("lore.ebxl.rainbowEucalyptus"); public static String EBXL_Redwood = StatCollector.translateToLocal("lore.ebxl.redwood"); public static String EBXL_Sakura = StatCollector.translateToLocal("lore.ebxl.sakura"); public static String EBXL_Autumn = StatCollector.translateToLocal("lore.ebxl.autumn"); public static String Material = StatCollector.translateToLocal("lore.material"); public static String BowlMaterial = StatCollector.translateToLocal("lore.material.bowl"); } Main class package SackCastellon.betterwood; import java.io.File; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.ItemStack; import SackCastellon.betterwood.proxy.*; import SackCastellon.betterwood.api.*; import SackCastellon.betterwood.library.handler.*; import SackCastellon.betterwood.library.helper.*; import SackCastellon.betterwood.library.loader.*; import SackCastellon.betterwood.library.reference.*; import SackCastellon.core.library.helper.Version; import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.*; import cpw.mods.fml.common.network.NetworkMod; import cpw.mods.fml.common.registry.GameRegistry; @Mod(modid=Reference.MODID, name=Reference.NAME, version=Reference.VERSION, dependencies=Reference.DEPENDENCIES) @NetworkMod(clientSideRequired=true, serverSideRequired=true) public class BetterWood { @Instance(Reference.MODID) public static BetterWood instance; public static CreativeTabs tabBW; public static CreativeTabs tabEBXL; public static CreativeTabs tabBoP; @SidedProxy(clientSide=Reference.CLPROXY, serverSide=Reference.CMPROXY) public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { ConfigHandler.loadConfig(new File(event.getModConfigurationDirectory(), "/SackCastellon Mod's/" + Reference.MODID + ".cfg")); LanguageRegistry.instance().loadLocalization("/assets/betterwood/lang/en_US.xml", "en_US", true); if (ConfigHandler.CheckVersion == true) { Version.check(Reference.NAME, Reference.VERSION, Reference.URL); } TabLoader.init(); } @EventHandler public void init(FMLInitializationEvent event) { // Items LogHelper.info("Loading items."); try { ItemLoader.vanilla(); if (Loader.isModLoaded("ExtrabiomesXL")) { ItemLoader.ebxl(); } if (Loader.isModLoaded("BiomesOPlenty")) { ItemLoader.bop(); } LogHelper.info("Items succesfully loaded"); } catch(Exception e) { LogHelper.severe("Could not load items"); } // Blocks LogHelper.info("Loading blocks."); try { BlockLoader.vanilla(); BlockRegister.vanilla(); if (Loader.isModLoaded("ExtrabiomesXL")) { BlockLoader.ebxl(); BlockRegister.ebxl(); } if (Loader.isModLoaded("BiomesOPlenty")) { BlockLoader.bop(); BlockRegister.bop(); } LogHelper.info("Blocks succesfully loaded"); } catch(Exception e) { LogHelper.severe("Could not load blocks"); } // Recipes LogHelper.info("Loading recipes."); try { RecipeLoader.remove(); RecipeLoader.vanilla(); if (Loader.isModLoaded("ExtrabiomesXL")) { RecipeLoader.ebxl(); } if (Loader.isModLoaded("BiomesOPlenty")) { RecipeLoader.bop(); } GameRegistry.registerFuelHandler(new FuelHandler()); LogHelper.info("Recipes succesfully loaded"); } catch(Exception e) { LogHelper.severe("Could not load recipes"); } } @EventHandler public void postInit(FMLPostInitializationEvent event) {} } en_US.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties version="1.0"> <comment>English (en_US) Localization File By SackCastellon</comment> <entry key="tile.Bookshelf.Oak.name">Oak Bookshelf</entry> <entry key="tile.Bookshelf.Spruce.name">Spruce Bookshelf</entry> <entry key="tile.Bookshelf.Birch.name">Birch Bookshelf</entry> <entry key="tile.Bookshelf.Jungle.name">Jungle Bookshelf</entry> <entry key="tile.Bookshelf.Acacia.name">Acacia Bookshelf</entry> <entry key="tile.Bookshelf.DarkOak.name">Dark Oak Bookshelf</entry> <entry key="tile.Fence.Oak.name">Oak Fence</entry> <entry key="tile.Fence.Spruce.name">Spruce Fence</entry> <entry key="tile.Fence.Birch.name">Birch Fence</entry> <entry key="tile.Fence.Jungle.name">Jungle Fence</entry> <entry key="tile.Fence.Acacia.name">Acacia Fence</entry> <entry key="tile.Fence.DarkOak.name">Dark Oak Fence</entry> <entry key="tile.FenceGate.Oak.name">Oak FenceGate</entry> <entry key="tile.FenceGate.Spruce.name">Spruce FenceGate</entry> <entry key="tile.FenceGate.Birch.name">Birch FenceGate</entry> <entry key="tile.FenceGate.Jungle.name">Jungle FenceGate</entry> <entry key="tile.FenceGate.Acacia.name">Acacia FenceGate</entry> <entry key="tile.FenceGate.DarkOak.name">Dark Oak FenceGate</entry> <entry key="tile.Button.Oak.name">Oak Button</entry> <entry key="tile.Button.Spruce.name">Spruce Button</entry> <entry key="tile.Button.Birch.name">Birch Button</entry> <entry key="tile.Button.Jungle.name">Jungle Button</entry> <entry key="tile.Button.Acacia.name">Acacia Button</entry> <entry key="tile.Button.DarkOak.name">Dark Oak Button</entry> <entry key="tile.PressurePlate.Oak.name">Oak Pressure Plate</entry> <entry key="tile.PressurePlate.Spruce.name">Spruce Pressure Plate</entry> <entry key="tile.PressurePlate.Birch.name">Birch Pressure Plate</entry> <entry key="tile.PressurePlate.Jungle.name">Jungle Pressure Plate</entry> <entry key="tile.PressurePlate.Acacia.name">Acacia Pressure Plate</entry> <entry key="tile.PressurePlate.DarkOak.name">Dark Oak Pressure Plate</entry> <entry key="tile.Lever.Oak.name">Oak Lever</entry> <entry key="tile.Lever.Spruce.name">Spruce Lever</entry> <entry key="tile.Lever.Birch.name">Birch Lever</entry> <entry key="tile.Lever.Jungle.name">Jungle Lever</entry> <entry key="tile.Lever.Acacia.name">Acacia Lever</entry> <entry key="tile.Lever.DarkOak.name">Dark Oak Lever</entry> <entry key="tile.Ladder.Oak.name">Oak Ladder</entry> <entry key="tile.Ladder.Spruce.name">Spruce Ladder</entry> <entry key="tile.Ladder.Birch.name">Birch Ladder</entry> <entry key="tile.Ladder.Jungle.name">Jungle Ladder</entry> <entry key="tile.Ladder.Acacia.name">Acacia Ladder</entry> <entry key="tile.Ladder.DarkOak.name">Dark Oak Ladder</entry> <entry key="tile.TorchOn.Oak.name">Oak Torch</entry> <entry key="tile.TorchOn.Spruce.name">Spruce Torch</entry> <entry key="tile.TorchOn.Birch.name">Birch Torch</entry> <entry key="tile.TorchOn.Jungle.name">Jungle Torch</entry> <entry key="tile.TorchOn.Acacia.name">Acacia Torch</entry> <entry key="tile.TorchOn.DarkOak.name">Dark Oak Torch</entry> <entry key="item.Stick.Oak.name">Oak Stick</entry> <entry key="item.Stick.Spruce.name">Spruce Stick</entry> <entry key="item.Stick.Birch.name">Birch Stick</entry> <entry key="item.Stick.Jungle.name">Jungle Stick</entry> <entry key="item.Stick.Acacia.name">Jungle Stick</entry> <entry key="item.Stick.DarkOak.name">Dark Oak Stick</entry> <entry key="item.Stick.EBXL.Acacia.name">Acacia Stick</entry> <entry key="item.Stick.EBXL.BaldCypress.name">Bald Cypress Stick</entry> <entry key="item.Stick.EBXL.Cypress.name">Cypres Stick</entry> <entry key="item.Stick.EBXL.JapaneseMaple.name">Japanes Maple Stick</entry> <entry key="item.Stick.EBXL.RainbowEucalyptus.name">Rainbow Eucalyptus Stick</entry> <entry key="item.Stick.EBXL.Redwood.name">Redwood Stick</entry> <entry key="item.Stick.EBXL.Sakura.name">Sakura Blossom Stick</entry> <entry key="item.Stick.EBXL.Autumn.name">Autumn Stick</entry> <entry key="item.Stick.EBXL.Fir.name">Fir Stick</entry> <entry key="item.Bowl.Oak.name">Oak Bowl</entry> <entry key="item.Bowl.Spruce.name">Spruce Bowl</entry> <entry key="item.Bowl.Birch.name">Birch Bowl</entry> <entry key="item.Bowl.Jungle.name">Jungle Bowl</entry> <entry key="item.Bowl.Acacia.name">Jungle Bowl</entry> <entry key="item.Bowl.DarkOak.name">Dark Oak Bowl</entry> <entry key="item.Bowl.EBXL.Acacia.name">Acacia Bowl</entry> <entry key="item.Bowl.EBXL.BaldCypress.name">Bald Cypress Bowl</entry> <entry key="item.Bowl.EBXL.Cypress.name">Cypres Bowl</entry> <entry key="item.Bowl.EBXL.JapaneseMaple.name">Japanes Maple Bowl</entry> <entry key="item.Bowl.EBXL.RainbowEucalyptus.name">Rainbow Eucalyptus Bowl</entry> <entry key="item.Bowl.EBXL.Redwood.name">Redwood Bowl</entry> <entry key="item.Bowl.EBXL.Sakura.name">Sakura Blossom Bowl</entry> <entry key="item.Bowl.EBXL.Autumn.name">Autumn Bowl</entry> <entry key="item.Bowl.EBXL.Fir.name">Fir Bowl</entry> <entry key="item.Soup.Oak.name">Oak Soup</entry> <entry key="item.Soup.Spruce.name">Spruce Soup</entry> <entry key="item.Soup.Birch.name">Birch Soup</entry> <entry key="item.Soup.Jungle.name">Jungle Soup</entry> <entry key="item.Soup.Acacia.name">Jungle Soup</entry> <entry key="item.Soup.DarkOak.name">Dark Oak Soup</entry> <entry key="item.Soup.EBXL.Acacia.name">Acacia Soup</entry> <entry key="item.Soup.EBXL.BaldCypress.name">Bald Cypress Soup</entry> <entry key="item.Soup.EBXL.Cypress.name">Cypres Soup</entry> <entry key="item.Soup.EBXL.JapaneseMaple.name">Japanes Maple Soup</entry> <entry key="item.Soup.EBXL.RainbowEucalyptus.name">Rainbow Eucalyptus Soup</entry> <entry key="item.Soup.EBXL.Redwood.name">Redwood Soup</entry> <entry key="item.Soup.EBXL.Sakura.name">Sakura Blossom Soup</entry> <entry key="item.Soup.EBXL.Autumn.name">Autumn Soup</entry> <entry key="item.Soup.EBXL.Fir.name">Fir Soup</entry> <entry key="item.Arrow.Oak.name">Oak Arrow</entry> <entry key="item.Arrow.Spruce.name">Spruce Arrow</entry> <entry key="item.Arrow.Birch.name">Birch Arrow</entry> <entry key="item.Arrow.Jungle.name">Jungle Arrow</entry> <entry key="item.Arrow.Acacia.name">Jungle Arrow</entry> <entry key="item.Arrow.DarkOak.name">Dark Oak Arrow</entry> <entry key="item.Arrow.EBXL.Acacia.name">Acacia Arrow</entry> <entry key="item.Arrow.EBXL.BaldCypress.name">Bald Cypress Arrow</entry> <entry key="item.Arrow.EBXL.Cypress.name">Cypres Arrow</entry> <entry key="item.Arrow.EBXL.JapaneseMaple.name">Japanes Maple Arrow</entry> <entry key="item.Arrow.EBXL.RainbowEucalyptus.name">Rainbow Eucalyptus Arrow</entry> <entry key="item.Arrow.EBXL.Redwood.name">Redwood Arrow</entry> <entry key="item.Arrow.EBXL.Sakura.name">Sakura Blossom Arrow</entry> <entry key="item.Arrow.EBXL.Autumn.name">Autumn Arrow</entry> <entry key="item.Arrow.EBXL.Fir.name">Fir Arrow</entry> <entry key="item.Sword.Oak.Oak.name">Wooden Sword</entry> <entry key="item.Sword.Oak.Spruce.name">Wooden Sword</entry> <entry key="item.Sword.Oak.Birch.name">Wooden Sword</entry> <entry key="item.Sword.Oak.Jungle.name">Wooden Sword</entry> <entry key="item.Sword.Spruce.Oak.name">Wooden Sword</entry> <entry key="item.Sword.Spruce.Spruce.name">Wooden Sword</entry> <entry key="item.Sword.Spruce.Birch.name">Wooden Sword</entry> <entry key="item.Sword.Spruce.Jungle.name">Wooden Sword</entry> <entry key="item.Sword.Birch.Oak.name">Wooden Sword</entry> <entry key="item.Sword.Birch.Spruce.name">Wooden Sword</entry> <entry key="item.Sword.Birch.Birch.name">Wooden Sword</entry> <entry key="item.Sword.Birch.Jungle.name">Wooden Sword</entry> <entry key="item.Sword.Jungle.Oak.name">Wooden Sword</entry> <entry key="item.Sword.Jungle.Spruce.name">Wooden Sword</entry> <entry key="item.Sword.Jungle.Birch.name">Wooden Sword</entry> <entry key="item.Sword.Jungle.Jungle.name">Wooden Sword</entry> <entry key="item.Sword.Stone.Oak.name">Stone Sword</entry> <entry key="item.Sword.Stone.Spruce.name">Stone Sword</entry> <entry key="item.Sword.Stone.Birch.name">Stone Sword</entry> <entry key="item.Sword.Stone.Jungle.name">Stone Sword</entry> <entry key="item.Sword.Iron.Oak.name">Iron Sword</entry> <entry key="item.Sword.Iron.Spruce.name">Iron Sword</entry> <entry key="item.Sword.Iron.Birch.name">Iron Sword</entry> <entry key="item.Sword.Iron.Jungle.name">Iron Sword</entry> <entry key="item.Sword.Gold.Oak.name">Gold Sword</entry> <entry key="item.Sword.Gold.Spruce.name">Gold Sword</entry> <entry key="item.Sword.Gold.Birch.name">Gold Sword</entry> <entry key="item.Sword.Gold.Jungle.name">Gold Sword</entry> <entry key="item.Sword.Diamond.Oak.name">Diamond Sword</entry> <entry key="item.Sword.Diamond.Spruce.name">Diamond Sword</entry> <entry key="item.Sword.Diamond.Birch.name">Diamond Sword</entry> <entry key="item.Sword.Diamond.Jungle.name">Diamond Sword</entry> <entry key="item.Shovel.Oak.Oak.name">Wooden Shovel</entry> <entry key="item.Shovel.Oak.Spruce.name">Wooden Shovel</entry> <entry key="item.Shovel.Oak.Birch.name">Wooden Shovel</entry> <entry key="item.Shovel.Oak.Jungle.name">Wooden Shovel</entry> <entry key="item.Shovel.Spruce.Oak.name">Wooden Shovel</entry> <entry key="item.Shovel.Spruce.Spruce.name">Wooden Shovel</entry> <entry key="item.Shovel.Spruce.Birch.name">Wooden Shovel</entry> <entry key="item.Shovel.Spruce.Jungle.name">Wooden Shovel</entry> <entry key="item.Shovel.Birch.Oak.name">Wooden Shovel</entry> <entry key="item.Shovel.Birch.Spruce.name">Wooden Shovel</entry> <entry key="item.Shovel.Birch.Birch.name">Wooden Shovel</entry> <entry key="item.Shovel.Birch.Jungle.name">Wooden Shovel</entry> <entry key="item.Shovel.Jungle.Oak.name">Wooden Shovel</entry> <entry key="item.Shovel.Jungle.Spruce.name">Wooden Shovel</entry> <entry key="item.Shovel.Jungle.Birch.name">Wooden Shovel</entry> <entry key="item.Shovel.Jungle.Jungle.name">Wooden Shovel</entry> <entry key="item.Shovel.Stone.Oak.name">Stone Shovel</entry> <entry key="item.Shovel.Stone.Spruce.name">Stone Shovel</entry> <entry key="item.Shovel.Stone.Birch.name">Stone Shovel</entry> <entry key="item.Shovel.Stone.Jungle.name">Stone Shovel</entry> <entry key="item.Shovel.Iron.Oak.name">Iron Shovel</entry> <entry key="item.Shovel.Iron.Spruce.name">Iron Shovel</entry> <entry key="item.Shovel.Iron.Birch.name">Iron Shovel</entry> <entry key="item.Shovel.Iron.Jungle.name">Iron Shovel</entry> <entry key="item.Shovel.Gold.Oak.name">Gold Shovel</entry> <entry key="item.Shovel.Gold.Spruce.name">Gold Shovel</entry> <entry key="item.Shovel.Gold.Birch.name">Gold Shovel</entry> <entry key="item.Shovel.Gold.Jungle.name">Gold Shovel</entry> <entry key="item.Shovel.Diamond.Oak.name">Diamond Shovel</entry> <entry key="item.Shovel.Diamond.Spruce.name">Diamond Shovel</entry> <entry key="item.Shovel.Diamond.Birch.name">Diamond Shovel</entry> <entry key="item.Shovel.Diamond.Jungle.name">Diamond Shovel</entry> <entry key="item.Pickaxe.Oak.Oak.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Oak.Spruce.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Oak.Birch.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Oak.Jungle.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Spruce.Oak.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Spruce.Spruce.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Spruce.Birch.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Spruce.Jungle.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Birch.Oak.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Birch.Spruce.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Birch.Birch.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Birch.Jungle.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Jungle.Oak.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Jungle.Spruce.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Jungle.Birch.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Jungle.Jungle.name">Wooden Pickaxe</entry> <entry key="item.Pickaxe.Stone.Oak.name">Stone Pickaxe</entry> <entry key="item.Pickaxe.Stone.Spruce.name">Stone Pickaxe</entry> <entry key="item.Pickaxe.Stone.Birch.name">Stone Pickaxe</entry> <entry key="item.Pickaxe.Stone.Jungle.name">Stone Pickaxe</entry> <entry key="item.Pickaxe.Iron.Oak.name">Iron Pickaxe</entry> <entry key="item.Pickaxe.Iron.Spruce.name">Iron Pickaxe</entry> <entry key="item.Pickaxe.Iron.Birch.name">Iron Pickaxe</entry> <entry key="item.Pickaxe.Iron.Jungle.name">Iron Pickaxe</entry> <entry key="item.Pickaxe.Gold.Oak.name">Gold Pickaxe</entry> <entry key="item.Pickaxe.Gold.Spruce.name">Gold Pickaxe</entry> <entry key="item.Pickaxe.Gold.Birch.name">Gold Pickaxe</entry> <entry key="item.Pickaxe.Gold.Jungle.name">Gold Pickaxe</entry> <entry key="item.Pickaxe.Diamond.Oak.name">Diamond Pickaxe</entry> <entry key="item.Pickaxe.Diamond.Spruce.name">Diamond Pickaxe</entry> <entry key="item.Pickaxe.Diamond.Birch.name">Diamond Pickaxe</entry> <entry key="item.Pickaxe.Diamond.Jungle.name">Diamond Pickaxe</entry> <entry key="item.Axe.Oak.Oak.name">Wooden Axe</entry> <entry key="item.Axe.Oak.Spruce.name">Wooden Axe</entry> <entry key="item.Axe.Oak.Birch.name">Wooden Axe</entry> <entry key="item.Axe.Oak.Jungle.name">Wooden Axe</entry> <entry key="item.Axe.Spruce.Oak.name">Wooden Axe</entry> <entry key="item.Axe.Spruce.Spruce.name">Wooden Axe</entry> <entry key="item.Axe.Spruce.Birch.name">Wooden Axe</entry> <entry key="item.Axe.Spruce.Jungle.name">Wooden Axe</entry> <entry key="item.Axe.Birch.Oak.name">Wooden Axe</entry> <entry key="item.Axe.Birch.Spruce.name">Wooden Axe</entry> <entry key="item.Axe.Birch.Birch.name">Wooden Axe</entry> <entry key="item.Axe.Birch.Jungle.name">Wooden Axe</entry> <entry key="item.Axe.Jungle.Oak.name">Wooden Axe</entry> <entry key="item.Axe.Jungle.Spruce.name">Wooden Axe</entry> <entry key="item.Axe.Jungle.Birch.name">Wooden Axe</entry> <entry key="item.Axe.Jungle.Jungle.name">Wooden Axe</entry> <entry key="item.Axe.Stone.Oak.name">Stone Axe</entry> <entry key="item.Axe.Stone.Spruce.name">Stone Axe</entry> <entry key="item.Axe.Stone.Birch.name">Stone Axe</entry> <entry key="item.Axe.Stone.Jungle.name">Stone Axe</entry> <entry key="item.Axe.Iron.Oak.name">Iron Axe</entry> <entry key="item.Axe.Iron.Spruce.name">Iron Axe</entry> <entry key="item.Axe.Iron.Birch.name">Iron Axe</entry> <entry key="item.Axe.Iron.Jungle.name">Iron Axe</entry> <entry key="item.Axe.Gold.Oak.name">Gold Axe</entry> <entry key="item.Axe.Gold.Spruce.name">Gold Axe</entry> <entry key="item.Axe.Gold.Birch.name">Gold Axe</entry> <entry key="item.Axe.Gold.Jungle.name">Gold Axe</entry> <entry key="item.Axe.Diamond.Oak.name">Diamond Axe</entry> <entry key="item.Axe.Diamond.Spruce.name">Diamond Axe</entry> <entry key="item.Axe.Diamond.Birch.name">Diamond Axe</entry> <entry key="item.Axe.Diamond.Jungle.name">Diamond Axe</entry> <entry key="item.Hoe.Oak.Oak.name">Wooden Hoe</entry> <entry key="item.Hoe.Oak.Spruce.name">Wooden Hoe</entry> <entry key="item.Hoe.Oak.Birch.name">Wooden Hoe</entry> <entry key="item.Hoe.Oak.Jungle.name">Wooden Hoe</entry> <entry key="item.Hoe.Spruce.Oak.name">Wooden Hoe</entry> <entry key="item.Hoe.Spruce.Spruce.name">Wooden Hoe</entry> <entry key="item.Hoe.Spruce.Birch.name">Wooden Hoe</entry> <entry key="item.Hoe.Spruce.Jungle.name">Wooden Hoe</entry> <entry key="item.Hoe.Birch.Oak.name">Wooden Hoe</entry> <entry key="item.Hoe.Birch.Spruce.name">Wooden Hoe</entry> <entry key="item.Hoe.Birch.Birch.name">Wooden Hoe</entry> <entry key="item.Hoe.Birch.Jungle.name">Wooden Hoe</entry> <entry key="item.Hoe.Jungle.Oak.name">Wooden Hoe</entry> <entry key="item.Hoe.Jungle.Spruce.name">Wooden Hoe</entry> <entry key="item.Hoe.Jungle.Birch.name">Wooden Hoe</entry> <entry key="item.Hoe.Jungle.Jungle.name">Wooden Hoe</entry> <entry key="item.Hoe.Stone.Oak.name">Stone Hoe</entry> <entry key="item.Hoe.Stone.Spruce.name">Stone Hoe</entry> <entry key="item.Hoe.Stone.Birch.name">Stone Hoe</entry> <entry key="item.Hoe.Stone.Jungle.name">Stone Hoe</entry> <entry key="item.Hoe.Iron.Oak.name">Iron Hoe</entry> <entry key="item.Hoe.Iron.Spruce.name">Iron Hoe</entry> <entry key="item.Hoe.Iron.Birch.name">Iron Hoe</entry> <entry key="item.Hoe.Iron.Jungle.name">Iron Hoe</entry> <entry key="item.Hoe.Gold.Oak.name">Gold Hoe</entry> <entry key="item.Hoe.Gold.Spruce.name">Gold Hoe</entry> <entry key="item.Hoe.Gold.Birch.name">Gold Hoe</entry> <entry key="item.Hoe.Gold.Jungle.name">Gold Hoe</entry> <entry key="item.Hoe.Diamond.Oak.name">Diamond Hoe</entry> <entry key="item.Hoe.Diamond.Spruce.name">Diamond Hoe</entry> <entry key="item.Hoe.Diamond.Birch.name">Diamond Hoe</entry> <entry key="item.Hoe.Diamond.Jungle.name">Diamond Hoe</entry> <entry key="lore.head.sword">Head</entry> <entry key="lore.handle.sword">Handle</entry> <entry key="lore.head.shovel">Head</entry> <entry key="lore.handle.shovel">Handle</entry> <entry key="lore.head.pickaxe">Head</entry> <entry key="lore.handle.pickaxe">Handle</entry> <entry key="lore.head.axe">Head</entry> <entry key="lore.handle.axe">Handle</entry> <entry key="lore.head.hoe">Head</entry> <entry key="lore.handle.hoe">Handle</entry> <entry key="lore.oak">Oak Wood</entry> <entry key="lore.spruce">Spruce Wood</entry> <entry key="lore.birch">Birch Wood</entry> <entry key="lore.jungle">Jungle Wood</entry> <entry key="lore.stone">Stone</entry> <entry key="lore.iron">Iron</entry> <entry key="lore.gold">Gold</entry> <entry key="lore.diamond">Diamond</entry> </properties> Could somebody help me, please? Thanks
  16. Ohh, no. I don't know what i were thinking about, I want to create items which will have a common class, like your artifacts.
  17. Yes, i know it can be make without NBT, but using various IDs, but i want to make this items using only one ID, and the cause that i don't use metadata is that the tool are already using it to store damage. P.D.: I think i should have said if before
  18. OK, i want to create items like the ones which have your mod, not artfacts or something like it, items that can have different damages (like tools, every tool have a different max damage) and also items that are "normal" items (with lore, multiple render passes, etc.) I hope you can help me

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.