Open Source

From RogueBasin
(Difference between revisions)
Jump to: navigation, search
(Reverted spam)
Line 1: Line 1:
[ lorazepam online] [,42 free samsung ringtones] [ albuterol online] [ zyban online] [ cheap soma] [ but clonazepam] [ paxil online] [ free real ringtones] [ sildenafil online] [,45 soma online] [ ambien] [ wellbutrin online] [ cheap adipex] [ propecia online] [ free real ringtones] [ diethylpropion online] [ polyphonic ringtones] [ cheap rivotril] [ free jazz ringtones] [ but lipitor] [ cheap lorazepam] [ cheap prozac] [ order carisoprodol] [ polyphonic ringtones] [ tenuate online] [ cheap valium] [ polyphonic ringtones] [ lipitor online] [ free ringtones] [ phentermine online] [ free sagem ringtones] [ free ringtones] [ buy ultracet] [ ortho online] [ buy vigrx] [,33 nexium online] [,28 meridia online] [ sharp ringtones] [ music ringtones] [,20 cheap diazepam] [ carisoprodol online] [ but wellbutrin] [ meridia online] [,23 free free ringtones] [,57 xanax online] [ free mtv ringtones] [ fioricet online] [ free mp3 ringtones] [ nextel ringtones] [ cheap adipex] [ xanax online] [,41 free sagem ringtones] [ cheap diazepam] [ cheap clonazepam] [,39 free polyphonic ringtones] [ cheap carisoprodol] [ wellbutrin online] [ free kyocera ringtones] [ ativan online] [ cheap viagra] [,27 lorazepam online] [ ultram online] [ free kyocera ringtones] [,10 cheap alprazolam] [ free alltel ringtones] [ ambien online] [ vicodin online] [,30 free motorola ringtones] [ sony ericsson ringtones] [ punk ringtones] [ buy viagra] [ but phentermine] [ cheap xanax] [ ultram online] [ valium online] [,17 cingular ringtones] [,8 buy adipex] [ cyclobenzaprine online] [ propecia online] [ cheap tenuate] [ carisoprodol online] [ ultracet online] [ cheap pharmacy online] [ free wwe ringtones] [ diazepam online] [ xenical online] [ nokia ringtones] [ qwest ringtones] [ cheap zanaflex] [ diazepam online] [ free verizon ringtones] [ motorola ringtones] [ order lortab] [ buy prozac] [ free ericsson ringtones] [ but ortho] [,19 cheap cyclobenzaprine] [ cheap celexa] [ free ringtones] [ phentermine] [ free cool ringtones] [ prozac online] [,44 qwest ringtones] [ cialis online] [ free sprint ringtones] [ cheap nexium] [ free real ringtones] [ free sagem ringtones] [ free tracfone ringtones] [ free nokia ringtones] [ free punk ringtones] [ free mp3 ringtones] [ free sony ringtones] [,12 ativan online] [ cheap hgh] [ midi ringtones] [ alltel ringtones] [ cheap flexeril] [ sony ericsson ringtones] [ motorola ringtones] [ cheap vicodin] [ tracfone ringtones] [ soma online] [ levitra online] [ free motorola ringtones] [ cheap didrex] [ sildenafil online] [ pharmacy online online] [ cheap zoloft] [ hydrocodone online] [ free sony ringtones] [ cingular ringtones] [ viagra] [ buy paxil] [ buy ambien] [ buy lortab] [ hydrocodone online] [ vigrx online] [ ativan online] [ hgh online] [ cheap sildenafil] [ viagra online] [ ortho online] [ nextel ringtones] [ online lisinopril] [,24 funny ringtones] [,46 sony ericsson ringtones] [ vicodin online] [,25 but hydrocodone] [ cheap ativan] [ free mono ringtones] [,18 clonazepam] [ levitra] [ free sprint ringtones] [ cheap cialis] [ sony ringtones] [,26 levitra online] [ zanaflex online] [ cheap phentermine] [ cheap celexa] [ cheap ultracet] [ free wwe ringtones] [ sharp ringtones] [,36 norco online] [ online soma] [ ultracet online] [ free cingular ringtones] [ adipex online] [ xenical online] [ albuterol online] [ cheap tenuate] [ ortho online] [ free music ringtones] [ sagem ringtones] [ lisinopril online] [ meridia online] [ cheap propecia] [ order vigrx] [ diethylpropion online] [ cheap albuterol] [ free mp3 ringtones] [ cheap meridia] [ free free ringtones] [ cheap ultram] [ order soma] [ lortab online] [ cheap sildenafil] [,34 free nextel ringtones] [ lorazepam online] [ funny ringtones] [ buy diethylpropion] [ free ringtones] [ funny ringtones] [ cingular ringtones] [ soma online] [ nokia ringtones] [ clonazepam online] [ zyban online] [ clomid online] [ buy prozac] A question that arises for any roguelike developer is: "Should I release my game?"  This leads to another, corresponding, question of "Should I release my source code?"
A question that arises for any roguelike developer is: "Should I release my game?"  This leads to another, corresponding, question of "Should I release my source code?"
This page is a foolish attempt to present the pros and cons of releasing source code.
This page is a foolish attempt to present the pros and cons of releasing source code.

Revision as of 02:26, 15 June 2007

A question that arises for any roguelike developer is: "Should I release my game?" This leads to another, corresponding, question of "Should I release my source code?"

This page is a foolish attempt to present the pros and cons of releasing source code.

Open Source Definition

First, consider the various choices for open source. These are covered in brief under Licensing.

  1. Source code available, but remains copywritten. While people have access to the source code (so they can do ports, preserve the work, etc), they do not have permission to produce derivative works (make variants, sell for profit, etc). While this may seem to be a safe middle of the road choice, in practice you should not expect your wishes to be followed. If your game is popular enough to spawn variants, people will write them despite your wishes. It is thus suggested you save yourself the heartache and either resign yourself to "Hack With Space Orcs" being written or keep it closed source.
  2. Source code available, can make derivatives, but must release new source. This is the GPL "viral" interpretation of open source. When applied to a finished game, this restricts third parties ability to repackage and resell your game. Any repackaging they do must be made available for you to reintegrate into the main baseline, preserving your ability to have the definitive version.
  3. Source code available, can make derivatives, little other restrictions. This is the BSD interpretation of open source. Note it allows a third party to release a closed source version of your game, hiding from you and others any changes they performed. This is a useful option if you produce an engine where you see the majority of the work being done by the secondary developer. It then lets the person who does the most work decide on licensing.

Having listed those choices, we will make no further reference to them. We will instead discuss pros and cons for releasing source code at all, regardless of the method.


Let's look at all the good reasons to provide your source code...

  1. Portability Issues. You do not need to own all the platforms that you want to port to. People on those platforms can do their own ports and give you the needed changes.
  2. Preservation. By releasing the source code, you insulate yourself against catastrophic data failure. The GLQuake movement famously moved to GPL licenses after one of the key programs was lost in a hard drive crash. To maximize this effect, it is recommended you include the source code in the standard download so as to ensure all players end up with a copy by default.
  3. Survivability. If your roguelike only exists as a .exe, it will become harder and harder for future computers to run it. Source code helps ensure native versions are available.
  4. Bug Fixes. Ideally, when users encounter crashing bugs, they can give you the bug fix rather than just reporting the problem.
  5. New Features. Eager users may develop patches that add cool new features that you can then add to your game.
  6. Variants. People may branch off producing entire new roguelikes with your system used as an engine, enriching the roguelike scene.
  7. Can use GPL code. If you are releasing under GPL, you can use GPL code in your program. This isn't so much a "Pro" as an forced prerequisite of using the code, however.
  8. Community Approval. There is a strong pro-open source component to the roguelike community that will favour any roguelike with sources and disfavour ones that lack sources.


With all those good things, why would anyone not release their source code?

  1. The Pros Don't Apply. Many of the Pros only apply to already successful projects. Variants, New Features, Bug Fixes, will only be submitted if you have an active userbase large enough to contain technically qualified people.
  2. Rejecting Changes is Hard. You have your own vision for the game. It is hard enough dealing with requests to change the game in ways you didn't envision, without having to deal with requests containing the correct source code to make the changes.
  3. Licensing is Confusing. What are the implications of the different licenses? What licenses are implied with submitted patches? What if I want to release a commercial version one day? These all have answers, but researching them is time not spent writing your roguelike.
  4. Closed Source is Successful. Contrary to the Community Approval note, ADOM proves available sources isn't a prerequisite for success.
  5. Want Data Secret. Providing the source means providing your build process, which opens up all the secrets of your game to source divers. While, arguably, the secrets were already available to competent disassemblers, they are a lot fewer than source divers. Some hold ADOM as an example of this working. However, all the important secrets were eventually routed out and posted. To the spoiled player (who cares not *how* the secrets were obtained, as they just read the spoiler file) the result is just a delay in the availability of spoilers.
  6. Releasing Source is Hard. Releasing your roguelike is difficult enough without also having to release the source code. One will often want to do *some* cleanup. One may also want to document the build process so it is at all useful to outsiders. Any tools used for building need to be released or documented as well.
Personal tools