From RogueBasin
Jump to navigation Jump to search

Regarding Shareware:

Currently, the binary is in a gratis-free form. This is a result of the project currently being an alpha release and the binary is simply something for people to test and preview. That's really all anyone can do with the state that the game is at.

As far as the open source nature, yes, the source code will always be distributable and able to be applied to any project. This is because eventually this project will split into two forms: 1) the engine, 2) the actual game. As development stands, the current alpha version is essentially the engine. Eventually, this project will fork and the actual "game" will simply be cruft sitting on top of the engine, while the engine will remain open source.

However, the cruft on top of the game will not be open source. The cruft on top will take the form of data (mostly), some glue code, and other miscellaneous code that is not essential to the engine and only particular to the game.

As the project forks, the nature of what is open source and what is closed source will become clearer. Right now, there is only one page for both things (since it is early in development), so the distinction isn't clear cut at the moment. Currently, all source that has been put into version control is open.

When the project is mature and in a "finished state", I will release a demo version of the game and a fuller version that includes everything for a negligible fee (about the price of a cheap iPhone app). And, because of the open/closed source distinction is conflated with gratis/fee, baldly saying something is 'open source' (without qualifying what is meant) to many people implies categorically that it is or will be free of charge or fee.

So, I'm reinstating the Shareware designation.

-Sean Brown, Dec 23rd 2010, 1:12pm

Sorry for the misunderstanding. I thought the game and the data were under the same license; and something can't be shareware and open source at the same time (people would just edit the source to remove the restriction). I highly appreciate your decision to release the engine in this manner. --Linlem 22:15, 23 December 2010 (UTC)
"Open source" as defined by the OSI refers to free (as in libre), meaning freedom to view, modify source code, and/or redistribute. The definition does not mean free, as in free from charge. So, as a general definition, software can be shareware and open source. Paid software and open source are not necessarily mutually exclusive, as many people believe.
For example, GPLv3 licenses explicitly state, "You may charge any price or no price for each copy that you convey...". Another example are BSD lisences, which are compatible with proprietary lisences. BSD lisenced code can be incorporated into for-profit or not-for-profit code without restriction.
However, different lisences have different provisions for different things.
The reason I am putting some code under proprietary lisence is not because I want to charge for a version of the software -- I could charge either under an open source lisence or closed source lisence. I chose a proprietary lisence for a portion of the code as a technical limitation. If someone is going to copy the closed source portion of the code, they will have to reverse engineer or make their own version from scratch.
-Sean Brown, Dec 25rd 2010, 5:45pm
I don't personally care much for the BSD license, because I consider it simply a donation to proprietary activity. However, the GPLv3 still requires that you convey the source code at no extra cost to the user if you convey object code for a fee. You have confused shareware and paid software. Shareware is software that is distributed/conveyed at no charge but requires payment only after a certain period of time, or has locked features that require payment to unlock. Thus, with "GPL shareware", the source code must be released, for free/gratis, and any restrictions can be circumvented. Note also that under the GPL, users can redistribute and modify your software freely, reducing the effectiveness of charging money up front (have a look at Red Hat Enterprise Linux and CentOS). Keep in mind also that the portion of the code that you make proprietary could be considered "Installation Information" under the GPLv3. If you are talking about the content, then that is fine to charge money for (id Software do it for their older game engines), as long as it is possible for users to create their own content. Finally: You spelled licenses wrong in your text. --Linlem 15:40, 26 December 2010 (UTC)
I think you misunderstand GPLv3. Under GPLv3, I could convey the source to person B for a fee, but I couldn't restrict person B's ability to view, modify, use, or redistribute the source. Person B (in turn) could convey the source to Person C for a fee (or gratis, if Person B prefers) but neither Person B or me (Person A) could restrict Person C from viewing, modifying, redistributing, or using the source code. The process I just described is in marked contrast to proprietary licenses, because the ability to view, modify, redistribute, or use the source code would be severely restricted in proprietary licenses.
Like I mentioned before, people conflate the idea of open source and gratis. Not all open source is gratis, but all open source confers libre (freedom to view, modify, redistribute, or use the source code). Libre is translated to "free" in English, but means 'freedom' as in freedom to use, view, modify, or redistribute (that's not something I just made up on the spot -- that's how OSI defines open source). Once the source leaves my hands I have further no control over it regarding how it is distributed, modified, or used, even though I charge a fee to the person I gave the source to.
I don't intend to charge for source (although I could under an open source license). I don't intend to restrict the ability of anyone to view, modify, redistribute, or use the source (which is impossible under an open source license). I was simply making the legal point above and pointing out where many people misunderstand the legal status, provisions, and purpose of open source licenses. The purpose of open source is to confer libre, not necessarily gratis.
I agree that charging a fee for something that could possibly be obtained gratis elsewhere reduces the effectiveness of charging money. That is why Microsoft hates open source. It's not that Microsoft is ideologically opposed to open source, they are just greedy bastards :) and don't want competition from companies who release open source code that can be compiled free of charge.
Thanks for the heads-up on spelling. I can be somewhat dyslexic about that sometimes.
-Sean Brown, Dec 27th 2010, 3:20pm
Actually, if you are curious, these are the two licenses that I'm thinking about releasing it under (I haven't decided yet):
BSD - BSD licenses are some of the most permissive licenses. Since a small amount of code will be under another license, this will allow me to include both code bases with virtually no hassle.
GPLv3 - Since the engine could be used in other projects unrelated to mine, it might be nice for me (and others) to have a new, unified version that they could compile into their code when the engine code base is updated. That way, any improvements in the engine code base could be shared by all. Additionally, it plays well with other licenses depending on which exceptions (if any) are taken.
-Sean Brown, Dec 27th 2010, 4:13pm