Hacker News new | past | comments | ask | show | jobs | submit login

There are some very terrible coding decisions made within the minecraft community.

The open source server (which is based I believe on the orginal server) actually doesn't use function names to describe what the function does, but functions are given names like, "a","b","c","d" in alphabetical order.

Which means you'll see instances of

d.e(a.b(c.f(new b.g())));




The upstream minecraft server is a JAR that was run through a Java bytecode obfuscator, which mostly works by renaming all functions and fields with names like that. I'm not aware of any open-source server built with such unreadable naming from the start, but there are definitely _decompiled_ versions floating around. Since the original JAR was obfuscated, these decompiled versions are only partially deobfuscated, if at all, hence the unreadable names.


I think that's an artifact of decompiling the minecraft binaries because the original source is not available.


You may be talking about CraftBukkit, which is a modified server using decompiled binaries (now has official upstream blessing).

There is some work done to clean up function names (see http://mcpold.ocean-labs.de/index.php/Main_Page) but yes, you may see obfuscated names.


Uh, that "Open Source Server" sounds a lot like a decompiled, obfuscated official server to me.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: