-
-
Notifications
You must be signed in to change notification settings - Fork 307
EN_licenseGuide
KP Liberation is, since 0.97.0, licensed under the GNU General Public License v3.0 and not under the MIT License anymore.
The decision to change the license is mostly because of the additional conditions of "state changes" and "disclose source".
We're huge fans of open source and in the past many people used the framework in its continued development stages, which is great and a huge compliment for the mission in its state. Though some people also did this even without respecting the small MIT conditions. Also did edits or added things to their version without a public access to their source code (besides unPBO'ing the mission and looking yourself).
It hasn't just happened once that someone asks us for support, then we asked about a list of changes they've made (GitHub commit history for example) and the answer was analogously "It's in a private repository so that others can't steal the things we've added to be better than other server admins. Can't give you access or show it, sorry".
Also if players join the KP Liberation Discord and seek for support it happens that they use a derivative published in the workshop from someone (which is totally fine) but he doesn't get answers from the derivative creator. Mostly these people don't have a public repository where we could see the changes made to be able to provide support even if we've not done that particular derivative. So they mostly get a unsatisfying "ask the particular publisher via some way", because the support team and we can't give support to versions without disclosed source.
At the beginning it all started by modifying the mission for the KP community and doing some contributions to zBugs repository. Then I just thought "Well, why not sharing it with everyone? Maybe some people like and use it in one way or another". And the mission has gone a good way since then. Much more than I've ever expected. This wouldn't be the case if I would've done this in a small private chamber without letting others have a look at my work.
And with the GNU GPLv3 the disclosed source will be a "hardcoded condition" if someone starts working on it in an own derivative.
First let's give you a brief overview about the permissions, conditions and limitations concerning the usage of KP Liberation.
-
Commercial use
This software and derivatives may be used for commercial purposes.
-
Modification
This software may be modified.
-
Distribution
This software may be distributed.
-
Patent use
This license provides an express grant of patent rights from contributors.
-
Private use
This software may be used and modified in private.
-
License and copyright notice
A copy of the license and copyright notice must be included with the software.
-
State changes
Changes made to the code must be documented.
-
Disclose source
Source code must be made available when the software is distributed.
-
Same license
Modifications must be released under the same license when distributing the software. In some cases a similar or related license may be used.
-
Liability
This license includes a limitation of liability.
-
Warranty
The license explicitly states that it does NOT provide any warranty.
As you've now the general overview about the content of the license, let's start with something a more illustrative kind of guideline what you should do, if you're planning to edit the mission or publish a derivative of it somewhere. Following these will get you on the absolute safe side in your doings. And for a software, which took many many hours of unpaid work, that is provided freely for every ArmA 3 player, it should be natural to just follow and respect some easy steps which are set by the authors. This also ensures, that especially Steam Workshop uploads of derivatives won't be looked at from our side with the Steam Workshop EULA section 6D in mind.
First it's time to make a case difference for what you want to do:
If you use the mission within your community on a non-public server and with no publishing in any kind, you can freely edit the mission code for this purpose. The only condition is that you keep the same license and have the README.md
and LICENSE
file within your mission file (so inside the pbo).
Beside of this non-binding exception it's still a good idea to do the same things listed below, as this will help others with helping you, if you encounter issues in your desired edits.
As soon as you run your edited mission on a server with public access or you publish the derivative somewhere, the following applies for you.
- Make sure you've a GitHub account
- Create a public fork (How to fork) of the official KP Liberation Repository
- Commit every changes or edits to your fork, so it'll be displayed as a readable commit history in your fork
- Make sure your commits are of sensible size and with sensible commit messages (so avoid making changes in 100 files put it all in one commit with the message
myEdit
). Keep in mind that others should be able to follow and understand what you've done. As KP Liberation has a complete documentation and many comments in the source files provided for others, so that they can easily understand the code to edit it to their likings, you should do the same to return that favor (State changes) - Always make sure to include the
README.md
andLICENSE
file in all your releases at least inside the pbo (License and copyright notice / Same license) - With the above ensured and you want to publish your derivative somewhere (which is highly appreciated by the way), you have to make sure that a link to your fork is displayed directly where the user can download/subscribe your derivative of KP Liberation. As example this would mean to write it directly in the description of your Steam Workshop upload. If this isn't provided one can just assume that you haven't followed this easy steps, as nobody will start searching for it to see if you maybe have. (Disclose source)
That's all. Just these small 6 steps.
Anything which is changed via the provided settings or in the config files (which are meant to be edited to a users liking) doesn't count as edit
nor as derivative
. With this in mind there is no sense in publishing any versions of KP Liberation that just contains changed settings/config values. And so we don't permit this.