Jump to content

Crash while transforming through ASM


SanAndreaP

Recommended Posts

So I learned how to use ASM and everything works as expected like adding code lines or even methods. But if I try to modify a method in the RenderBiped class, I get a crash:

 

2013-05-13 17:32:29 [iNFO] [ForgeModLoader] Forge Mod Loader version 5.2.5.685 for Minecraft 1.5.2 loading
2013-05-13 17:32:29 [iNFO] [ForgeModLoader] Java is Java HotSpot(TM) 64-Bit Server VM, version 1.7.0_17, running on Windows 7:amd64:6.1, installed at C:\Program Files\Java\jre7
2013-05-13 17:32:29 [iNFO] [ForgeModLoader] Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation
2013-05-13 17:32:32 [iNFO] [sTDOUT] 229 recipes
2013-05-13 17:32:32 [iNFO] [sTDOUT] 27 achievements
2013-05-13 17:32:32 [iNFO] [Minecraft-Client] Setting user: sanandreasMC
2013-05-13 17:32:32 [iNFO] [sTDOUT] (Session ID is -)
2013-05-13 17:32:32 [iNFO] [sTDERR] Client asked for parameter: server
2013-05-13 17:32:32 [iNFO] [Minecraft-Client] LWJGL Version: 2.9.0
2013-05-13 17:32:33 [iNFO] [MinecraftForge] Attempting early MinecraftForge initialization
2013-05-13 17:32:33 [iNFO] [sTDOUT] MinecraftForge v7.8.0.685 Initialized
2013-05-13 17:32:33 [iNFO] [ForgeModLoader] MinecraftForge v7.8.0.685 Initialized
2013-05-13 17:32:33 [iNFO] [sTDOUT] Replaced 85 ore recipies
2013-05-13 17:32:33 [iNFO] [MinecraftForge] Completed early MinecraftForge initialization
2013-05-13 17:32:33 [iNFO] [ForgeModLoader] Reading custom logging properties from C:\Users\SanAndreas\Desktop\MCP\forge_152_780_685\mcp\jars\config\logging.properties
2013-05-13 17:32:33 [OFF] [ForgeModLoader] Logging level for ForgeModLoader logging is set to ALL
2013-05-13 17:32:33 [iNFO] [ForgeModLoader] Searching C:\Users\SanAndreas\Desktop\MCP\forge_152_780_685\mcp\jars\mods for mods
2013-05-13 17:32:35 [iNFO] [EnhPaintings] Mod EnhPaintings is missing the required element 'name'. Substituting EnhPaintings
2013-05-13 17:32:35 [iNFO] [MCPTools] Mod MCPTools is missing the required element 'name'. Substituting MCPTools
2013-05-13 17:32:35 [iNFO] [ForgeModLoader] Forge Mod Loader has identified 13 mods to load
2013-05-13 17:32:35 [iNFO] [mcp] Activating mod mcp
2013-05-13 17:32:35 [iNFO] [FML] Activating mod FML
2013-05-13 17:32:35 [iNFO] [Forge] Activating mod Forge
2013-05-13 17:32:35 [iNFO] [sAPManPackCore] Activating mod SAPManPackCore
2013-05-13 17:32:35 [iNFO] [ClaySoldiersMod] Activating mod ClaySoldiersMod
2013-05-13 17:32:35 [iNFO] [DispCase] Activating mod DispCase
2013-05-13 17:32:35 [iNFO] [EnderStuffPlus] Activating mod EnderStuffPlus
2013-05-13 17:32:35 [iNFO] [EnhPaintings] Activating mod EnhPaintings
2013-05-13 17:32:35 [iNFO] [sAP_Man] Activating mod SAP_Man
2013-05-13 17:32:35 [iNFO] [MCPTools] Activating mod MCPTools
2013-05-13 17:32:35 [iNFO] [ParticleDeco] Activating mod ParticleDeco
2013-05-13 17:32:35 [iNFO] [TStormFix] Activating mod TStormFix
2013-05-13 17:32:35 [iNFO] [TurretMod3] Activating mod TurretMod3
2013-05-13 17:32:44 [iNFO] [sTDERR] Exception in thread "Minecraft main thread" java.lang.NoClassDefFoundError: sanandreasp/mods/ClaySoldiersMod/client/render/CSM_RenderClayMan
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.Class.forName0(Native Method)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.Class.forName(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at cpw.mods.fml.common.ProxyInjector.inject(ProxyInjector.java:50)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at cpw.mods.fml.common.FMLModContainer.constructMod(FMLModContainer.java:471)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.reflect.Method.invoke(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at com.google.common.eventbus.EventBus.post(EventBus.java:267)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:165)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.reflect.Method.invoke(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at com.google.common.eventbus.EventBus.post(EventBus.java:267)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:98)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at cpw.mods.fml.common.Loader.loadMods(Loader.java:503)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:160)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at net.minecraft.client.Minecraft.startGame(Minecraft.java:410)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at net.minecraft.client.MinecraftAppletImpl.startGame(MinecraftAppletImpl.java:44)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at net.minecraft.client.Minecraft.run(Minecraft.java:732)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.Thread.run(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] Caused by: java.lang.ClassNotFoundException: sanandreasp.mods.ClaySoldiersMod.client.render.CSM_RenderClayMan
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at cpw.mods.fml.relauncher.RelaunchClassLoader.findClass(RelaunchClassLoader.java:238)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.ClassLoader.loadClass(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.ClassLoader.loadClass(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	... 30 more
2013-05-13 17:32:44 [iNFO] [sTDERR] Caused by: java.lang.NoClassDefFoundError: net/minecraft/client/renderer/entity/RenderBiped
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.ClassLoader.defineClass1(Native Method)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.ClassLoader.defineClass(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.security.SecureClassLoader.defineClass(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at cpw.mods.fml.relauncher.RelaunchClassLoader.findClass(RelaunchClassLoader.java:227)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	... 32 more
2013-05-13 17:32:44 [iNFO] [sTDERR] Caused by: java.lang.ClassNotFoundException: net.minecraft.client.renderer.entity.RenderBiped
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at cpw.mods.fml.relauncher.RelaunchClassLoader.findClass(RelaunchClassLoader.java:139)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.ClassLoader.loadClass(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	at java.lang.ClassLoader.loadClass(Unknown Source)
2013-05-13 17:32:44 [iNFO] [sTDERR] 	... 36 more
2013-05-13 17:32:50 [iNFO] [sTDERR] Someone is closing me!

 

 

I noticed if I edit something in the MethodNode's instructions list it does this. Here's the code I use:

https://gist.github.com/SanAndreasP/c350016ddaea4d9ff7ae

 

And yes, I know that those method names aren't named like this anymore after reobf, it's just for testing purposes.

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Link to comment
Share on other sites

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

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