← Back to list

A bit of fun and a lot of legalese: Creative Commons, RPGs and GNUv3

Eduardo del Corral in BajaInnoTech · 2026-04-02 16:10 · 4 claps · 7.6 min read
#gpl #creative-common-license #rpg #software-development #licensing
Open on Medium ↗
Wiki topics: ⚖️ · Law & Justice

A bit of fun and a lot of legalese: Creative Commons, RPGs and GNUv3

In this article I discuss what happens when you wish to create code that is deeply tied to Creative Commons material, and how to actually setup your code-base while protecting your trademarks.

Recently, I (along with my peers at BIT) have been pursuing a strange hobby that marries RPG gaming and software development. And the net result is something that’s very strongly tied to both. So as the project nears its launch face, I found the legal aspect (something I had already written about on my library update article) weighing me down.

First of all, the usual disclaimer: I’m not a lawyer, and while I tried to research things the best I could, this does not constitute legal advice. For legal advice consult a lawyer.

Creative Commons

Now with that out of the way **Creative Commons Licenses:**

“give everyone from individual creators to large institutions a standardized way to grant the public permission to use their creative work under copyright law.”

As a layman basically this means stuff you can use or share for others to use without fear of take-down notices or legal entanglement (as long as you follow the requirements of the license). The goal is creating stuff people can build on and share back.

There are multiple types of CC licenses but since we are interested in code that is directly tied to the CC material, two categories are relevant for this article (note that CC0 is not a part of this discussion):

[embed]About CC Licenses — Creative Commons Creative Commons licenses give everyone from individual creators to large institutions a standardized way to grant the…creativecommons.org

GPLv3

The GNUv3 is a “strong copyleft” license, that is compatible with Creative Commons. Contrary to popular opinion, this license allows developers to make money off of what they do. However, what it does require is that you share the source, and any time anyone makes any changes to the code, it MUST also be shared.

One of the reasons it’s not as popular is that there is a very valid concern of the license “spreading”. That’s because due to its protective nature, any software that uses GPL code is automatically GPL licensed. Hence, it’s easy to have GPL “take over” an entire project’s Licensing. Then there’s the risk of any material presented using GPL code also becoming GPL licensed itself, since at that point you must “prove” that it is completely independent of the code (in which case, it probably shouldn’t be in that repository to begin with).

Working with both licenses?

This is where the nature of the project comes into play…

The goal of this project is to create a toolkit that allows both players and writers to experiment with alternative RPG platforms. However, to achieve this, the toolkit blends scripts with game material, that is it mixes the raw resources with the tools used to write the adventure.

Hence any adventures written with this tool would now require sharing all the code used. While it’s possible to sell the output of this toolkit (provided the CC license allows it, which in this case it does), anyone can download the code and generate the output for free. But hey that’s what the tip jar is for… so all good right? Well maybe…

See in spirit I find nothing wrong with that, however, the issue is the link between the setting and characters that form part of this (the IP) is very closely tied to the source code. It could potentially link ALL to the code, making any derivative works (including purely literary works) directly tied to the software used. And to me, this is unacceptable, since people should be able to do things with this independently of their interest in the tool.

Additionally at first I was concerned about loosing my product identifiers or trademarks (not the case, more on this later). This matters since I’m doing this as a hobby to learn about software documentation and having a bit of fun. But if a repository puts my company branding in peril, it can never be made public. This would discourage anybody who’s not entirely comfortable with doing this as a completely personal hobby, which isn’t terrible but isn’t great either.

Not only that, but now anyone creating something is pressured to release the code before they’re ready. Since the way this tool has been setup, at least at face value, any assets created for use by our users need to be publicly available the moment they are committed (kind of like the whole AI vs human race… but that’s another discussion).

Now this may only be my misunderstanding of the licensing (which is completely normal), but I’m sure I’m not the only one who would misunderstand things if left as they are. And that is already reason enough to try and do better. After all, a perceived threat is just as capable of dissuading people from engaging with your projects as a real one.

A Solution

Now the key point I’d like to make is that, there is something that can be done about this. If you’re like me trying to setup a business while in the process find no issues with enriching the community as you go, then you might also find exemptions refreshing, as can be seen in the “Additional Terms”:

“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law…

Basically, you can exclude your company name, logos and other trademark items. And you do this, by adding these terms to your readme in your repository. It should be something like:

Trademarks

We reserve the right for our trademarks (market differentiators): Company name and logo, other stuff, etc etc.

Now after this there are two possible strategies I can think of, the safest way is to …

Create a repository with your CC material. Make sure this exists on its own. This gives you complete control of how to share the IP you wish to share. People can use it typing by hand, coding or whatever they want without any issues. Make this one repo first. In our case, it gets complicated since each system has its own variant of CC licensing, so our strategy will be to first use the most permissive and publish this alone first!

Once that exists, we can create variants that are tied to more restrictive licensing. So if you wish not just to take the lore but also the a specific set of game mechanics, well… You can, but you need to abide by the CC variant that project is tied to. And similarly, the actual code is released last with all the other stuff done ahead of time and existing independently. This way, that license now applies to the tooling. You are free to use it, but the tooling no longer owns the assets you created.

A Less Optimal Solution

Before thinking about that solution, and the way I would do this if I had no way of separating things, is folder structures. Create a folder with the assets that will only be CC licensed and store the licenses in those folders.

Then, create your software folder with the GNUv3 license, thankfully there’s no need to change this since as we mentioned before, all the exemptions are handled in your readme.

By having each folder own its own license and keeping things separated, your licensing can remain clean. At least in principle, which could be good enough to get started (since this is a good faith effort which thankfully, is not frowned upon — thankfully it seems the GNU is rather friendly as long as you act in good faith, you can always amend things until they’re 100% up to spec).

Actually Licensing your Software

That sounds great, but … how? Everyone assumed it was so obvious it was not really worth explaining. Well, usually GitHub will help out, but in a situation like this I’m afraid GitKraken is currently unavailable. But, the answer is not terribly complicated (thankfully), for GPLv3 licenses download this text file, then place it in…

The root folder of your project? NO! Place it at the folder who’s contents are licensed by GPLv3. Now rename that text as COPYING (no extension). Similarly, search for the text variants of the other codes such as CC-BY 4.0 and download it. Then rename it to LICENSE-CC-BY or whatever the license is (again no extensions). Then create a License.md file describing how these licenses apply. Here’s a copy of mine (once more, not a lawyer, so double check ok?):

License Information

Mysteries of the Fallen Kingdom Copyright © 2026 BajaInnoTech

Our work

This work has four components:

  • Software
  • Setting
  • Assets Trademarks — List the trademarks.

The software

Describe the software elements.

This software is licensed under the GNU GPLv3, you are free to share and modify the code. For more details see COPYING or https://choosealicense.com/licenses/gpl-3.0/

The Setting

Describe the Intellectual property, in our case this is our RPG setting. This intellectual property is made available under CC 4.0 BY-SA, this would be if you wish to use them for non software related creative endeavors. See LICENSE-CC-BY-SA or https://creativecommons.org/licenses/by-sa/4.0/

The assets

All elements in the images folder and other graphical assets (aside from those covered below) are made available under CC BY 4.0 license, you may reuse them as needed provided you attribute the creators see LICENSE-CC-BY or https://creativecommons.org/licenses/by/4.0/

Trademarks

We reserve the right for our trademarks (market differentiators): company name and logo, project name and logo.

Attribution

This work includes material taken from Somebody https://somebody.some-server.com/index.html, which is licensed under the Creative Commons Attribution 4.0 International License. License available at https://creativecommons.org/licenses/by/4.0/legalcode.v3, who themselves have taken material from Something Else by Someone Else and available at https://other.elsewhere.com/stuff licensed under the Creative Commons Attribution 4.0 International License.

Any other sources of content, their creators and the license used it.

Well, what if I have a folder that has material that is licensed under multiple distinct licenses? Ah, well place all of these licenses in said folder, and make sure to describe how licensing works. Keep in mind, that the more complicated the licensing the more people will hesitate to get involved in your project (hence, most projects only have 1 license). Still… Sometimes things get quirky and there are no other options.

Conclusion

And these are two different strategies you could use for your own CC 4.0 meets GPLv3 software projects. And so, at the end of the day, you get to play games with the toys you want to share and allow people to choose between the games and the toys without being forced to use the toys you use. Your software can come packaged with an — uhm — “example” that is already licensed safely. Making sure that at the end of the day, use of your tools is basically an opt in rather than a prerequisite.

Let me know if you found this useful or if I missed anything.

Thanks for reading!


메타데이터
post_id
3e32628fa454
slug
a-bit-of-fun-and-a-lot-of-legalese-creative-commons-rpgs-and-gnuv3-3e32628fa454
url
https://medium.com/bajainnotech/a-bit-of-fun-and-a-lot-of-legalese-creative-commons-rpgs-and-gnuv3-3e32628fa454
canonical_url
https://medium.com/bajainnotech/a-bit-of-fun-and-a-lot-of-legalese-creative-commons-rpgs-and-gnuv3-3e32628fa454
author_url
https://medium.com/@edelcorrallira.dev1
status
ok
fetched_at
2026-06-11 06:59:45