Jump to content

License Selection Guide


Majiir

Recommended Posts

Disclaimer: I am not a lawyer. Take this advice at your own risk.

Addons and third-party tools posted on the KSP network must include a license. A license spells out what other people can do with your work, whether they have to give you credit, whether they can modify your work, et cetera. You don't have to apply for a license; you can just pick one and stick it on your work. What follows is a short and very much incomplete guide to selecting a license.

Ugh, I don't want to deal with this right now!

Hang on! Just stick the phrase All Rights Reserved somewhere in your download and your forum thread. This allows you to retain all relevant rights to your work, and grants no rights to anyone else. You can always change this to a more permissive license later, so be sure to come back and read the other options.

I don't care. Do whatever you want!

Are you sure? You can release your work into the public domain, which means anyone can use your work for any purpose. This means someone could modify your work, sell it, or use it to develop nuclear weapons - all without giving you any credit! If you're okay with all that, you can use something like the CC0 Public Domain Dedication, the comical WTFPL or simply mention that you release your work into the public domain.

Well, I'd like to get credit for my work.

At this point, it becomes important whether you're licensing software or some other work like art assets. The Creative Commons licenses aren't recommended for software, and some licenses are specialized for software. If your addon consists of both art and software, you should probably license them separately.

For art assets, you can choose a Creative Commons license. These licenses allow the public to copy and distribute your work and require that you be given credit, and you can put restrictions on how your work can be modified or whether it can be used commercially. Keep in mind this allows anyone to use your work, so if you don't want someone using your art in a different mod or a different game, you should consider a different license.

For software, the MIT and BSD licenses are popular choices. They allow users to modify and distribute your work, but you retain the copyright, and the original work must be attributed to you.

But someone could profit from my code!

Creative Commons has a non-commercial use option, but the MIT and BSD licenses indeed allow someone to make money from either using or directly selling your software. I'm not aware of a software license that allows distribution but forbids commercial use; someone should chime in here.

Can I make sure all derivatives stay freely available?

Consider a copyleft license like the GNU General Public License (GPL). The GPL allows people to modify and distribute your work, but all derivatives must provide the source code and must also be licensed under GPL. In particular, the GPL restricts other software from using your work if its license is not compatible with GPL. If you intend for your work to be used in conjunction with other software (by exposing an API or something similar) you should consider the Lesser GPL which drops that restriction.

None of these do what I want.

This is just a brief survey. There are a lot of licenses available for your selection, so if you care about how your work is used, it's well worth taking the time to find one that fits. You can write your own license, and that license will still be valid on the KSP network, but it might be weak in a court of law.

Generally speaking, you can apply a highly restrictive license (like a full copyright) and make it more permissive later, but it's hard to recover your rights once you've waived them to the public. If in doubt, select a restrictive license and work with your users to find a license that satisfies your needs and theirs.

Help me improve this guide.

I am not a lawyer, and I'm not very knowledgeable about licensing. I've written this to the best of my ability, but some information is probably wrong or missing. Let me know how I can improve it, and moderators, feel free to edit this post.

Edited by Deddly
Fixed minor formatting issue
Link to comment
Share on other sites

Great guide. One thing, though:

If you don't want that, consider a copyleft license like the GNU General Public License (GPL). The GPL allows people to modify and distribute your work, but your work cannot be used for commercial purposes.

Incorrect. A derivative of GNU GPL software can be created and sold for as much as someone is willing to pay, but the derivative must abide by the terms of the GPL (the source must still be made available, and derivatives can themselves be made from the sold code so long as they abide by the license terms).

It is also worth noting that the GNU GPL is "viral" regarding derivatives. Even if a license is compatible, if the license does not protect the code in the same way that the GPL does the derivative or linked code must then be GPL'd. (or they could just have to be GPL'd, I'm not entirely sure because I did the following). One way around this is to contact the original authors and get their permission to relicense the derivative under your license; otherwise it remains GPL'd.

Link to comment
Share on other sites

Thanks, I've modified that section. Let me know if I've still missed the mark.

That looks great, much clearer. My information is specific to v2, but I don't think much has changed on the commercial aspect in v3 aside from the "Tivo Clause".

As far as non-commercial use of code goes, the best thing to do is choose a open-source license that not only contains attribution clauses but also protects the "free-ness" of that code. The GPL is pretty good for that*, even without an attribution clause, because its always-open and "viral" nature deter its use commercially; it is quite hard to make money off of code that must be made completely available.

* While I have my own reasons for hating the GPL, and prefer the BSD license, it is undeniably good at protecting the "free-ness" of code.

Link to comment
Share on other sites

But someone could profit from my code!

Creative Commons has a non-commercial use option, but the MIT and BSD licenses indeed allow someone to make money from either using or directly selling your software. I'm not aware of a software license that allows distribution but forbids commercial use; someone should chime in here.

I'm not sure if there is a software license that prohibits commercial use; but there is a license which does provide a massive disincentive to commercial use.

The old four-clause BSD license; the one with the advertising clause. The advertising clause basically says that any derivative software must include an acknowledgement of the original author's work in any advertising materials. Which most profit seeking ventures would not be too happy doing ("Why the hell should we give someone free advertising?")

Then again that also works with the GPL since the GPL does have the requirements that derivative software must be GPL'd, and must have the the source code available. Which most commercial ventures go "NOPE" to.

You can also copyright your work, all rights reserved, and require that derivative works be cleared with you. But that chases away many people.

Creative Commons has a non-commercial clause; but CC isn't for software.

Link to comment
Share on other sites

  • 2 weeks later...

The ToS doesn't say that at all.

It does say a few of unsavory things but Squad makes no claim to ownership of addons for their game, it does say they are allowed to impliment similar features and that's just to prevent features they want to have from being locked out because a mod does it, but they don't have any right to our code or assets, nor do they attempt to say so.

1. AUTHORIZATION

By means of this agreement you appoint us and authorize us as legal representatives for the distribution of the product(s) created by yourself (“your productsâ€Â) for using them in Kerbal Space Program (“the gameâ€Â). Likewise, you grant us the exclusive right, during the term (stipulated in clause 2), in order to:

a) Reproducing and creating works derived from your products only for advertising purposes with your prior authorization, and in case it is necessary to reproduce your product in a physical material support.

Make your products publicly known, whether on the site and/or the website(s) or any of the licensors, licensee, contractors and/or any other means of public knowledge authorized by SQUAD in order to promote the products, the services, the users’ products and/or your products.

c) Distribute your products in the site.

d) Place your products in websites, SQUAD advertisements and, in general, in any other communication means currently known or to be known.

e) Publish on the site the information related to the intellectual property of you products.

f) Make a backup, in any storage means, currently known or to be known, of your products and the information included in the same.

g) To make and keep a file wherein it will include a copy of each one of your products, as well as all the information regarding your products, such as the data of the Kerbal Space Port Account and modifications, the title, rating, date on which the products were made publicly available on the site, information regarding the user who acquired the product and, in general, all the data related to activities wherein each of your products is involved.

h) Authorize licensors, licensees, and contractors of SQUAD and/or any individual authorized by SQUAD, for conducting any of the aforementioned activities.

i) Accept and undertake to refrain from uploading, using, lending, and/or leasing the content eventually entered to the virtual store of the Kerbal Space Program (“the gameâ€Â), to a webpage or videogame other than the one mentioned or to any other place, during the term of this agreement.

1. You give Squad the exclusive right to:

A) create advertisements for or including your stuff, with specific authorization from you at the time

B) advertise your stuff

C) host your stuff on spaceport

D) advertise your stuff

E) say that it's your stuff

F) backup your stuff

G) keep track of what stuff is yours, and how much people like it

H) pass these rights onto companies working for Squad

I ) not host it anywhere else (I hereby grant you the exclusive right to not steal my stuff)

Link to comment
Share on other sites

I can't speak to code, but the vast majority of addon parts are not derivative to squad's part works, unless you wanna argue that having the same diameter makes it derivative, in which case the ownership automotive wheels is in doubt. The assets that compose addon parts are not based on anything from KSP beyond perhaps theme, but even then largely not, and they are not dependent on KSP to do their job. They are prepared as Unity game elements, so they should be able to be loaded into any Unity game; and optionally compiled into an open source container format.

Link to comment
Share on other sites

Playing devil's advocate then, which parts of the file are specifically Kerbal? There's basically a mesh file, texture file, config file, and optional library. If any single piece of that is specifically Kerbal (config or library, possibly?), is the whole "package" Kerbal, or must you license each and every piece separately? How would a court of law look at this? Can I sell the entire package freely if I choose for my own profit if I am the creator? If not, where does this right ultimately exist? The creator, Squad, Unity, or the people?

I'm not real sure what you mean by this. I made the mesh, I made the texture, I wrote the cfg which is in a glorified INI format, what is this optional library? Your use of "Kerbal" is also a bit confusing.

I disagree about the legal teeth, parts with very little doubt, and code I believe just as justly should be protected just as any photographer's picture or author's writings should be protected under standard copyright law. That said, I'm a huge proponent of clarity and transparency, if someone from squad who is legally permitted to make or convey the decision could do like Mojang did and state "An add-on belongs to it's author", that would pretty well clear things up in at least one regard. Assuming that addons do belong to Squad under whatever poorly advised rulings, if they state that addons belong to us, it would be along the lines of a contractual gifting of rights back to us.

Link to comment
Share on other sites

There should just be a forced license for all add-ons:

No re-distributing other people's content unless explicit permission of author;

No distributing derivative works of other people's content unless explicit permission of author;

Add-ons may require other add-ons to work, however those may not be included and instead linked to;

If the author abandons the mod for longer than one month while it needs fixes he loses all rights to it and the community can work on it.

That would be the best for this game, I think.

Link to comment
Share on other sites

Also just to put it out there; nobody's really worried about legal action, and swat has only been involved with a very limited number of copyright violations, but also there are 'teeth' and there is value to having a culture like we have. Obviously your guy has issues, and people are libel* to do that, legally or not, but regardless of the in-court legality of our licenses, message boards such as this are highly prone to taking copyright issues seriously because of the Damocles threat that they may be deemed at fault for things that happen under their authority, and as such, if somebody posts a modified version of Kethane, given Kethane is CC-__-NoDeriv(?), it is extremely likely that the authority of this board will take it down, and I forget if it's elaborated earlier in this thread or another, but Majiir has legitimate reasons to not want other versions of Kethane going around. I on the other hand set out making HexCans with the intent that they be futureproofed, and generally useful to other mod makers, by allowing basically whatever with one limit.

Whether they stand up in court, it's currently assumed that they will stand up here, in the majority of reputable sectors of the KSP modding community, such as here and probably the reddit (I don't know what a reddit is or does but I hear people like it so I'm not gonna go there)

But also, regardless of license, Kethane has no right to the idea that it implements, just the assets (which are sublicensed from other content creators) and code, if somebody wants to make a new resource collection mod, they can.

*this word is not guaranteed to mean what I think it means

Link to comment
Share on other sites

The DN3D mod case you linked was considered a derivative work for rather specific reasons, among them that the mods referenced the game's art library and infringed upon the game's story.

I don't think you can broadly apply these precedents to KSP mods. Your use of phrases like "especially given the lack of legal rights in this case" is inappropriate; until you bring me to court over it, it's absolutely reasonable for everyone to assume I have legal rights over my work.

I get that you're frustrated with abandoned projects, but this has been discussed to death and we already have a solution that has yet to be implemented. Licensing (of any sort) is mandatory, yet many popular mods are still allowed on the network. It does no good to enforce the licensing rule only after mods have been long abandoned. If we want to make progress on the abandonment issue, unlicensed mods must be prevented from using the KSP network. There's no better time to start than right now.

Most mods are released under permissive licenses. If too many are released that disallow derivative works, we can talk about that then, but as far as I know such mods are in the minority.

Link to comment
Share on other sites

  • 2 weeks later...

Thanks for making this post, Majiir, and others who have helped. I think it's important. It's worth mentioning a few other details:

1. Link to the forum rules just to assert that mod content must be accompanied by a Copyright License (of some sort) and source code.

- The KSP API is very permissive and could do harm, so obviously we want to see source code.

- Squad has no right or power to enforce the inclusion or omission of any particular clause in your license. However, omitting a license may lead to people making up their own logic/assumptions -- which gets them in trouble.

2. As a content creator you have default, personal Copyright control over your production. People are often uneasy about picking a license due to ignorance of the topic or maybe they feel they are losing something by offering a license of their Copyright.

- "You always retain Copyright and thus the option to rescind or modify any granted Copyright license if you need to change it."

- "The Copyright licenses provided as examples here do not change your personal Copyright. In order for that to happen, you would need to grant Copyright to someone via a separate statement or declare your content as public domain."

- "It's okay to provide a restrictive license that disallows others from changing or distributing your content. Lots of people don't like this and will retort, but don't let them bully you. They may try to persuade you however, and they're probably not being evil. Sharing is good." ;)

3. Choose a simple Copyright License you understand. Or at least start with a pre-existing Copyright License and modify to your likings. It's easy to make up a strange or potentiall invalid clause in a custom license that makes excessive demands of users or distributors, so try not to.

- Too often I see people try to write their own license and something awkward happens. I won't provide any examples to save them some face. :D

- Some 'big' licenses feature clauses which are very much outside of the scope of a KSP mod and might go overlooked by a novice. e.g. GPLv3 vs Apache 2 in terms of contributor Copyrights.

4. You may offer different Copyright Licenses for different types of content in the same production. e.g. BSD for your plugin and a Creative Commons variant for your part models/textures.

And one more thing. I'm not sure what to say about .part configuration files. Have you seen the new ReStock mod? It's wonderful, but there's really no way to license that properly without a more clear license from Squad. At least that I know of.

Link to comment
Share on other sites

I'm interrested in working on a mod.

I want to grant the permission to copy, modify, redistribute (but not sell) it, or part of it, modified or not.

The GPL license looks like a good start.

My questions are:

-Would i be able to change the license in the future?

-Does the GPL license apply to me?

i.e, if i want to use the code or part of it in a proprietary paying, not GPL compatible program i make, is it possible? Do i have all the rights on it, or am i forced to publish source code?

I don't think that would be a real problem ever, but i prefer to ask.

Link to comment
Share on other sites

I'm interrested in working on a mod.

I want to grant the permission to copy, modify, redistribute (but not sell) it, or part of it, modified or not.

Cool, Glad to have you. An important question is what kind of mod you're wanting to make. If you are making art. (parts, models and textures), then CC-By-NCfits exactly what your wanting.

However if your looking to make a plugin, code and software, CC will work but is not recommended, The only one I've seen for software is this http://vizsage.com/license/Vizsage-Deed-BY-NC-SA.html I know NOTHING about it though. If you're ok with others who are allowed to redistribute your work selling it then there are TONs of licenses out there for you.

The GPL license looks like a good start.

My questions are:

-Would i be able to change the license in the future?

GPL is a good license which adds that any changes others make to your work must also be open for sharing. However, GPL does allow others to sell your work.

-Does the GPL license apply to me?

No, you are the copyright holder, you on the work, the license applies to anyone who wants to use work that is owned by you.

i.e, if i want to use the code or part of it in a proprietary paying, not GPL compatible program i make, is it possible? Do i have all the rights on it, or am i forced to publish source code?

I don't think that would be a real problem ever, but i prefer to ask.

Well let me note, proprietary, and Paying do not make something not GPL compatible. Tivo is GPL. The source code is available on their website. But to answer your specific question, if you are the rights holder you can do whatever you want with the code. HOWEVER. if you use anyone elses code that is GPL in your GPL work then you much publish the source code of your work because you are following the license of that work you're reusing.

Link to comment
Share on other sites

  • 3 weeks later...

What I'm working on, I'm making because I love KSP. It brings out a lot of good qualities in people, it's fun, and it makes me feel happy. It's that simple. Assuming I make it through the project (you never know until you release)...

1) I don't want anybody to use my work to create a better version of exactly the same thing unless it's Squad doing it. They get a free pass if they can make KSP better with it.

2) I don't care how my work is used other than that, just so long as my name is credited visibly. Credited how? Doesn't matter, so long as people see it. That could lead to work. You made a game? Congrats. Put my name down as "Big Jerk" in the credits. I don't care, so long as it shows up.

3) Whatever license accomplishes this, it in no way restricts ME. My work is my work, and I am not bound by the terms meant to protect it. So I could make a better version of my own thing or make a derivative and not credit myself.

That's it. Everything I'm writing can be applied to other things. It's not a KSP derivative. It's a stand alone tech being applied to KSP. If I'm going to take a video game too far, then I might as well do it constructively.

Now here's the problem: The license I describe doesn't exist. But if there's a software law guru out there who could advise, I'd like this to be called the "General Don't Be A Jerk License". Really, it should just be simple.

Link to comment
Share on other sites

1) I don't want anybody to use my work to create a better version of exactly the same thing unless it's Squad doing it. They get a free pass if they can make KSP better with it.

No open-source license that I know of does this. There are licenses out there that simply prevent derivatives from being made, you might want to look into that.

2) I don't care how my work is used other than that, just so long as my name is credited visibly. Credited how? Doesn't matter, so long as people see it. That could lead to work. You made a game? Congrats. Put my name down as "Big Jerk" in the credits. I don't care, so long as it shows up.

Some CC attribution license can do this, I don't know the site off the top of my head but a lot of mod authors use this.

3) Whatever license accomplishes this, it in no way restricts ME. My work is my work, and I am not bound by the terms meant to protect it. So I could make a better version of my own thing or make a derivative and not credit myself.

As the orginal copyright holder you have control over your own code, no holds barred. However, if someone had made a derivative they also have certain rights, so you can't go back and change the license on old pieces of code that are already in circulation.

Now here's the problem: The license I describe doesn't exist. But if there's a software law guru out there who could advise, I'd like this to be called the "General Don't Be A Jerk License". Really, it should just be simple.

"Don't Be A Jerk"? Because someone might improve your code?

Look, all SQUAD asks is that you release the code so anyone can look at it. There is no reason you can't put in a "no-derivatives" clause:

All addons released on the KSP network require a license, the license is to make it clear what other people are allowed to do with your mod.

And as such a proper juridically valid license works just as well as just writing "No distribution" or something along those lines , as long as it leaves no room for personal interpretation.

Link to comment
Share on other sites

I don't mean to be inflammatory with the "don't be a jerk" thing; only humorous about keeping it simple.

I didn't really take it as inflammatory, it's just that my way of thinking about software and code seems to be so very different from a lot of mod authors. That's okay; everybody's got their own way of thinking and doing things, it's just that sometimes I want to know why someone thinks the way they do.

Good luck with the code!

Link to comment
Share on other sites

Thanks! Also, I can explain my perspective though I can't explain that for others as well.

My knowledge of programming has been accumulated across many years of intermittent study and practice. When I get started on it, I devote a lot of time to it and much of what can be learned from a textbook and taken at face value on faith that the book is correct, I've produced by sheer tenacity and learned the hard way. You can see why that would lead to many false starts on projects and stretch the time it has taken me to acquire practically applicable proficiency. Though now, I've met a standard I set for myself years ago: I've accomplished something in code that one I'd consider more knowledgeable has said is impossible, and it only took a few days' tinkering.

So, where does this put me as a budding developer? I have no releases to point to yet, nothing on Github to showcase my skills, no resume in programming, and my academic credentials in the subject consist of a whopping one class on fundamental concepts that could have as easily been taught using Basic as C++. I am under no delusions that I am desirable as an asset to any company yet. So, my next milestone is something worthwhile for a portfolio, and the milestone after that is to prove myself an asset. So, wouldn't it be pretentious of me to worry about whether somebody out there makes money with my code? It would only be beneficial to us both if anybody did.

Now, bring in KSP. The game has motivated and inspired me, so for love of something fun and challenging, I want to do something challenging to help others have fun. My project is one inspired by sheer good will and recreation; not some serious research project or commercial product in development. It's a toy, even if it's a toy with potential applications for more than just KSP.

This is probably a very different perspective from that held by one who understands the nuances of various licenses and the practical consequences of departing from standards thereupon, and I can't say with certainty but would wager that for many mod developers, it's exactly the same. They work out of love for a recreational outlet, and build their skills from that frame of reference. As such, for those of us writing from this perspective, it would be awesome to have a license that better reflects our intentions. See, we could write one up ourselves, but it would be practically meaningless, and we could borrow parts from existing licenses, but we wouldn't understand all the ramifications of such in practice.

Edited by silent_gnomore
a stray apostrophe
Link to comment
Share on other sites

just my 2cents:

I think, especialy the GPL licences is the best for mods. Here are my thoughts:

ffa - License like MIT:

+ everybody can continue my project if i abbandon it

+ everybody can reuse my code -> lowering the need for reinvent the wheel twice and make better mods possible

+ i can use code from MIT-like projects for my project

- if someone use my code in his project, he can forbid me to use his improvements for my project throught choosing a restrictive license

- i can't use code from GPL-Projects, till my licence is incompatible

- it's hard to sell copys from my mod, till everbody can distribute it for a lower price/for free

restrictive - License like "all rights reserved" or "no derivates" and so on:

+ _if_ i'am going to earn my daily money with my mod by selling copys of it, i depend on such a license.

+ i can use code from MIT-like projects for my project

- nobody can continue my project if i abbandon it

- nobody can reuse my code

- i can't use code from GPL-Projects, till my licence is incompatible

"stay free!" - License like "GPL" or "CC BY-SA" and so on:

+ everybody can continue my project if i abbandon it

+ everybody can reuse my code -> lowering the need for reinvent the wheel twice and make better mods possible

+ if someone use my code in his project, i can use his improvements for my project throught the GPL is viral.

+ i can generaly use code from GPL-Projects, till my licence is compatible

+ i can use code from MIT-like projects for my project

- it's hard to sell copys from my mod, till everbody can distribute it for a lower price/for free

-Jasmir-

Edited by Jasmir
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...