Posted November 9, 201212 yr I made a config file and added my blocks, however I crash when I start the game. Crash Log: 2012-11-09 16:10:11 [iNFO] [sTDERR] Exception in thread "Minecraft main thread" java.lang.ExceptionInInitializerError 2012-11-09 16:10:11 [iNFO] [sTDERR] at java.lang.Class.forName0(Native Method) 2012-11-09 16:10:11 [iNFO] [sTDERR] at java.lang.Class.forName(Unknown Source) 2012-11-09 16:10:11 [iNFO] [sTDERR] at cpw.mods.fml.common.FMLModContainer.constructMod(FMLModContainer.java:410) 2012-11-09 16:10:11 [iNFO] [sTDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2012-11-09 16:10:11 [iNFO] [sTDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 2012-11-09 16:10:11 [iNFO] [sTDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 2012-11-09 16:10:11 [iNFO] [sTDERR] at java.lang.reflect.Method.invoke(Unknown Source) 2012-11-09 16:10:11 [iNFO] [sTDERR] at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69) 2012-11-09 16:10:11 [iNFO] [sTDERR] at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) 2012-11-09 16:10:11 [iNFO] [sTDERR] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317) 2012-11-09 16:10:11 [iNFO] [sTDERR] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300) 2012-11-09 16:10:11 [iNFO] [sTDERR] at com.google.common.eventbus.EventBus.post(EventBus.java:268) 2012-11-09 16:10:11 [iNFO] [sTDERR] at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:140) 2012-11-09 16:10:11 [iNFO] [sTDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2012-11-09 16:10:11 [iNFO] [sTDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 2012-11-09 16:10:11 [iNFO] [sTDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 2012-11-09 16:10:11 [iNFO] [sTDERR] at java.lang.reflect.Method.invoke(Unknown Source) 2012-11-09 16:10:11 [iNFO] [sTDERR] at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69) 2012-11-09 16:10:11 [iNFO] [sTDERR] at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) 2012-11-09 16:10:11 [iNFO] [sTDERR] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317) 2012-11-09 16:10:11 [iNFO] [sTDERR] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300) 2012-11-09 16:10:11 [iNFO] [sTDERR] at com.google.common.eventbus.EventBus.post(EventBus.java:268) 2012-11-09 16:10:11 [iNFO] [sTDERR] at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:83) 2012-11-09 16:10:11 [iNFO] [sTDERR] at cpw.mods.fml.common.Loader.loadMods(Loader.java:478) 2012-11-09 16:10:11 [iNFO] [sTDERR] at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:150) 2012-11-09 16:10:11 [iNFO] [sTDERR] at net.minecraft.client.Minecraft.startGame(Minecraft.java:420) 2012-11-09 16:10:11 [iNFO] [sTDERR] at net.minecraft.client.Minecraft.run(Minecraft.java:752) 2012-11-09 16:10:11 [iNFO] [sTDERR] at java.lang.Thread.run(Unknown Source) 2012-11-09 16:10:11 [iNFO] [sTDERR] Caused by: java.lang.IllegalArgumentException: Slot 0 is already occupied by thormod.ThorMod_Berries@73616964 when adding thormod.ThorMod_Ores@4e5f6a 2012-11-09 16:10:11 [iNFO] [sTDERR] at net.minecraft.src.Block.<init>(Block.java:292) 2012-11-09 16:10:11 [iNFO] [sTDERR] at thormod.ThorMod_Ores.<init>(ThorMod_Ores.java:12) 2012-11-09 16:10:11 [iNFO] [sTDERR] at net.minecraft.src.ThorMod.<clinit>(ThorMod.java:75) 2012-11-09 16:10:11 [iNFO] [sTDERR] ... 28 more Base Mod File Code: public static int berryBushStartId; public static final Block BerryBushes = (new ThorMod_Berries(berryBushStartId)).setHardness(0.0F).setStepSound(Block.soundGrassFootstep).setBlockName("BerryBushes").setCreativeTab(CreativeTabs.tabDecorations); public static int oresStartId; public static final Block Ores = new ThorMod_Ores(oresStartId, Material.rock).setBlockName("ThorOres").setCreativeTab(CreativeTabs.tabBlock).setHardness(4F); @PreInit public void preInit(FMLPreInitializationEvent event) { proxy.registerRenderInformation(); new ThorMod_Configuration(event); } ThorMod_Configuration: package thormod; import net.minecraft.src.*; import net.minecraftforge.common.Configuration; import cpw.mods.fml.common.event.FMLPreInitializationEvent; public class ThorMod_Configuration { public ThorMod_Configuration(FMLPreInitializationEvent event) { Configuration config = new Configuration(event.getSuggestedConfigurationFile()); config.load(); this.blocks(config); config.save(); } public void blocks(Configuration config) { ThorMod.berryBushStartId = config.getBlock("Berry Bushes' Start ID", 158).getInt(); ThorMod.oresStartId = config.getBlock("Nether & End Ores Start ID", 2723).getInt(); } } Does anyone see the problem? http://i.imgur.com/Hppni.png[/img]
November 9, 201212 yr It looks like your config file isn't being loaded you could try looking at this tutorial as it shows how to make a simple/advanced config file http://www.minecraftforge.net/wiki/How_to_make_an_advanced_configuration_file http://i.imgur.com/9yLz9.gif[/img]
November 12, 201212 yr So, derp, First, blocks should return config or edit a global one. Do this or the config file won't save the changes. Second, why you make a new object rather than run static functions, ill never know. It will make minecraft go a little faster too. Three, the whole config thing should be in a try catch thing so you don't crash minecraft. You might wanna, I dunno. Four, have the blocks names be global but initialize them after you get all the data for them (block/item id). You would also have global variables of the block id's or put them in a separate objects or array for easy organization. I think that's it, I hope I helped. From, Green0Yoshi Thanks for your time... Hopefully I can reply soon after you reply, but I'm busy, anyways. I can't wait to start working on my mod. I haven't worked on it in a while but it is on Github. It needs much more organization and work, I have lots of plans.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.