What are the best practices for Open Sourcing a game made in Godot?

I wish to open source my Godot games but I keep encountering little mental roadblocks, I am curious on what some of the best practices for doing this are?

My goal is to be able to open source my games so that others can learn from or even take chunks of my code for their projects, without losing my ownership of the project itself or the art assets within it. I am using GitHub.

Some of my questions on this front include:

  1. What is the best way to comply with the license of addons licensed under MIT? I understand how to comply with the license of Godot itself but what about included addons licensed under MIT? How do I comply in the source versus the final product?

  2. Is it a bad call to include addons in the repository? Or is it fair game to just leave them there when I open source the game?

  3. Whats the best method to protect sensitive data the program may rely on while still allowing the software to be built and run without hassle? Is there a way to code in a check for the data that can prevent crashes when it isn’t found?

  4. How do I legally protect my ownership of my game while still allowing others to poke around the source and learn from it/reuse its code?

  5. Is there a way for me to properly protect my ownership of the art assets within the game without closing the source of them? My current method is using GitHub Sub-modules so that the Art is in a separate repository without a license of its own.

  6. Does the answers to any of these questions change if the game itself is paid versus free?

I’m fairly new to a lot of these concepts so genuinely any help or guidance is appreciated! I am aware some of this stuff is probably better asked to a lawyer but I don’t really have that available to me.

1 Like

Not a lawyer!

The MIT license is super permissive. Near CC0

Depends on the addon’s license. For MIT, same as above. For GPL, you are required to include the addon, especially if you made changes to it. In the godot ecosphere usually you’ll want to include add ons. An example of the opposite is FMOD, a licensed plugin for other game engines.

You could separate scenes and assets into a pack and load it dynamically with ProjectSettings.load_resource_pack. This will make active development annoying, might prepare the base code for modding better though.

You could look at some other examples of open sourced games, Lugaru went with GPL, Here’s an online repository fork. I see Art licensed to not be redistributed, code is often not so useful on it’s own. Krita for example is open source, but sold on Steam to great success.

You can deny redistributing, could be a hard and unpopular game to keep up with. You may have to send a DMCA letter! Friday Night Funkin went this route, and a similar sub-repository! Mods usually comply, distributing only their custom songs etc.

1 Like

Being honest this doesn’t really answer the main question

Okay good to know! Include Addons! Can their license file be mixed in with Godot’s if they are both MIT? Or do they need separate files altogether? Does it not matter?

What would be put in here? Files containing sensitive data? Are PCK files encrypted?

Wouldn’t redistributing be necessary for it to be open source?

Thank you for all the answers!

I would recommend separate license files, seems more common in open source.

What ever assets you would like protecting, I am not sure how encrypted pack files behave with this function. Encrypting won’t prevent redistribution, someone could still upload the pack file elsewhere and the key would have to be punched into the executable somehow.

Nope, you can permit specific entities rights to distribution. GitHub, I belive, even allows you to disable forks to help comply.


I forgot to answer 6!

Nope! Copyright should work the same for paid and free intellectual property

1 Like