Live data from Hacker News

Minecraft removing obfuscation in Java Edition

minecraft.net

111–120 of 478 posts

Re: Minecraft removing obfuscation in Java Edition

#111

Minecraft, Roblox, Geometry Dash, Trackmania...these are games that succeeded because of their communities. Alone, they don't provide much for the average player, but creative players build interesting things that appeal to everyone. I think one of the reasons Vision Pro and metaverse have been struggling is because their engines are bad. Not just locked down, but hard to develop on (although I don't have personal ex…

Fortnite has been attempting to be a platform rather than a game for years now. (Epic Games Store too, so you ridiculously have to launch one then the other before you can pick your game.)

Curious to know to what degree the "Creative" maps have fueled Fortnite's success as opposed to the 1st and 2nd party developed experiences.

Re: Minecraft removing obfuscation in Java Edition

#112

Earlier quoted context omitted.

Not only working around proguard, but Minecraft mods are built on top of an incredibly cool and flexible runtime class file rewriting framework that means that each JAR can use simple declarative annotations like @Inject to rewrite minecraft methods on the fly when their mod is loaded or unloaded. This massively revolutionized mod development, which was previously reliant on tens of thousands of lines of manually com…

The devs for Java Edition really have mods in mind nowadays. - They left in the code debug features that they used to strip out. - They left in the code their testing infrastructure that they used to strip out as well. - They started making everything namespaced to differentiate contents between mods (like in this week's snapshot they made gamerules namespaced with the "minecraft:" prefix like items and blocks and wh…

That's definitely true, and I think that's a testament to Minecraft / Java's strong OO design—it dovetails very nicely with the Open/Close principle. However my view is that for a mod to be a mod, there's always going to be stuff that you can't/shouldn't implement just with datapacks—whether that's complex rendering features, new entity logic, or whatever. The Mixin processor makes it really easy to build these kinds of features in a very compatible way

Re: Minecraft removing obfuscation in Java Edition

#113
post #101

Earlier quoted context omitted.

I remember Notch saying in 2010 that he planned to add an official modding API, but it never actually happened. --- Edit: https://web.archive.org/web/20100708183651/http://notch.tumb...

[flagged]

One thing I always notice about this kind of post is that it never only has one accusation of oppressing a demographic group. There's always three of them at once.

Makes it feel lightweight I think.

Re: Minecraft removing obfuscation in Java Edition

#114
post #101

Earlier quoted context omitted.

Me too. Having only a vague familiarity with the game, I thought that mods were using some official plugin system. I had no idea that minecraft modders (presumably kids/teens?) were not only reverse engineering things but also creating an entire ecosystem to work around proguard.

I remember Notch saying in 2010 that he planned to add an official modding API, but it never actually happened. --- Edit: https://web.archive.org/web/20100708183651/http://notch.tumb...

Data packs were released in October 2017! And we had command blocks in 2012 for custom maps

Re: Minecraft removing obfuscation in Java Edition

#115
Asking from a place of sincere ignorance: TFA says the code was obfuscated from the beginning, and that they deliberately kept it obfuscated all these years, and acknowleded the huge community that built mods for Minecraft in spite of it. But what TFA doesn't say:

Why did they keep it obfuscated for so long even after it became readily apparent that almost everyone buys Minecraft to (eventually) play the mods?

Why did they keep it obfuscated even though they acknowledged it didn't really stop modders (or anyone else) from understanding the program?

What occurred recently that caused them to change their mind?

Re: Minecraft removing obfuscation in Java Edition

#116
post #75

Earlier quoted context omitted.

The music and sounds play a large part into the experience though, and are much harder to replace than the textures.

The sounds maybe, but the music? If there's one game whose music I always turn off instantly it's Minecraft. Touhou Youyoumu Minecraft ain't.

I like Minecraft’s music. If there was a way to have it not play when the game is paused or on the title screen, I would probably keep it on.

Re: Minecraft removing obfuscation in Java Edition

#117
post #75

Earlier quoted context omitted.

The music and sounds play a large part into the experience though, and are much harder to replace than the textures.

The sounds maybe, but the music? If there's one game whose music I always turn off instantly it's Minecraft. Touhou Youyoumu Minecraft ain't.

Interesting, I love Minecraft's music. I do listen to it intentionally outside of the game, but it's not quite the same as having it suddenly start up during gameplay. The first I heard of someone "obviously turning off the music" was, I kid you not, yesterday, and now I'm hearing it for a second time today. Would woulda thunk!

Re: Minecraft removing obfuscation in Java Edition

#119

The community obfuscation mappings unrestrictively licensed. The Microsoft ones are not. It's a trap.

Does copyright apply to variable names?

Given the Oracle v Google decision, the likely answer is yes. But then there’s a fair use argument to be made.

Re: Minecraft removing obfuscation in Java Edition

#120

It's extraordinary to me that Minecraft is both the game that has the most robust mod community out there and that the modders were working from obfuscated, decompiled Java binaries. With elaborate tooling to deobfuscate and then reobfuscate using the same mangled names. For over a decade! What dedication.

I am terrified by Minecraft mods always being distributed from dodgy download sites and not rarely come with their own Windows EXE installers. And as far as I know there is no sandboxing at all in the game (uhm, no pun intended) so once installed the mod has full access to your computer?

As someone whose kid has pulled me into the world of using mods (though not (yet) making them for Java Edition) I think this PSA is worth sharing of how to use minecraft mods without pain and with minimal risk, in case anyone is getting started, or has gotten started and finds it frustrating:

1. Use MultiMC to manage instances with various mods, since mods are rarely compatible with each other, and since each version of a mod only is compatible with a single specific point release of the game itself.

Never download any EXE files to get a mod, that does sound sketch AF.

2. mods are always packaged for a particular Loader (some package for multiples and some require Forge, Fabric, or NeoForge), and MultiMC can install any of them into a given instance. Aside from different startup screens there seems to be no difference so idk why we need 3 different ones.

3. Curseforge's website and modrinth both seem to be legit places to get mods from. I personally find the installable Curseforge program itself to be bad and spammy, and would never use that, but the site still lets you directly download the jars you need, and lets you check "Dependencies" to find out what other mods you need.

Post reply on HN