0

I'm programming a game and am considering using some code released under the GPL license. I realize this means I will have to make the source code available and that won't necessarily be a problem even though I'll be selling the game, as long as I'm correct about the following few points (which I'm hoping someone can confirm).

Am I right in thinking that I will still have the copyright to any graphics or audio I created, and I won't be required to distribute them for free or under the GPL license?

Also, what about other external files that do not directly contain the GPL licensed code, specifically, in my case, separate files containing number arrays: would I also be required to distribute those?

I'm also assuming people won't be able to sell copies of the game. Is that right?

1

Assuming GNU GPLv3:

  1. Am I right in thinking that I will still have the copyright to any graphics or audio I created, and I won't be required to distribute them for free or under the GPL license?

Yes, that's correct. Such a work is called an aggregate by the GPL. See the GPL FAQ:

An “aggregate” consists of a number of separate programs, distributed together on the same CD-ROM or other media. The GPL permits you to create and distribute an aggregate, even when the licenses of the other software are non-free or GPL-incompatible. The only condition is that you cannot release the aggregate under a license that prohibits users from exercising rights that each program's individual license would grant them.

  1. Also, what about other external files that do not directly contain the GPL licensed code, specifically, in my case, separate files containing number arrays: would I also be required to distribute those?

Are they linked into the executable or binary files? Then yes, you'll have to distribute the source code.

  1. I'm also assuming people won't be able to sell copies of the game. Is that right?

That's incorrect. See section 4 (Conveying Verbatim Copies):

You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program.

You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee.


You would probably benefit from first reading the license in its entirety and its FAQ and then asking or searching for any remaining questions you may have.

  • As I understood it, the game wouldn't actually include the source code; it would be compiled into an executable with separate files for graphics, audio etc. The source code would be available separately, meaning that people could do what they wanted with the source code (e.g. sell it or whatever) but wouldn't be allowed to sell the actual game. Have I misunderstood that? – CharlesStamp Jul 7 '16 at 14:30
  • @CharlesStamp I guess this confusion comes from our different interpretations of what "the actual games" constitutes. Your comment is clearer than your questions or my answer, and it's also correct. The part of the GPL I quoted above says that you can sell copies of the source code. So this would not apply to binaries or aggregates or other things that are not source code. – nanny Jul 7 '16 at 14:52
  • @CharlesStamp: they could compile the source code and sell the resulting binary, with their own graphics, audio etc. – RemcoGerlich Jul 7 '16 at 15:10
  • @nanny: Section 6 explicitly allows conveyance of the object code under the same restrictions as section 4, and mentions that one can e.g. "d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge." So charging for binaries is also permitted. – Nathan Tuggy Aug 6 '16 at 18:48
0

This is my personal understanding, I am not a lawyer:

You will have copyright over everything you make, of course, but not over the entire work as it contains the 3rd party library, over which the author of that has copyright. So the question is what you need to do to distribute the entirety.

Graphics and images are not part of the source and don't have to be under the GPL, I'd say. For instance when Doom's source was released, you still needed a copy of the original game to be able to run the full game (or use 3rd-party textures, WADs, etc). Link: ftp://ftp.idsoftware.com/idstuff/source/doomsrc.txt

For the separate files containing number arrays: the key thing is that the source code you provide under the GPL must contain all the parts that combine to make a useable program. If a user can compile all your source and point his custom version to the data files he has, that may be enough, but if the data files are really source files and you need them to create a working executeable, then no. If they are data files then that makes them very similar to the graphics, I'd say.

People will definitely be allowed to sell all the GPL parts, as long as they give their customers all GPL rights again. They can also put all the code on Github if they want, or do anything else that the GPL allows them to do.

0

Roughly speaking, if your program has components that you are using under the GPL license, and it is a derived work (so nobody else would have the source code), then you have two choices:

You either distribute your program together with the complete source code, and allow anyone to use the source code under the GPL license; if you distribute that way you have no further obligations.

Or you distribute your program without source code, and you give the source code to anybody who asks for it charging no more than your reasonable cost, and you also allow anyone to use the source code under the GPL license. The second case is less convenient because you have a continuing obligation to do work for other people (distributing the source code), and everybody in the world can ask for the source code, not just people receiving the program from you.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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