Hacker News new | comments | show | ask | jobs | submit login
EVE Online submits DMCA takedown to GitHub (github.com)
70 points by cygwin98 2222 days ago | hide | past | web | 41 comments | favorite

Frankly I would say that CCP is fully in the right here. This person created an account with the name "eveonline" thus pretending to be CCP. While decompiling/reverse engineering is not in itself illegal, falsifying an identity like this is sure shady and should be shut down.

Publishing decompiled source code (of copyrighted works) is a clear violation of copyright law. The problem is not the reverse engineering or decompiling, the problem is also not the name (that might be illegal, too, but it wasn’t complained about), the problem is that copyrighted works were published.

Copyright law doesn’t really care about what you do with copyrighted works as long as you don’t make what you did public.

> Copyright law doesn’t really care about what you do with copyrighted works as long as you don’t make what you did public.

My understanding of the DMCA is that if there's any copyright access control (DRM, etc.), you're not allowed to attempt to circumvent that protection mechanism. Not even recreationally, privately..

Copyright law doesn’t really care about what you do with copyrighted works as long as you don’t make what you did public.

Au contraire. The only reason you can rip a CD and put it on your computer is because of the doctrine of fair use. Without it, copyright law most definitely says you are not allowed to make unauthorized copies, period. What you do with them is not relevant.

It’s a simplification of copyright law (which is bloody complicated) that is, in general, true. (As you yourself said, you can rip a CD. It’s perfectly legal. Uploading said ripped CD to a server and publishing the link is not. Fair use is part of the copyright law. The only reason you can rip a CD is because of copyright law – just what I said.)

>The only reason you can rip a CD is because of copyright law Without copyright law you could rip a CD...

Note that the software's EULA comes into play, as well. It could very well have a clause that disallows reverse-engineering or decompiling altogether.

EULA's are private matters though. They don't come into play with a DMCA complaint, which is entirely based on copyright law.

I write program "A," which I copyright. Somebody translates A into representation "B," which is functionally identical to A, without being literally identical. This seems parallel to the following case:

I write a blog in English. Somebody translates my words to Russian, creating a document that is semantically identical to my words.

Copyright seems to apply here in a most appropriate way.

I am a little confused on where the lines are drawn, and hopefully someone can clear this up for me. Let's keep focused on copyright law; TOS covers some of these other issues, but I am curious where things like DMCA can apply.

I am extending this question as this: I write program A. I compile program A into binary/executable A'. I copyright A and A'. (Is this a bad premise?)

Here are my questions, for which the question is always "Does this violate copyright?"

(1) Somebody translates A to B by renaming identifiers and reformatting whitespace.

(2) Somebody translates A to B by refactoring one function in the code.

(3) Somebody translates A to B by refactoring a huge majority of the functions in the code. (When is it no longer the same? This is similar to the N bars-of-music issue.)

(4) Somebody translates A to B by treating it like a black box and reverse engineering on observation; they replicate most or all the behaviors in a language of their choice and release their code. (This covers some linux game conversion projects.)

(5) Somebody translates A' to B', enabling the project to run on a different chipset.

(6) Somebody translates A' to B, a reverse engineering that leaves it in the same programming language as the original language.

(7) Somebody translates A' to B, a reverse engineering that leaves it in a different programming language from the original language.

(8) Somebody runs A' twice on their own machine (two copies of the running image in memory).

(9) Somebody runs A' one or multiple times on their own machine and provides VNC access to others to play with A'.

(10) Somebody runs A' on their own machine, and the process is forked in a distributed fashion, allowing outsiders to run the process natively on their own client.

IANAL, but here's my understanding of it:

1. Yes.

2. Yes.

3. Yes. No longer the same when all the original code is gone (see BSD Unix). Note, though, that BSD is descried as a rewrite, not a refactor. There may be a line short of that, but I doubt it.

4. No. To be completely safe, though, it should be Chinese-walled.

5. I don't think so, so long as they do not distribute B'. Copyright law contains a statutory right to make modifications to enable it to run. Note that this is often done - VM hosts rewrite code for virtualization, the JVM does JIT compilation, and as an extreme example the Transmeta Crusoe processor rewrote x86 machine code into its instruction set on the fly.

6 and 7 - how is the reverse engineering done? If it is a translation of A', it is probably copyright infringement, but this situation is somewhat confusing to me.

8. I hope not! Further, on modern OSes, the non-modifiable executable memory pages should be shared between processes, so there's only actually one copy in memory but it's mapped into both processes. It might violate a EULA or other licensing terms, but that doesn't make it copyright infringement. Copyright itself isn't very clear on this kind of ephemeral copying so far as I know.

9. This one is getting shadier, but I don't think it's copyright infringment. It might violate a EULA, but not all EULA violations are copyright infringement (depending on a variety of factors).

10. I don't entirely understand this one. If the process is designed to be forked and distributed in this fashion, then absent other license terms I'd have to say probably not.

The expression "violates copyright" is confusing here. None of these ten things violate copyright if "somebody" has your permission to do them.

Also, some permissions are implied. For example, I can copyright some code and post it on my web site. The very act of reading the code in a browser creates a copy of the code in your computer's memory, but permission to create that copy is implied by my posting it on the web. However, that implied permission doesn't extend to you reposting the same code on your web site.

Good point on the expression.

However, that implied permission doesn't extend to you reposting the same code on your web site.

I wonder if the technology changes this. Here is what comes to mind:

Is it okay if in my copy I provided an attribution to the original author? How extensive does the attribution need to be? Is "raganwald wrote this" sufficient, or do I need a link to the original location? If it is a link, do I need to actively ensure the link is still valid, just in case you decide to change the location or stop publishing? If, after publishing your code once, you decide to retract it, can you force me to retract my attributed copy as well? What if my copy is a picture of your code? What if it is an iframe?

And thank you to everyone for these kinds of answers; I think a lot of people have a number of strange opinions and buy into various myths with regards to copyright. Hopefully my questions have covered a good enough number of scenarios to help translate the legalese to layman's terms.

In many cases, you cannot copy the entire thing without permission, even if you provide an attribution. The doctrine governing this case is subject to interpretation:


I think your analogy is wrong. Copyrights apply to creative processes, which the translation from English to Russian would surely involve, or a hand-written port from one language/API to another. A machine translation from computer language A to B would not apply, since it is the work of a tool, not a human.

So if I take someone's photograph and use ImageMagick to convert it to black and white, by your rationale it would not be covered by the copyright on the original photo? Like someone said, it is a derivative work.

The copyright act says:

A “derivative work” is a work based upon one or more pre-existing works, such as a translation, musical arrangement, dramatization, fictionalization, motion picture version, sound recording, art reproduction, abridgment, condensation, or any other form in which a work may be recast, transformed, or adapted. A work consisting of editorial revisions, annotations, elaborations, or other modifications which, as a whole, represent an original work of authorship, is a “derivative work”.

Proving that something is a derivative work is not so cut and dry, and in your case a lawyer may not be able to successfully argue that a black and white filter represents a derivative work. Even the Barack Obama Hope poster was never successfully argued one way or another as to whether it was a derivative work, and the 2 sides settled out of court.

Are you saying that if I write a blog post and you translate it into Russian, I do not have a copyright over your translation of my blog post?

No. He's saying if you design a program that takes an input A of witch it creates the output B, you do not own the copyright to all programs that can create B out of A.

Really? The word "translation" describes the output of a translator, not the translator itself. I don't think either of us are talking about copyrighting decompilers.

I clearly stated that copyright cover translation from English to Russian. I don't expect such miscomprehension from HN of all places.

Edit: to clarify, I see you are questioning whether I'm classing a translation as a derivative work or a independent work. However, this is irrelevant to my assertion that a machine-generated translation confers no copyright protections at all, which is the situation with the github code.

Copyright prevents the creation if derivative works.

So if I take a copyrighted article and translate it with Google Translate I can freely publish said machine translated article on my website? That doesn’t seem right.

That's a takedown request for the decompiled Python code of the Eve client. Python is about 60% of client code, and easily decompiled. Publishing that is not really an extreme act of technical prowess.

Interestingly, Eve uses Stackless Python for much of the network multiplayer engine.

Actually it's been public knowledge that the EVE client uses Stackless Python for many years now: http://www.tentonhammer.com/node/10044. I think they're the first really big test case of the language and I'd say that's been pretty successful.

I had no idea that any such game has so much Python code. I was under the impression that Python (and Ruby) were too slow for most game stuff. very cool.

The UI for Civ 4 is in python. You can modify it to your hearts' content. (I hacked it to communicate with Dragon NaturallySpeaking so the UI would be voice accessible.)

Battlefield 2 uses Python as well.

The Unreal Engine uses a rather slow language called UScript for all the level scripting.

They don't do any real computation with it, its more used for descriptive purposes and small conditionals.

You can write game logic in pretty much any language on modern hardware. The only things that need a highly performant language are the 3D graphics engine and geometry, and any deeply nested AI computational stuff. Your standard game logic of object movement, collisions, physics, is orders of magnitude less demanding than that.

Games are no exception to the standard rule of software, that 95% of the time is spent in 5% of the code. You can use whatever language for the other 95% and not see any meaningful problem with performance.

Eve has had many scaling problems largely because it's difficult to write high-performance game servers in Python.

first of all: 19 hours ago, and the repository is still online?

second: I think it should be pretty easy to decompile .pyc files yourself. An other way would be to provide a decompile script. There are allways possibilities to decompile something.

Right, but putting a generic Python decompile script on github would be legal. Uploading CCP's copyrighted code is not.

This is one of the rare cases in which DMCA request makes perfect sense.

While not hard, it is not super-easy either, they are encrypted etc. Anyone with a bit of knowledge about python and debugging a Windows application and a few hours can do it.

You can't decompile a program if you don't have a copy of said program.

However, when the decompiled sources are uploaded to a public server, nobody needs the original program, to use it.

Never noticed the Github 404 page until now. Clever.


That's dumb, why do they care so much about copyright? I was going to re-new my subscription but I'm not sure I will. Are there any good open source space games that accept donations?

I advocate for a lot of intellectual and software freedoms, but abolishing copyright and all intellectual property concerns (of which this one is entirely valid) seems a bit ludicrous.

Why does it seem ludicrous? Copyright and "intellectual property" have created more problems than they have solved.

You should've known what you were getting into when you originally subscribed. The game has always been closed-source, and pay-to-play (even if you use PLEX, someone is paying).

less qq, more pew pew

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact