Legality of Retro-Engineered clients

As I said in a previous post, I’m tinkering with the Minecraft source for fun, as well as the C++ MineTest project.

A question has come to mind, though.

By being privy to the communication protocol, it would be feasible to develop an application capable of communicating with existing Minecraft servers, so you could, theoretically, have the MineTest C++ game connect to a standard Minecraft server (after duplicating all relevant functionality).

So the question is… How legal is this?

Note that I’m not referring to bypassing the account validation rules set by Mojang, I’m just referring to creating an alternate implementation of the client.

Not that I’m planning on undertaking such a monstrous task, mind you, but it’s fun to think about.

I know retro-engineered clients used for “private” MMO servers are frowned upon, but my understanding is that the issue lies with the circumvention of user validation and payment functionalities.

To my understanding the making of such a client should be legal, but connecting it to a server will need agreement of the server owner, particularly if it’s a proprietary protocol and the server was made to communicate with a specific client (unlike http servers which support all sorts of browsers)

The server owner might argument with the “community expierience” e.g. that your client could harm the playing experience of other player which use the official client, and that thus, connecting your client will be forbidden.

But IANAL …

Well, I’m no lawyer, but my understanding it this:

Compatibility with existing software (without copying the code or any patented algorithms) is legal; this has mostly been applied to file compatibility, but I’d think network compatibility could be argued if not already in president.

Server owners would probably be very suspicious if it was detected on the basis that it might have build in cheat hacks or otherwise unfair bonuses in functionality (note: view distance could not really be increased since server only send a limited range – even the maxed visibility in official clients doesn’t work on most servers since they aren’t even told what’s out there). There are already such clients, I think, and they are used almost exclusively by cheaters and griefing (I don’t know how much of Nodus is original versus hacked vanilla, but it looks like its at least practically its own client).

Using the default graphics, sounds, or music from Minecraft would be copyright infringement, no question, though – at the very least if any of it was distributed. This would probably also apply to original graphics that looked distinctly like those of Minecraft (i.e., that could pass as Mojang’s).

Using isn’t the issue. Distributing is. That’s why some open source game clones mitigate the issue by requiring that a copy of the original game is installed on the users hard drive. See CorisxTH (a clone of Theme Hospital) for an example.

Beyond that, server operators are definitely where you’ll find the most resistance. As others have noted, an alternate client would be viewed as a potential cheat or hack by most official servers. Sometimes the court of public opinion is worse than the court of law. :persecutioncomplex:

When minecraft be mojang, it be ok)
Until buket story)
Until it was sold to microsoft)

But in any case untill you’r income from this project be low - no one care)
(if you not in USA, or any similar copylaw maniac country)

So make it - make 2-3k per month and no one care)
(I hope)

I can’t weigh in on the legality of retro engineering games/clients, but I don’t know if telling someone to do it until they get in trouble is good advice. Sure you may be able to get away with it, but what happens if the company smothers you in civil lawsuits for hundreds of thousands of dollars? Also, breaking laws is breaking laws no matter if you get caught or not.

I’ve been thinking about it, not only in terms of Minecraft (it was just an example), but more broadly in terms of clients that adapt to a given protocol.

Now, I’m not a lawyer either, but my understanding is that, given you don’t distribute copyrighted content or use your client to somehow disrupt the service (no hacking or bypassing account verification), it should be legal to create a compatible client as long as the act of looking up the communication protocol is not illegal itself.

What I mean by this is that if the communications protocol is proprietary and, more importantly, encrypted (or otherwise protected) it would be illegal to create a compatible client as it would require illegally hacking into protected content.

I’m thinking along these lines because I’ve worked developing clients compatible with specific proprietary (encrypted) protocols professionally, and the documents detailing the protocol itself had a nice big “confidential” watermark on them.

In the case of Minecraft, I wonder how legal the current decompilation methods are. All mods are essentially built on decompiled versions of the game, so it could be argued that Mojang/Microsoft have tacitly accepted such practices by not cracking down on them, but then again they could turn around and claim that all that information is protected content and cannot be used.

Although I’m guessing a simple packet sniffer could probably make out most of the network communications from the game itself. Hmmmm, that’s an idea there, I’ll see if I can wireshark this out later at home.

In any case, I started this thread as a thought exercise on the legality of retrofitted clients, not as a proposal for a retrofitted client for Minecraft.

There’s also a website here called the Minecraft Coalition. It has an excellent overview of how Minecraft handles packets and what they send, etc.

Well, I have access to the source, so knowing what the game sends is not much of an issue.

I meant it more as an exercise to find out if, even without the source, I could’ve peeked into the communication protocol.

Thanks for the link, though :slight_smile: