Transport Tycoon Forums

The place to talk about Transport Tycoon
It is currently Sat Mar 17, 2018 12:32 pm

All times are UTC

Post new topic  Reply to topic  [ 5 posts ] 
Author Message
 Post subject: Copyright and licenses
PostPosted: Sat Jul 16, 2011 2:38 pm 
OpenTTD Developer
OpenTTD Developer
User avatar

Joined: Wed Nov 07, 2007 10:44 pm
Posts: 9025
Location: Sol d
From time to time licenses and copyright are discussed again when it comes to find a license for some collaborative work, in the (O)TTD(P) domain mostly when it comes to NewGRFs. So I try to give a somewhat brief overview.

The idea for this article was born back when there was the big discussion about the future license of OpenGFX. At that time there wasn't even the now well-established online content service of OpenTTD, BaNaNaS, nor was there the DevZone.

In that time (late 2008) we, mostly dihedral and myself, tried to come up with a NewGRF collection which can be freely distributed. The #openttdcoop grfpack is similar to this, so is BaNaNaS now - though both in principle only require that they themselves may distribute the NewGRFs they offer. Thus the right to re-distribute a NewGRF found on BaNaNaS or in the #openttdcoop grfpack is not automatically granted. We contacted many NewGRF authors and asked them to attach a free license to their NewGRFs (most didn't have any license back then).
Though the initial motivation, ease to extend the #openttdcoop grfpack, is now obsoleted by BaNaNaS in a convenient way, all the arguments exchanged back then remain valid. We read a lot of licenses and had a lot of license discussions with various people. Further, even though copyright is a tedious and boring topic for most people (including myself), copyright and license issues don't and didn't get better or easier during the last years.

Copyright and Licenses

What is copyright?
Everyone who creates something somewhat original or sufficiently alters existing work automatically has the copyright on his or her work. Some countries and legislations allow to transfer the copyright entirely, others (only) allow to transfer the exclusive rights to use the work. This is a technical (or rather legal) detail and shall not be of much importance here; but in essence it means, and only that is important for our purpose: ALL work is copyrighted.

What is a license?
A license is a piece of text which accompanies some work which tells the recipient or user what she or he may and may not do with the work - in our case the piece of software or sprites or NewGRFs and alike. By default NOTHING is allowed, and everything not explicitly mentioned or conceded by the author or artist in the license is forbidden.

Fair use: What may I do?
Use which cannot be forbidden are uses which are covered by the fair use doctrine in US law and which has equivalents in other legislations:
copies (...), for purposes such as criticism, comment, news reporting, teaching (including multiple copies for classroom use), scholarship, or research, is not an infringement of copyright.

For the purpose of our community this means
  • You may copy the work for your own use on your own machines.
  • You may post screenshots of the (unmodified) work.
  • You may for your private enjoyment alone do with the work what you like, including any modification
This also means, unless explicitly allowed by the license you may NOT
  • Give the work (software, NewGRF,...) to other people
  • Neither give modified versions of the work to other people by any means (forum posting, links, e-mail, etc).
  • Make available parts of the work to others (source code, de-compiled nfo, sprites,...)
A border case are screenshots of games with NewGRFs which feature modified versions of them.

For everything else you need explicit permission by the author. If it comes to concept studies or code snippets to explain stuff or screenshots and sprites with modified content which includes work from other people, it seems to be established community practice to give explicit credit to the authors or artists whose work you use. Prior to publishing the finished work (e.g. as a NewGRF or AI) you should of course make sure that you have permission to actually (re)use these works by the other people whom you build upon - and you should always give them credit - that's the least you can do.

Why a license?
As a community usually lives from a process where people build upon the work which other people created, or people jointly work on a NewGRF (or AI, or OpenTTD, TTDPatch themselves,...), and contributors may even change over the course of years for the larger projects, a license needs to be found which actually allows other people to continue and re-use the work. On the other hand, no one in our community actually makes money with the work which goes into projects targeting NewGRFs, AIs, or the programmes themselves, thus the "only" merit which one can get is credits and appreciation.

Also today, a number of old NewGRFs have no license at all, thus for every use one needs to contact the author. Even as of today there are a number of NewGRFs where it turned out to be impossible to contact the authors or at least all authors - which basically boils down to 'you may do nothing' with the NewGRF - unless, of course, a license was shipped along with the NewGRF which specified what we may and may not do. This is very unfortunate, especially as this is also true for some very nice NewGRFs which other people might want to build upon or which other people than the original authors like to update:

Case study: OpenGFX
Here it proved very crucial to be allowed to continue work by others without their express consent. OpenGFX was started many years ago and has a large list of contributors. Among them those which cannot be contacted anymore - which required that their contributions needed to be drawn anew due to a lack of license for them. But the choice of the GPL v2 made sure that we could continue with the project unhindered. Anyone will always be able and allowed to continue with the project without any violation of any laws or copyright infringement - provided the license remains GPL v2. Besides that, choosing the same license as OpenTTD made sure that there can never be any problems in distributing OpenTTD with that base set as they of course are compatible licenses.

Case study: TTRS
TTRS, the total town replacement set, is another example where a well-chosen license helped to keep the set up to date. It was originally written by Zimmlock and others and placed under a CC-BY equivalent license:
If you enjoy TTRS-v3, think of the artists and coder who made that possible. The set was drawn by Zimmlock (most of the graphics), George, the, Oz, Red*Star, Purno and Pikkabird, and was coded by Csaboka. TTRS-v3 has been made for the Transport Tycoon fans; you are free to use it at your disposal, as long as you give the right credits. That includes modifications and enhangements to individual drawings and code slices (see license.txt for the legal words).

This simple statement allowed FooBar and me to add support for the parameter GUI as well as a switch to treat banks as normal houses for the sake of compatibility with FIRS. I'm sure this is in the spirit of the original set writers and artists - but it could not have been done without this license.

Some licenses in review
Thus, let's review a few licenses which can make sure that the work for the community won't get lost and will live past the presence of a single author.

Creative Commons Licenses
Creative Commons licenses allow a bit of differentiation, while all of them require to give credit to the author by anyone who somehow re-uses or re-distributes that piece of work:


Additionally, you can choose any mix of the following in order to fine-tune the rights granted:

  • ImageNon - commercial use only.
    This choice excludes the NewGRF also from being included in cover-DVDs of computer magazines and alike which ship e.g. OpenTTD bundled with base sets and a hand-selected set of NewGRF.
  • ImageNo derivatives may be made.
    This actually is in terms of NewGRFs or AIs or similar content a very bad decision. The work is lost and won't live beyond the author as it cannot be supported anymore.
  • ImageShare derivatives only under the same or similar conditions
See also the creative commons license helper.

GNU General Public License
The GNU license exists basically in two versions, version 2 and version 3.

The GNU General Public License v2 is the older and (still) more wide-spread license and is the same license the core programmes of the TTD community, OpenTTD and TTDPatch are released under. It's a viral license as in that it requires derivative work to use the same license (unless express permission is given by the authors to use another one).

A piece of work licensed under the GPL allows you
  • to (re)distribute the work
  • to modify the work and publish it
under the conditions that you
  • keep the copyright notices
  • give credits and clearly indicate your own modifications
  • make the sources publicly available along with the binary/NewGRF

Version 3 is the more "modernized" version but more strict as well. It's considered incompatible with version 2 unless the set is licensed version 2 or later.

BSD-style licenses
This is an easy license: Copyright notices in the code must be retained and must not be removed, but no other obligations. Binary distributions (like compiled NewGRFs) may be made without the need to lay open the source coded to anyone under any conditions.

There's also the modified BSD-style license which removes the need for excessive credits in advertisement material (like adding them to postings about new versions of a NewGRF would be). The need to give credits in the readme and to retain original copyright in sources is untouched by this.

Artistic License
It comes in two versions, Version 2 is similar to the GPL. You're allowed
  • to (re)distribute the work
  • to modify the work and publish it
under the conditions that you
  • document how it differs from the original version
  • make source code available and in particular offer it to the original author
  • you use this license or a compatible one

Adding a license to your work
If you are currently making a NewGRF or already have one which misses license information you can simply download the license's text from one of the following licenses and include it with your NewGRF:
  • CC BY: Attribution
  • CC BY-SA: Attribution and share under same conditions
  • CC BY-NC-SA: Attribution, no commercial use and share under same conditions (incompatible with GPL)
  • GPL v2: Attribution, public sources
  • GPL v3: Attribution, public sources
  • BSD-style: Attribution
  • Artistic License: Attribution, public sources
Note that ALL licenses listed here require you to attribute the work of others you base your work upon, but NONE requires that you ask the original author prior to doing anything with that work. Still it is considered good manners and a kind thing withing our community to at least inform the author (if she or he is still around) about your intentions.

Chosing the GPL, modified BSD, Artistic or the CC-BY license makes sure that the NewGRFs remain the intellectual property of the respective artists and authors (i.e. you!). At the same time it allows others to continue or bug fix the work under the condition that exactly the same conditions are granted: give credits, indicate what you added and for GPL also making the source available; thus the work will not get lost for the community. All it takes is to mention the license in the readme and possibly add the corresponding license.txt to your set.

Thanks for critical review of this article go to Alberth, frosch, michi_cc and FooBar and for earlier versions - as far as my memory serves me - to Ammler, Rubidium, Yexo, orudge and anyone whom I forgot :-)

OpenTTD: manual | online content | translations | Wanted contributions and patches
#openttdcoop: blog | wiki | public server | DevZone | NewGRF web translator
DevZone - home of the free NewGRFs: OpenSFX | OpenMSX | OpenGFX | Swedish Rails | OpenGFX+ Trains|RV|Industries|Airports|Landscape | NML

PostPosted: Sat Jul 16, 2011 10:22 pm 
User avatar

Joined: Sat Nov 27, 2004 3:05 pm
Posts: 5136
Location: Canada
Great minds think alike. Just last week I was thinking somebody should do something like this. :D
Very well done. :bow:
I've added it to my bookmarks. 8)

wallyweb on tt-forums: Screenshots - Projects - Releases
wallyweb on Simuscape: Projects - Releases
Other Stuff: TTDPatch 2.6 "Nightly" download - cirdan's OpenTTD branch (New Map Features)
Screenshot Of The Month Contest Winner: August 2015 - Tied May 2016 - January 2018

PostPosted: Wed Jul 20, 2011 2:36 am 
TTDPatch Developer
TTDPatch Developer

Joined: Wed Feb 18, 2004 3:06 am
Posts: 10285
planetmaker wrote:
GNU General Public License
The GNU license exists basically in two versions, version 2 and version 3.

Version 3 is the more "modernized" version but more strict as well. It's considered incompatible with version 2 unless the set is licensed version 2 or later.

Points of order:
  • GPLv3 is *always* incompatible (not merely "considered incompatible", but fully "is incompatible".) with GPLv2. Even if a work is licensed as "GNU General Public License version 2, or, at your option, any later version", GPLv3 is still incompatible with GPLv2. The work just happens to be dual-licensed.
  • GPLv3 is not more strict than GPLv2. GPLv3 is differently strict than GPLv2. Actions do indeed exist that are permitted under GPLv2, but are not permitted under GPLv3. However, actions also exist that are permitted under GPLv3 but are not permitted under GPLv2.

To get a good answer, ask a Smart Question. Similarly, if you want a bug fixed, write a Useful Bug Report. No TTDPatch crashlog? Then follow directions.
Projects: NFORenum (download) | PlaneSet (Website) | grfcodec (download) | grfdebug.log parser

PostPosted: Sat Aug 12, 2017 7:31 pm 
Traffic Manager
Traffic Manager

Joined: Sun Apr 03, 2016 8:19 pm
Posts: 228
Could you add PDM (Public Domain Mark)? I've used it with FicTownNames and (unless I'm gravely mistaken and it needs to be changed) defines it as "Uncopyrighted & Uncopyrightable" and thus "Full Green Lights" for pretty much anything (Pretty much required for a townname set entirely taken from the works of others in a fair-use context). Probably not useful in most cases, but I'd like it to be clear as to what it means.

Licenses for my work...
You automatically have my permission to re-license graphics or code by me if needed for use in any project that is not GPL v2, on the condition that if you release any derivatives of my graphics they're automatically considered as ALSO GPL v2 (code may remain unreleased, but please do provide it) and carry this provision in GPL v2 uses.
Please ask someone in-the-know to be sure that the graphics are done by me. Especially TTD-Scale, long story.

PostPosted: Sun Aug 13, 2017 6:56 pm 
OpenTTD Developer
OpenTTD Developer

Joined: Sun Sep 09, 2007 5:03 am
Posts: 4570
Location: home
Public domain is unfortunately not recognized as valid license by some countries. Instead, use WTPL, which is the same thing, but it's a proper license describing the rights.

Being a OpenTTD developer does not mean I know what I am doing.
Also, other OpenTTD developers may have different opinions.

Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 5 posts ] 

All times are UTC

Who is online

Users browsing this forum: No registered users and 2 guests

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000-2018 phpBB Limited

Copyright © Owen Rudge/The Transport Tycoon Forums 2001-2018.
Hosted by Zernebok Hosting.