MCP-Reborn icon indicating copy to clipboard operation
MCP-Reborn copied to clipboard

Code is still obfuscated (I think)

Open wimur opened this issue 3 years ago • 5 comments

Going through the code there are these p_xxxxx values everywhere making it unreadable. Followed the directions exactly, at least I think I did.

Looked at the mappings zip folder and those values (they start with "f" and "m") don't match the ones showing up, so maybe something's different with 1.18?

No idea. Anyone got an idea of what's going on here? Or how to make the code readable?

wimur avatar Jan 14 '22 21:01 wimur

It's unob (class name, method name, package) but field and param are not fully unob not 100% sure you can correct me if I'm wrong

Monmcgt avatar Jan 17 '22 07:01 Monmcgt

If you are using official mappings, no parameter names are deobfuscated. The method and field names should be, though. There is a project named Parchment that aims to add missing parameters.

If you are using MCP mappings, it is provided by Forge.

They cannot deobfuscate everything as Minecraft is quite a complex game [citation needed].

TheKodeToad avatar Jan 17 '22 13:01 TheKodeToad

Can't you just ask Mojang for the full mappings?

pete-the-dev avatar Jan 26 '22 21:01 pete-the-dev

I don't think it's (ever) as simple as giving one of the devs a ring.

Currently, Mojang only provides the log generated by their obfuscater of choice, ProGuard. This log is mainly intended for developers to be able to debug Minecraft when it is obfuscated, but Mojang has since released it to the community.

It doesn't include any of the handy stuff, like parameters or documentation. If Mojang did want to include this, they would have to either develop their own format (which they probably wouldn't do) or use an existing format.

They would also need to combine the ProGuard logs and elements of their source code.

TheKodeToad avatar Jan 27 '22 09:01 TheKodeToad

oh, ok.

pete-the-dev avatar Jan 28 '22 12:01 pete-the-dev