Posted January 17, 201510 yr When I try to run Minecraft with my mod in it, it crashes, giving me this error: ---- Minecraft Crash Report ---- // Ouch. That hurt Time: 17/01/15 21:42 Description: There was a severe problem during mod loading that has caused the game to fail cpw.mods.fml.common.LoaderException: java.lang.NoSuchFieldError: wood at cpw.mods.fml.common.LoadController.transition(LoadController.java:162) at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:515) at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:239) at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:480) at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:867) at net.minecraft.client.main.Main.main(SourceFile:148) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) Caused by: java.lang.NoSuchFieldError: wood at info.satscape.simukraft.common.BlockLightBox.<init>(BlockLightBox.java:23) at info.satscape.simukraft.common.ModSimukraft.preInit(ModSimukraft.java:370) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:513) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) at com.google.common.eventbus.EventBus.post(EventBus.java:275) at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:208) at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:187) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) at com.google.common.eventbus.EventBus.post(EventBus.java:275) at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:118) at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:513) ... 10 more A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- System Details -- Details: Minecraft Version: 1.7.10 Operating System: Windows 7 (amd64) version 6.1 Java Version: 1.8.0_25, Oracle Corporation Java VM Version: Java HotSpot 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 66065672 bytes (63 MB) / 238530560 bytes (227 MB) up to 1060372480 bytes (1011 MB) JVM Flags: 6 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx1G -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0 FML: MCP v9.05 FML v7.10.85.1277 Minecraft Forge 10.13.2.1277 4 mods loaded, 4 mods active mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized FML{7.10.85.1277} [Forge Mod Loader] (forge-1.7.10-10.13.2.1277.jar) Unloaded->Constructed->Pre-initialized Forge{10.13.2.1277} [Minecraft Forge] (forge-1.7.10-10.13.2.1277.jar) Unloaded->Constructed->Pre-initialized satscapesimukraft{1.0.0 Beta} [sim-U-Kraft] ([1.7.10]Sim-U-Kraft Reloaded 1.0.1.zip) Unloaded->Constructed->Errored The file it refers to is here: package info.satscape.simukraft.common; import java.util.List; import java.util.Random; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; public class BlockLightBox extends Block { private IIcon icons[]; public BlockLightBox() { super(Material.wood); setLightLevel(1.0F); this.setCreativeTab(CreativeTabs.tabMisc); setStepSound(Block.soundTypeWood); setHardness(2F); setResistance(1.0F); setTickRandomly(true); setBlockName("SUKlight"); } @SideOnly(Side.CLIENT) @Override public void registerBlockIcons(IIconRegister iconRegister) { icons = new IIcon[8]; icons[0] = iconRegister.registerIcon("satscapesimukraft:blockLightWhite"); icons[1] = iconRegister.registerIcon("satscapesimukraft:blockLightRed"); icons[2] = iconRegister.registerIcon("satscapesimukraft:blockLightOrange"); icons[3] = iconRegister.registerIcon("satscapesimukraft:blockLightYellow"); icons[4] = iconRegister.registerIcon("satscapesimukraft:blockLightGreen"); icons[5] = iconRegister.registerIcon("satscapesimukraft:blockLightBlue"); icons[6] = iconRegister.registerIcon("satscapesimukraft:blockLightPurple"); icons[7] = iconRegister.registerIcon("satscapesimukraft:blockLightRainbow"); } @Override @SideOnly(Side.CLIENT) public IIcon getIcon(int side, int meta) { return meta < 8 && meta >= 0 ? icons[meta] : icons[0]; } public BlockLightBox idDropped(int par1, Random par2Random, int par3) { return this; } @Override public int damageDropped(int j) { return j; } @SideOnly(Side.CLIENT) public void getSubBlocks(Block blockId, CreativeTabs par2CreativeTabs, List par3List) { for (int meta = 0; meta < 8; ++meta) { par3List.add(new ItemStack(blockId, 1, meta)); } } @Override public int getBlockColor() { return 0xffffff; } } And this is how I register the block: @EventHandler public void preInit(FMLPreInitializationEvent evt) { lightBox = new BlockLightBox(); } @EventHandler public void initLoad(FMLInitializationEvent event) { GameRegistry.registerBlock(lightBox, "SUKlight"); }
January 17, 201510 yr Author It's worth noting, based on other people with this issue, that I did build it with gradle, and I didn't package it from eclipse...
January 17, 201510 yr Hi Well it sure looks like a reobfuscation problem to me... your mod should use "field_151575_d" not "wood". Just to confirm - you used gradlew build, and then you used the jar you found in build\libs? If so - I don't have any idea, sorry! Your code looks perfectly normal to me. You could try a fresh install of forge, it might perhaps help. -TGG
January 17, 201510 yr Author I didn't use any jar, I made a zip file from the files in the classes folder. Is that where I went wrong?
January 17, 201510 yr I didn't use any jar, I made a zip file from the files in the classes folder. Is that where I went wrong? Yep The gradle build command creates a jar in build\libs. If you zip up the classes, they still have all the deobfuscated names (like "wood"), and when you try to run it as a mod, none of the names match up. Hence the error message you got. But the jar in build\libs has all your code converted to use the original ("obfusctated") vanilla names (like "field_151575_d"). Try it and see... -TGG
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.