If you have the time, there seems to be one more file giving me trouble. The aeb (CraftingManager) file turns up around 19 errors without me adding anything. I tried using the work arounds you mentioned in the first part of the recompiling and troubleshooting section, but it didn't seem to work. Almost all of them say "cannot find symbol". Is this fixable?These are the error messages. It's kinda long, sorry.
If you have the time, there seems to be one more file giving me trouble. The aeb (CraftingManager) file turns up around 19 errors without me adding anything. I tried using the work arounds you mentioned in the first part of the recompiling and troubleshooting section, but it didn't seem to work. Almost all of them say "cannot find symbol". Is this fixable?These are the error messages. It's kinda long, sorry.
Those are explained in the main post, just below the recompile code. Seems a lot of work though.
Anyway, something I should probably put in the main post - I've recently found another decompiler called Procyon. From the initial tests I did with it, it seems to actually do a better job making good code than JD-GUI. If you're interested in trying it out, download Procyon, place it's jar together with the 1.7.5/1.7.4/whatever jar file, open a terminal/command prompt, use cd to browse to the directory and execute:
This will dump all the sources into a src folder, hopefully with better working code. If you're lucky, it may also get rid of most of the errors for you which you'd normally get from JD-GUI!
If you have any further questions, just ask.
Rollback Post to RevisionRollBack
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
Thank you. I downloaded Procyon. It seems to work better for most files, but it was unable to read the aif (Blocks) file. I only have 2 errors on the aeb file now, rather than 19. Trying to fix those.
Edit: Ok, I still seem to be unable to fix these 2 errors. I tried following your instructions in your troubleshooting section, but I still seem to be screwing something up.
On the first error, when I try declaring the variable, it creates another error that says "; expected".
Thank you. I downloaded Procyon. It seems to work better for most files, but it was unable to read the aif (Blocks) file. I only have 2 errors on the aeb file now, rather than 19. Trying to fix those.
Edit: Ok, I still seem to be unable to fix these 2 errors. I tried following your instructions in your troubleshooting section, but I still seem to be screwing something up.
On the first error, when I try declaring the variable, it creates another error that says "; expected".
Thanks for all your help so far!
Hmm, Minecraft just doesn't want to be decompiled. Let's look at how to solve those problems.
The first one, is Minecraft trying to call a method called m on an item from a HashMap. There's nothing wrong doing that, the problem is that the HashMap contains Object values. And there are no methods called m in the Object class. If you look here, you'll see the declaration and code block:
The HashMap is initialized with the types Object and Object. The highlighted line tries to access the m method of Object. Now, that won't work. Lets see at the red boxes I placed around. The second red box puts a character and aca instance to the HashMap. It should therefore be safe to cast the value to aca before calling m:
array3[k] = ((aca) hashMap.get(char1)).m();
As for your second error - when I decompile it, it's decompiled like this:
final aed aed = this.b.get(j);
The variable aed wants to get an aed instance from this.b, but this.b is an ArrayList of Object. Simply cast the assigned value to aed:
final aed aed = (aed) this.b.get(j);
See if this helps you. If not, reply and I'll try to help you more.
Rollback Post to RevisionRollBack
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
You're welcome! Have fun modding (again), hope you don't hit more troublesome bits of code. If you do, I'm here to help you fix them.
Rollback Post to RevisionRollBack
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
Thanks for redirecting me to this awesome tutorial +1 for it being a good tutorial and +1 for the use of Linux.
When it comes to decompiling it gets a bit of a pain in the neck, as in JAD and JD-GUI having libraries that don't exist in the repository. Maybe fernflower could be a good alternative right?
Rollback Post to RevisionRollBack
If your thread has been resolved and you're satisfied with your results then go to: Tools > Edit Thread and add [SOLVED] to the title. Also if your results are satisfying or someone greatly helped you, don't forget to give them a like on their post.
Thanks for redirecting me to this awesome tutorial +1 for it being a good tutorial and +1 for the use of Linux.
When it comes to decompiling it gets a bit of a pain in the neck, as in JAD and JD-GUI having libraries that don't exist in the repository. Maybe fernflower could be a good alternative right?
Glad you liked it
Decompiling is indeed a pain, and JD-GUI is actually fairly bad at it, I've realized. I haven't tried fernflower directly, but a really, really good alternative, open source even, but which apparently very few have heard about, is Procyon. By the time I got to it, only about 8000 people had tried it worldwide, and I must say it does a lot better job than JD-GUI. I get 80-90% less errors from decompilation - you should try it!
And yay, another Linux fan
Rollback Post to RevisionRollBack
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
I was able decompile with no problem and made it into a Netbeans project. Maybe you should update your tutorial for Procyon. JD and JAD are obsolete and either need to be updated or else deprecated.
At least I'm not finding neck scratching code issues now
If your thread has been resolved and you're satisfied with your results then go to: Tools > Edit Thread and add [SOLVED] to the title. Also if your results are satisfying or someone greatly helped you, don't forget to give them a like on their post.
I was able decompile with no problem and made it into a Netbeans project. Maybe you should update your tutorial for Procyon. JD and JAD are obsolete and either need to be updated or else deprecated.
At least I'm not finding neck scratching code issues now
Good to hear I've been telling myself repeatedly to update the tutorial for Procyon, but I haven't had the time. Lots of things happening at school nowadays, so I'm often fairly busy when I'm home. I'll update when I have time, though!
Rollback Post to RevisionRollBack
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
It's a nice decompiler for sure, but there are classes where it put a commented out ArrayIndexOutOfBoundsException: -1 and left the class with only functions and no code. Now I'm not sure if updating the tutorial with Procyon only would be effective :/
I'm going to assume that this missing code is going to be the same in 1.7.2, so I'll be doing copy paste if I can find the code.
I guess that Procyon doesn't understand all the bytecode so far, but at least it's more up to date than JD and JAD
If your thread has been resolved and you're satisfied with your results then go to: Tools > Edit Thread and add [SOLVED] to the title. Also if your results are satisfying or someone greatly helped you, don't forget to give them a like on their post.
Incredible Tutorial! Thank you for making and sharing it with all of us.
You might be interested in a new open sourceDecompiler, DeObfuscator and Mapping project that now exists that is built on top of Procyon with a special focus on decompiling and deobfuscating Minecraft for modding.
It's called Enigma and is made by Cuchaz, the author of Ships mod, Tall Worlds mod and the Magic Mojo Mod Loader (M3L).
Enigma also encompasses a community effort to create consistent open mappings of Minecraft versions that can be used by everyone even in ways that MCP licensing won't allow for their mappings. This mapping will also be the primary mapping used by the under-development M3L ModLoader, also made by Cuchaz, and possibly used by some others too due to the MCP licensing issues.
Plus; Cuchaz could use any community help on these projects that you guys are willing to contribute. Thanks!
Rollback Post to RevisionRollBack
- The Cubic Chunks Mod is back! Be a part of it's rebirth and Development.
-- Robinton's Mods: [ Mirror ] for some of his Mods incl Cubic Chunks Mod, due to DropBox broken links.
What version of javac is required to compile MC 1.8?
I decompiled it with Enigma, then tried re-compiling with javac 1.6.0.26 (didn't modify) anything, and got ~300 errors.
Mike
I would recommend 1.6.0_45. I don't provide support for, or actively use, Enigma. The errors are most likely decompilation errors. Send me a few and I'll tell you what's going wrong.
Rollback Post to RevisionRollBack
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
Those are explained in the main post, just below the recompile code. Seems a lot of work though.
Anyway, something I should probably put in the main post - I've recently found another decompiler called Procyon. From the initial tests I did with it, it seems to actually do a better job making good code than JD-GUI. If you're interested in trying it out, download Procyon, place it's jar together with the 1.7.5/1.7.4/whatever jar file, open a terminal/command prompt, use cd to browse to the directory and execute:
This will dump all the sources into a src folder, hopefully with better working code. If you're lucky, it may also get rid of most of the errors for you which you'd normally get from JD-GUI!
If you have any further questions, just ask.
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
Edit: Ok, I still seem to be unable to fix these 2 errors. I tried following your instructions in your troubleshooting section, but I still seem to be screwing something up.
On the first error, when I try declaring the variable, it creates another error that says "; expected".
Thanks for all your help so far!
Hmm, Minecraft just doesn't want to be decompiled. Let's look at how to solve those problems.
The first one, is Minecraft trying to call a method called m on an item from a HashMap. There's nothing wrong doing that, the problem is that the HashMap contains Object values. And there are no methods called m in the Object class. If you look here, you'll see the declaration and code block:
The HashMap is initialized with the types Object and Object. The highlighted line tries to access the m method of Object. Now, that won't work. Lets see at the red boxes I placed around. The second red box puts a character and aca instance to the HashMap. It should therefore be safe to cast the value to aca before calling m:
As for your second error - when I decompile it, it's decompiled like this:
The variable aed wants to get an aed instance from this.b, but this.b is an ArrayList of Object. Simply cast the assigned value to aed:
See if this helps you. If not, reply and I'll try to help you more.
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
You're welcome! Have fun modding (again), hope you don't hit more troublesome bits of code. If you do, I'm here to help you fix them.
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
When it comes to decompiling it gets a bit of a pain in the neck, as in JAD and JD-GUI having libraries that don't exist in the repository. Maybe fernflower could be a good alternative right?
Fernflower is the best java decompiler =)
Glad you liked it
Decompiling is indeed a pain, and JD-GUI is actually fairly bad at it, I've realized. I haven't tried fernflower directly, but a really, really good alternative, open source even, but which apparently very few have heard about, is Procyon. By the time I got to it, only about 8000 people had tried it worldwide, and I must say it does a lot better job than JD-GUI. I get 80-90% less errors from decompilation - you should try it!
And yay, another Linux fan
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
I was able decompile with no problem and made it into a Netbeans project. Maybe you should update your tutorial for Procyon. JD and JAD are obsolete and either need to be updated or else deprecated.
At least I'm not finding neck scratching code issues now
Good to hear I've been telling myself repeatedly to update the tutorial for Procyon, but I haven't had the time. Lots of things happening at school nowadays, so I'm often fairly busy when I'm home. I'll update when I have time, though!
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.
I'm going to assume that this missing code is going to be the same in 1.7.2, so I'll be doing copy paste if I can find the code.
I guess that Procyon doesn't understand all the bytecode so far, but at least it's more up to date than JD and JAD
Be involved in the Survival of Modding in the Post-Notch Era. Enigma + M3L + LiteLoader/API + BlazeLoader {ALL Open-Source!}
Be involved in the Survival of Modding in the Post-Notch Era. Enigma + M3L + LiteLoader/API + BlazeLoader {ALL Open-Source!}
Ill Help You add creepycrawler77 on skype
You might be interested in a new open source Decompiler, DeObfuscator and Mapping project that now exists that is built on top of Procyon with a special focus on decompiling and deobfuscating Minecraft for modding.
It's called Enigma and is made by Cuchaz, the author of Ships mod, Tall Worlds mod and the Magic Mojo Mod Loader (M3L).
Enigma also encompasses a community effort to create consistent open mappings of Minecraft versions that can be used by everyone even in ways that MCP licensing won't allow for their mappings. This mapping will also be the primary mapping used by the under-development M3L ModLoader, also made by Cuchaz, and possibly used by some others too due to the MCP licensing issues.
Plus; Cuchaz could use any community help on these projects that you guys are willing to contribute. Thanks!
- The Cubic Chunks Mod is back! Be a part of it's rebirth and Development.
-- Robinton's Mods: [ Mirror ] for some of his Mods incl Cubic Chunks Mod, due to DropBox broken links.
- Dungeon Generator for the Open Cubic Chunks Mod
- QuickSAVE-QuickLOAD for the Open Cubic Chunks Mod
I decompiled it with Enigma, then tried re-compiling with javac 1.6.0.26 (didn't modify) anything, and got ~300 errors.
Mike
I would recommend 1.6.0_45. I don't provide support for, or actively use, Enigma. The errors are most likely decompilation errors. Send me a few and I'll tell you what's going wrong.
I AM NOT YOUR PERSONAL MINECRAFT MOD SUPPORT AGENT, SO PLEASE DO NOT PM ME ABOUT PROBLEMATIC MODS THAT ARE NOT MINE. If you're having trouble/crashes with a mod, you'll have better luck resolving it in this forum section than PMing me. If you already made a topic, be patient about responses. If you have troubles with anything non-Minecraft related on your PC, I might be able to help, though, but no promises. Even though I could wish to be, I'm not a wizard.