Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Okey, so I have for a while now been thinking of rewriting the minecraft server, this time in a language called golang. It's just a example project that I can learn a new programming language through..

My question is: If I -rewrite- the minecraft -server-,:

  • I read the Minecraft EULA, and they only talking about -modifying- the the current server or client. Nothing about re-creating it. Do I violate the EULA if I recreate the minecraft server in golang?

  • If I ever will finish the project, having a completley functional rewritten server. Can I release it?

  • And if I can release it, can I earn money from it in form of donations?

Thanks!

share|improve this question
1  
The most important factor here is: do you have access to/knowledge of the actual source code of minecraft, or is the minecraft serve a black box to you and you only try to replicate the observable behaviour of that black box. In the second situation, you have a much stronger argument that your work is not derived from the minecraft sources. –  Bart van Ingen Schenau Sep 4 at 11:26

3 Answers 3

up vote 4 down vote accepted

You can do this.

What you want to do is called cloning a software. Considering that your server and the original server aren't even in the same programming language, your server is a completely new piece of work and you have all the rights to it.

At least in the united states, the DMCA grants a safe harbor to reverse engineer software for the purposes of interoperability with other software. So when you find out how the Minecraft protocol works by reverse-engineering and re-implement it in your server, this is perfectly legal.

By the way, I am not a lawyer, but I think the clause "We have the final say on what constitutes a tool/mod/plugin and what doesn‘t" is unlikely to hold up in court.

share|improve this answer
    
Okey, This answered my question! :D But do you think I would break any license or agreement if I add a donate button? –  Max Sep 4 at 9:37
3  
@Max I don't think it would because it would be your own work and you can do whatever you want with it. But I am not a lawyer, so when you are serious about this, you should get legal advise. –  Philipp Sep 4 at 9:40
    
I know I should avoid posting comments like "thanks" but, Thank You! ;) This answered all my question.. –  Max Sep 4 at 9:48
    
I wonder... how does the DMCA safe harbor provision mesh with the Oracle v. Google API copyright ruling? –  M. Dudley Sep 4 at 15:59
1  
@M.Dudley AFAIK Oracle v. Google said that Google is allowed to clone the Java API as long as their implementation isn't infringing, so it doesn't contradict this. –  Philipp Sep 4 at 16:22

It depends on whether you read the source code of the Minecraft server and translate it "word for word", then your code is basically a modification of the Minecraft code.

If instead you only see what the server does and then invent your own code to do the same thing, you're fine.

This is why in the past sometimes code has been playing by companies using two teams, one team to read the code and describe it in functional terms, the other only using the functional description to write new code that does the same thing. But you can't do that as one person.

share|improve this answer

I am not a lawyer, but I would have thought that a port of the existing code constitutes a modification of it so is covered by

Any tools you write for the Game from scratch belong to you. . Modifications to the Game ("Mods") (including pre-run Mods and in-memory Mods) and plugins for the Game also belong to you and you can do whatever you want with them, as long as you don‘t sell them for money / try to make money from them. We have the final say on what constitutes a tool/mod/plugin and what doesn‘t.

You can do this, but you can't try to make money for it.

If you had never seen their code and created a server based on reverse engineering the client/server protocol that probably would be a different thing, but I would consider a port to be a modification rather than an independent effort.

share|improve this answer
    
Ok, Thank you! "You can do this, but you can't try to make money for it." So I can't even add a "donate to support" button that wont give the donator anything? –  Max Sep 4 at 9:23
    
If you improperly copy someone else's work it's a violation of copyright, regardless of whether you make money from it. –  Pete Becker Sep 4 at 14:26

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.