Jump to content

Recommended Posts

Posted

Hello,

In this post I'd like to start an unofficial [de]obfuscated names list, because many people can't find for example material names and Block class methods. I hope this isssue will disappear fastly, because it's a huge problem. So here it goes, what i have guessed after analysis of basic Minecraft source:

 

I hope this helps, I'll be adding more deobfuscated names.

Thank you for all the names! Now we can start easy modding!

 

The list:

Creative tabs Nice, this one isn't obfuscated.

 

Material Found by WorldsEnder

field_151579_a : MaterialAir

field_151579_b : MaterialGrass

field_151578_c : MaterialDirt

field_151575_d : MaterialWood (like bookshelf, etc.)

field_151576_e : MaterialStone

field_151576_e : MaterialMachine (hopper, cauldron and brewingStand)

field_151574_g : MaterialAnvil

field_151586_h : MaterialWater

field_151587_i : MaterialLava

field_151584_j : MaterialLeaves

field_151585_k : MaterialPlant (+cocaoBeans) (can not be replaced and doesn't burn)

field_151582_l : MaterialGrass (can be replaced and burns)

field_151583_m : MaterialSponge

field_151580_n : MaterialBed

field_151581_o : MaterialFire

field_151595_p : MaterialSoulSand

field_151594_q : MaterialLogic (redstone, rails and flowerpots, lever, torches and tripwire)

field_151593_r : MaterialCarpet

field_151592_s : MaterialBeacon (+stainedGlass)

field_151591_t : MaterialRedstoneLight

field_151590_u : MaterialTNT

field_151589_v : MaterialCoral //Yes, the old coral [Thanks to clashthegame for making a research :)]

field_151588_w : MaterialIce

field_151598_x : MaterialPackedIce

field_151597_y : MaterialSnow

field_151596_z : MaterialSnowBlock

field_151570_A : MaterialCactus

field_151571_B : MaterialClay (+silverfish)

field_151572_C : MaterialMelon

field_151566_D : MaterialDragonEgg

field_151567_E : MaterialPortal

field_151568_F : MaterialCake

field_151569_G : MaterialWeb

func_151565_r(): returns the color on the map

 

World Found by PlatonCraft

func_147437_c(int, int, int) : isAirBlock(posX, posY, posZ) //Checks whether block on coords is air or not

func_147439_a(int, int, int) : getBlock(posX, posY, posZ) //What block is on coords

func_147449_b(int, int, int, Block) : setBlock(posX, posY, posZ, Blocks.block) //Spawns block block to coords

func_149664_b(WorldClient, int, int, int, int): onBlockDestroyed(worldClient, posX, posY, posZ, metadata)

 

Block Found by PlatonCraft and Me

func_149647_a(CreativeTabs) - sets the creative tab

field_149770_b - returns the name of the block (eg. "diamond_ore")

field_149788_p = Block.SoundType("anvil", 0.3F, 1.0F)

func_149671_p() - it seems this is an init() method of block namespaces

func_149672_a() - gets the sound type

func_149682_b(Block) - returns the ID of Block

func_149688_o() - returns the block's material

func_149688_o() : getBlockMaterial() //gets block material

func_149730_j() - if true, the block can't be replaced by leaves

func_149732_F() : getLocalizedName() //gets localized name of block

func_149733_h() - returns block's IIcon

func_149739_a() : getUnlocalizedName() //gets tile.unlocalizedname

func_150495_a() - return stone dig sound id ("dig.stone")

func_150496_b() - returns anvil land sound id ("random.anvil_land")

 

KeyBidings Found by WorldEnder

field_151471_f: Category

field_151472_e: keyCode2 ?duplicate? this one is never changed

func_151462_b(int p_151462_1_): setKeyCode(int newCode)

func_151464_g(): description

func_151466_e(): category

func_151469_h(): keyCode2, never changed

func_151470_d(): return isPressed

KeyBinding(String p_i45001_1_, int p_i45001_2_, String p_i45001_3_): KeyBinding(description, keyCode, category)

 

ChatStye found by mercrutio

ChatStyle.func_150227_a(boolean) : setIsBold(boolean)

ChatStyle.func_150217_b(boolean) : setIsItalic(boolean)

ChatStyle.func_150225_c(boolean) : setIsStruckout(boolean)

ChatStyle.func_150228_d(boolean) : setIsUnderlined(boolean)

 

Help us make the unofficial [de]obfuscated function names in 1.7.2!

http://www.minecraftforge.net/forum/index.php/topic,15275.msg77472.html

Posted

Block:

func_149664_b(WorldClient, int, int, int, int): onBlockDestroyed(worldClient, posX, posY, posZ, metadata)

 

Material:

field_151579_a : MaterialAir

field_151579_a : MaterialGrass

field_151578_c : MaterialDirt

field_151575_d : MaterialWood (like bookshelf, etc.)

field_151576_e : MaterialStone

field_151576_e : MaterialMachine (hopper, cauldron and brewingStand)

field_151574_g : MaterialAnvil

field_151586_h : MaterialWater

field_151587_i : MaterialLava

field_151584_j : MaterialLeaves

field_151585_k : MaterialPlant (+cocaoBeans) (can not be replaced and doesn't burn)

field_151582_l : MaterialGrass (can be replaced and burns)

field_151583_m : MaterialSponge

field_151580_n : MaterialBed

field_151581_o : MaterialFire

field_151595_p : MaterialSoulSand

field_151594_q : MaterialLogic (redstone, rails and flowerpots, lever, torches and tripwire)

field_151593_r : MaterialCarpet

field_151592_s : MaterialBeacon (+stainedGlass)

field_151591_t : MaterialRedstoneLight

field_151590_u : MaterialTNT

field_151589_v : Material? //NOTE: I can't figure it out... please reply or something if you know

field_151588_w : MaterialIce

field_151598_x : MaterialPackedIce

field_151597_y : MaterialSnow

field_151596_z : MaterialSnowBlock

field_151570_A : MaterialCactus

field_151571_B : MaterialClay (+silverfish)

field_151572_C : MaterialMelon

field_151566_D : MaterialDragonEgg

field_151567_E : MaterialPortal

field_151568_F : MaterialCake

field_151569_G : MaterialWeb

func_151565_r(): returns the color on the map

 

KeyBinding:

KeyBinding(String p_i45001_1_, int p_i45001_2_, String p_i45001_3_): KeyBinding(description, keyCode, category)

field_151472_e: keyCode2 ?duplicate? this one is never changed

field_151471_f: Category

func_151470_d(): return isPressed

func_151466_e(): category

func_151464_g(): description

func_151469_h(): keyCode2, never changed

func_151462_b(int p_151462_1_): setKeyCode(int newCode)

 

GuiContainer:

field_146999_f: ySize

field_147000_g: xSize

etc... more will come when I have time and feel tempted to do so :)

 

Posted

World

func_147449_b(int, int, int, Block) : setBlock(posX, posY, posZ, Blocks.block) //Spawns block block to coords

func_147437_c(int, int, int) : isAirBlock(posX, posY, posZ) //Checks whether block on coords is air or not

func_147439_a(int, int, int) : getBlock(posX, posY, posZ) //What block is on coords

Block

func_149732_F() : getLocalizedName() //gets localized name of block

func_149688_o() : getBlockMaterial() //gets block material

func_149739_a() : getUnlocalizedName() //gets tile.unlocalizedname

[spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here

[spoiler=Spoiler]And here too

[spoiler=Spoiler]But that image is pretty good

 

 

 

 

 

 

 

 

 

 

 

 

Posted

Maybe a wiki page would be good for this, if managed properly. Then it's a free-to-edit thing

Okay, good idea, i wanted to post it here first so many people can see and help me deobfuscate this stuff. Creating a wiki page.

 

EDIT: Just came out, i don't know how to and where create a wiki page :P

Help us make the unofficial [de]obfuscated function names in 1.7.2!

http://www.minecraftforge.net/forum/index.php/topic,15275.msg77472.html

Posted

Hey, I tried to put these up for MCPBot, but I was having a heck of a time with IRC.  I'm going to keep trying for my own sake, but I thought you guys might want these.  If someone gets a chance, feel free to feet them to MCPBot.

 

(in reference to net.minecraft.util.ChatStyle)

ChatStyle.func_150227_a(boolean) : setIsBold(boolean)

ChatStyle.func_150217_b(boolean) : setIsItalic(boolean)

ChatStyle.func_150225_c(boolean) : setIsStruckout(boolean)

ChatStyle.func_150228_d(boolean) : setIsUnderlined(boolean)

Posted

Material.field_151589_v was Material.coral in 1.6.4. I did a reference search, but the only result was ItemSword.java. I looked in the 1.6.4 ItemSword.java and at the exact same position I found Material.coral.

Posted

Didn't you notice that you have double-time described methods. Fix it. I have not many methonds, and list already has some.

Block

func_149658_d("modid:BlockBlock"); //sets texture location. this is for "assets.modid.textures.items.BlockBlock.png"

this.func_149647_a(CreativeTabs.tabBlock); //Sets CreativeTab

this.func_149663_c("blockunlocname"); //Sets unlocalized name

this.func_149711_c(15F); //sets hardness

this.func_149752_b(10F); //sets resistance

this.func_149715_a(100F); //sets light value (15F is not max anymore)

[spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here

[spoiler=Spoiler]And here too

[spoiler=Spoiler]But that image is pretty good

 

 

 

 

 

 

 

 

 

 

 

 

Posted

Hi all

 

Is there anyone on this forum who's got a bit of skill at creating a database with a decent web interface?

 

the MCP chatbot is ok at a pinch but it's  pretty clunky and probably its most serious shortcoming is that once someone has submitted a name, it can't be changed again.  even it's wrong or contains spelling mistakes or the comment is rubbish.  It's also a one-name-at-a-time thing and you can forget pattern matching.

 

Unfortunately I know absolutely nothing about how to create something better, but surely one of you has the power? :-)

 

I also wonder if we could collectively persuade Mojang to just release their source directly with the comments stripped and the variable names remapped to something meaningless (like they are now).  The end result would be the same but would save a huge amount of effort and time delay at each release.  Perhaps a kickstarter for funding, I have seen other studios say (eg) "Fund us $1m and we'll release the source code".

 

Just dreaming aloud...

 

-TGG

 

 

 

  • 2 weeks later...
Posted

Hi all,

 

I'm new here. Never modded before, but I have used java for many, many years. So, It reads like a storybook to me.

 

Has anyone taken on the task of creating a deobfuscation database yet. I just do not believe mcpbot can even handle javadoc comments or argument name deobfuscation. I would sure love to contribute to it, as I have already gone through 2 net.minecraft.* sources and refactored local versions that I personally deobed. However, I can not do this in eclipse as the sources seem to be locked.

 

I am considering creating an excel table for my own use, but I'd rather not if there is another alternative. A web database is a start. Then having a way of turning that into an automated tool to use in eclipse would be nice too.

 

~S~

Posted

Hi

 

This message (and subsequent messages) might interest you

http://www.minecraftforge.net/forum/index.php/topic,13353.msg81663.html#msg81663

 

I think there are plenty of folks interested but most of us (me included) lack the skills at the moment.

 

This project from Abrar looks like it will be a valuable part of the puzzle

https://github.com/MinecraftForge/Srg2Source

 

If you've got the skills and motivation for this I'm keen to support you how I can.

 

-TGG

 

  • 4 weeks later...
Posted

Sorry, I don't do IRC... would be great if we had an online database to work with. Here's my finding with BlockStairs:

 

func_150147_e - Sets the bounds of the block for rendering. Defines bottom "slab" of stairs.

func_150145_f - Sets the bounds of the back stair for rendering.

 

  • 4 months later...
Posted

I might get around to doing that tgg.

 

Give me a shout if you need a hand with that, I've created similar systems in the past (former web dev). Could make a system where a user searches for a field or function, and if it exists, it'll display all the information stored about that function. Possibly with a user system so certain people can add/edit entries in the database :P

Posted

Give me a shout if you need a hand with that, I've created similar systems in the past (former web dev). Could make a system where a user searches for a field or function, and if it exists, it'll display all the information stored about that function. Possibly with a user system so certain people can add/edit entries in the database :P

Heh, I am the same, that's why I said I might do it.

But I am not sure if it's not already being worked on, plus I don't want to start yet another project :D

But if you want I can work on it with you, I might do the hosting as well. Contact me via PM if you want.

 

Will do - already started thinking about how to do this and drafting it on my web server :P

 

I'll PM you about it once I've sorted a couple of things out.

Posted

I am often digging through some rarely-used code, at least judging by the amount of obfuscation.

 

Is there any way I could be helpful in the process?

 

I myself have thought about writing proper API documentation for fields and functions that I feel could benefit from it (which, frankly, is most of them) - but as you so rightly put, there is no sense in doubling or even tripling efforts if a bit of cooperation is possible :)

 

Not to mention 1.8 is "right around the corner", relatively speaking.

Posted

Splendid work!

 

However, I registered, but "something went wrong", and I never received my activation email.

 

Is there any chance you could manually activate my account, or resend the activation email, or delete my user and resolve the issue I may have had?

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.