Man, sounds like the obfuscator really hacks the code up more than I thought... or is some of it the fault of compilation in general?
It's definitely not the compiler's fault. The Java compiler is extremely generous when it comes to including extra metadata in the class files. The obfuscators strip all of that out to make the classes harder to reverse engineer. It's ok though. I'm enjoying the challenge.
Speaking of which, I think I have full support for inner classes and anonymous classes in Enigma now. It looks like I'm not detecting them all, but the ones I can detect are working very well. I'm working on putting out the next release soon.
What I really want is the obfuscated name of an inner/anonymous class that I missed. There's probably something different about it from the pattern I'm using to detect inner classes.
What I really want is the obfuscated name of an inner/anonymous class that I missed. There's probably something different about it from the pattern I'm using to detect inner classes.
I put out new release of Enigma that supports inner classes!
I set the inner/anonymous class detection to very conservative for the release, so right now it's only picking up 163 inner classes. This inference is turning out to be tricky!
For the sake of both solid comparison testing as well as back porting things to 1.6.4 since who knows how many versions of 1.8.x we'll get before it completely stabilizes.. I'd like to ask that it be possible for people to target deobfuscation for mc1.6.4 as well as 1.8.
That way you'll have truly solid and long-standing mcp results (1.6.4) to compare results with vs the hack that mcp for 1.7.2 is (not available for DL from its website and not as complete), and vs the never stopping target that 1.8 may be for a long while. Plus, there are so many mods for 1.6.4 and servers still running with it.
* I know that I would find the results useful potentially for Cart Mod.
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.
I'd like to back up this request for targeting 1.6.4 with the following link. Apparently bukkit is shutting down, so modded servers for 1.8x will be a rarer thing than for prior versions. As such you will be seeing 1.6.4 / 1.7x servers for a long time to come.
It's a funny post coming from Evil Seph as he was also a Mojang employee until last year I guess.... Just more proof that Mojang is in it's end-game of taking over complete control of the modding scene? Or whatever will be left of it after we've all left.
** Since this is precisely the sort of thing that Enigma and M3L were made to combat, it seems appropriate to have them both work for 1.6.4 too.
Thank you
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.
* Whoah.. On top of everything it now appears that Mojang secretly bought bukkit a couple years ago and has owned it since then, per Jeb. Evil Seph has admitted that was true. The ownership of bukkit being transferred to Mojang was a condition of the core bukkit team being hired by Mojang..
Yep, Mojang now owns both bukkit and MCP (Searge), two of the foundations of all Minecraft modding. I wonder when we'll find out that Lexx is on the payroll too?
Yes, Mojang does own Bukkit. Them acquiring us was a condition to being hired. If Mojang want to continue Bukkit, I'm all for it
EDIT: Like someone else pointed out in another thread: Apparently this means that everyone working on the bukkit project for the last two years who was not directly hired by Mojang has been working/developing for Mojang for free for the last two years.
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.
v0.3 beta is up! Lots of bug fixes in this release. Most notably, the identifier referencing system works correctly now. In other words, when you search the call graph for methods that call a(), navigating to the caller will actually put your cursor to where a() is called, not just the declaration of the method/constructor that calls a(). The same is true when you rename something by a reference. After the deobfuscation roundtrip, your cursor should be put back right where you left it.
* This last link is great for people who are at work or wherever they can't use things like skype or even an irc client. Though irc client can still access the same channel.
** Can pick any channel name, the one above seems to be unused though.
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.
Sorry If I'm being rather harsh here but what's the point in mapping if you can't do anything with the mapping?
I love the project I just see doing mapping now pointless as it has no feature to take the mapping anywhere.
The point is that Cuchaz is designing a new mod loader (M3L) to go with his Cubic Chunks Infinite Height Mod (and some other projects), but MCP is being a poo and not letting him make use of their mappings, which is a huge road block for M3L and absolutely everything that anyone might be hoping to do with it (aka we wouldn't be here if there was no point).
Rollback Post to RevisionRollBack
I believe in the Invisible Pink Unicorn, bless her Invisible Pinkness.
It's definitely not the compiler's fault. The Java compiler is extremely generous when it comes to including extra metadata in the class files. The obfuscators strip all of that out to make the classes harder to reverse engineer. It's ok though. I'm enjoying the challenge.
Speaking of which, I think I have full support for inner classes and anonymous classes in Enigma now. It looks like I'm not detecting them all, but the ones I can detect are working very well. I'm working on putting out the next release soon.
The obfuscator removes attributes Procyon use to reconstruct inner classes correctly. So yeah, it does mess it up.
Sure =) I assume you want obfuscated names?
What I really want is the obfuscated name of an inner/anonymous class that I missed. There's probably something different about it from the pattern I'm using to detect inner classes.
EDIT: I see some that I missed. =)
Aight, I'll get a list together after work =)
The latest build detects 500 anonymous classes and 47 inner classes. That's 547 total. By your count of 455, I'm a bit overzealous. =P
I'm making progress though!
I set the inner/anonymous class detection to very conservative for the release, so right now it's only picking up 163 inner classes. This inference is turning out to be tricky!
Anyway, you can download the new v0.2 beta here:
https://bitbucket.org/cuchaz/enigma/downloads
Hopefully it's stable. If not, there's always screaming and yelling until it works.
One of these days, I'll update the OP too... but not today. =)
Here you go =)
Anonymous classes: http://pastebin.com/K9imdF60
Inner classes: http://pastebin.com/rqVgqCs7
Edit: Yeah well, I probably would've used weeks to achieve the same as you have in a day, so I'm pretty sure it's all good =P
Awesome, thanks! I'll look into improving the inner class detection. This should help me find more different cases I need to consider.
I prefer being lazy tho
That way you'll have truly solid and long-standing mcp results (1.6.4) to compare results with vs the hack that mcp for 1.7.2 is (not available for DL from its website and not as complete), and vs the never stopping target that 1.8 may be for a long while. Plus, there are so many mods for 1.6.4 and servers still running with it.
* I know that I would find the results useful potentially for Cart Mod.
- 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
http://www.minecraftforum.net/forums/minecraft-discussion/discussion/2189221-bukkit-shutting-down
http://forums.bukkit.org/threads/bukkit-its-time-to-say-goodbye.305106/
It's a funny post coming from Evil Seph as he was also a Mojang employee until last year I guess.... Just more proof that Mojang is in it's end-game of taking over complete control of the modding scene? Or whatever will be left of it after we've all left.
** Since this is precisely the sort of thing that Enigma and M3L were made to combat, it seems appropriate to have them both work for 1.6.4 too.
Thank you
- 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
Every word in Seph's post has been
lined-throughand beneath it are the following words:1.6.4 please?
- 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
Yep, Mojang now owns both bukkit and MCP (Searge), two of the foundations of all Minecraft modding. I wonder when we'll find out that Lexx is on the payroll too?
Tweets from Jeb + Evil Seph:
{Evil Seph's response = https://twitter.com/EvilSeph/status/502384952944885760 }
Jens BergenstenVerified account @jeb_
Warren over at bukkit seems to have forgotten that the project was bought by Mojang over two years ago, and isn't his to discontinue.
EvilSeph @EvilSeph
Yes, Mojang does own Bukkit. Them acquiring us was a condition to being hired. If Mojang want to continue Bukkit, I'm all for it
EDIT: Like someone else pointed out in another thread: Apparently this means that everyone working on the bukkit project for the last two years who was not directly hired by Mojang has been working/developing for Mojang for free for the last two years.
- 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
https://bitbucket.org/cuchaz/enigma/downloads
Oh, and enum constants are renameable now! Here's the full list of fixes:https://bitbucket.org/cuchaz/enigma/issues?&milestone=0.3 beta
Oh and btw Cuchaz, I think we need an IRC channel for Enigma if there isn't one already.
We don't have an IRC channel. We have a kind of skype group chat going though. PM me your skype name if you want in.
Perhaps something like #enigmamapping at freenode:
http://www.freenode.net/
Go in from any browser at:
http://webchat.freenode.net/
* This last link is great for people who are at work or wherever they can't use things like skype or even an irc client. Though irc client can still access the same channel.
** Can pick any channel name, the one above seems to be unused though.
- 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
The point is that Cuchaz is designing a new mod loader (M3L) to go with his Cubic Chunks Infinite Height Mod (and some other projects), but MCP is being a poo and not letting him make use of their mappings, which is a huge road block for M3L and absolutely everything that anyone might be hoping to do with it (aka we wouldn't be here if there was no point).
I believe in the Invisible Pink Unicorn, bless her Invisible Pinkness.