Difference between revisions of "Raven source code licensing"

From DoomWiki.org

[checked revision][checked revision]
m (Open letter and petition to Raven: Grammar)
m (A bit more clarity and less run-on.)
(15 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 
The '''Raven source code licensing''' issue was a problem caused by the license used by [[Raven Software]] to release the source code to their games, [[Heretic]] and [[Hexen]].
 
The '''Raven source code licensing''' issue was a problem caused by the license used by [[Raven Software]] to release the source code to their games, [[Heretic]] and [[Hexen]].
  
In January 1999, the source code to both Heretic and Hexen was released by Raven, albeit under a restrictive [[wikipedia:EULA|EULA]] [http://www.doomworld.com/eternity/activision_eula.txt] that prohibits many uses of the code and is incompatible with the [[wikipedia:GNU General Public License|GNU GPL]].  At the time of its release, the Doom source itself was only available under the [[Doom Source License]], which was itself incompatible with the GPL.
+
In January 1999, the source code to Heretic, Hexen and the [[ACC]] script compiler was released by Raven, albeit under a restrictive {{wp|End-user license agreement|EULA}} [https://www.doomworld.com/eternity/activision_eula.txt] that prohibits many uses of the code and is incompatible with the {{wp|GNU General Public License|GNU GPL}}.  At the time of its release, the Doom source itself was only available under the [[Doom Source License]], which was itself incompatible with the GPL.
  
The Doom source was later re-released under the GNU GPL; however, the Heretic and Hexen sources were not similarly re-released.  Raven later released the Hexen 2 source under the GPL [http://archive.gamespy.com/news/november00/hexen2/], but at the time, did not do the same for the Heretic and Hexen source. On September 4th 2008, the Heretic and Hexen sources were finally re-released under the GPL by Raven.
+
The Doom source was later re-released under the GNU GPL; however, the Heretic and Hexen sources were not similarly re-released.  Raven later {{archived link|http://archive.gamespy.com/news/november00/hexen2/|released the Hexen 2 source|https://web.archive.org/web/20100621021545/http://archive.gamespy.com/news/november00/hexen2/|archive.org}} under the GPL, but at the time, did not do the same for the Heretic and Hexen source. On September 4th 2008, the Heretic and Hexen sources were finally re-released under the GPL by Raven.
  
 
== Problems ==
 
== Problems ==
Line 9: Line 9:
 
=== Inappropriate license ===
 
=== Inappropriate license ===
  
The license itself is a standard [[wikipedia:EULA|End User Licensing Agreement]], of the kind that Raven would intend to attach to one of their games. As source code is different from the binary data shipped with a commercial game, the license is inappropriate for application to the Heretic and Hexen source.  It includes various terms that are nonsensical; for example, that users may not "Make copies of this Program or any part thereof", effectively denying any right to distribute copies of the source code.
+
The license itself is a standard {{wp|End-user license agreement|End User Licensing Agreement}}, of the kind that Raven would intend to attach to one of their games. As source code is different from the binary data shipped with a commercial game, the license is inappropriate for application to the Heretic and Hexen source.  It includes various terms that are nonsensical; for example, that users may not "Make copies of this Program or any part thereof", effectively denying any right to distribute copies of the source code.
  
 
Crucially, the license does not grant permissions which are essential to any source code license.  For example, the license does not grant permission to redistribute the source and make derivative works.
 
Crucially, the license does not grant permissions which are essential to any source code license.  For example, the license does not grant permission to redistribute the source and make derivative works.
Line 17: Line 17:
 
=== GPL incompatibility ===
 
=== GPL incompatibility ===
  
The license used for the Raven code is incompatible with the GNU GPL.  As the Doom source code is only available under the Doom Source License and the GNU GPL, it was not possible to release a properly [[wikipedia:Open Source|Open Source]] (under the [[wikipedia:Open Source Definition|Open Source Definition]]) source port with support for Heretic and Hexen.
+
The license used for the Raven code is incompatible with the GNU GPL.  As the Doom source code is only available under the Doom Source License and the GNU GPL, it was not possible to release a properly {{wp|Open Source}} (under the {{wp|Open Source Definition}}) source port with support for Heretic and Hexen.
  
 
Various ports addressed this issue in different ways:
 
Various ports addressed this issue in different ways:
Line 27: Line 27:
 
== Open letter and petition to Raven ==
 
== Open letter and petition to Raven ==
  
Multiple attempts to contact Raven, to ask them to relicense the code, appeared unsuccessful. In response, [[James "Quasar" Haley]] wrote an open letter to Raven, asking them to relicense the Heretic and Hexen sources under the GNU GPL [http://www.doomworld.com/eternity/letter.html].  The letter was signed by 35 prominent members of the Doom community, and backed by an online petition that attracted over 900 signatures [http://www.petitiononline.com/qhhgpl/petition.html]. The campaign was even successful in acquiring the signature of [[Chris Rhinehart]], a member of the original programming team behind the games. The [[wikipedia:Free Software Foundation|Free Software Foundation]] listed the campaign on their website to help draw attention to the issue [http://www.gnu.org/server/takeaction.html].
+
Multiple attempts to contact Raven, to ask them to relicense the code, appeared unsuccessful. In response, [[James "Quasar" Haley]] wrote an open letter to Raven, asking them to relicense the Heretic and Hexen sources under the GNU GPL [https://www.doomworld.com/eternity/letter.html].  The letter was signed by 35 prominent members of the Doom community, and backed by an online petition that attracted over 900 signatures [http://www.petitiononline.com/qhhgpl/petition.html]. The campaign was even successful in acquiring the signature of [[Chris Rhinehart]], a member of the original programming team behind the games. The {{wp|Free Software Foundation}} listed the campaign on their website to help draw attention to the issue [http://www.gnu.org/server/takeaction.html].
  
The source code was eventually released under the GPL on a Sourceforge site on September 4, 2008 by [[James Monroe]] of Raven [http://sourceforge.net/projects/heretic/].
+
The Heretic and Hexen source code was eventually [[sourceforge:projects/heretic/|released under the GPL on a Sourceforge site]] on September 4, 2008 by [[James Monroe]] of Raven. Development of [[Chocolate Doom|Chocolate Heretic and Chocolate Hexen]] [https://github.com/chocolate-doom/chocolate-doom/commit/0df2cb80cf03d7259746834220d209b306a8c503 began on the same day] as a result of the release.
 +
 
 +
The ACC script compiler source was not re-licensed, even though James Monroe indicated that he had thought it was included with the Hexen source and that he would remedy the situation. However, as of 2019, it remains under the original proprietary license.
 +
 
 +
== See also ==
 +
* [[Heretic source code]]
 +
* [[Hexen source code]]
  
 
== External links ==
 
== External links ==
  
* [http://www.doomworld.com/eternity/letter.html Open Letter to Raven Software and Activision]
+
* {{archived link|https://www.doomworld.com/eternity/letter.html|Open Letter to Raven Software and Activision|https://web.archive.org/web/20080704134000/https://www.doomworld.com/eternity/letter.html|archive.org}}
* [http://www.petitiononline.com/qhhgpl/petition.html Petition to Raven]
+
* {{archived link|http://www.petitiononline.com/qhhgpl/petition.html|Petition to Raven|http://web.archive.org/web/20081015131857/http://www.petitiononline.com/qhhgpl/petition.html|archive.org}}
* [http://www.doomworld.com/eternity/activision_eula.txt Raven / Activision EULA] which the Raven source was released under.
+
* [https://www.doomworld.com/eternity/activision_eula.txt Raven / Activision EULA] which the Raven source was released under.
* [http://www.3dgamers.com/dlselect/games/hexen/Thirdparty/raven_source.zip.html The Heretic and Hexen source code], as released by Raven.
+
* [[sourceforge:projects/heretic/files/|Heretic and Hexen source code, at Sourceforge]]
 +
* [https://archive.org/details/Raven_source_code Heretic and Hexen source code, at archive.org]
 +
* {{idgames|id=18119|title=Heretic and Hexen source code}}
 +
 
 
[[Category:Companies]]
 
[[Category:Companies]]
 
[[Category:Community]]
 
[[Category:Community]]
 
[[Category:Code]]
 
[[Category:Code]]
 
[[Category:Events]]
 
[[Category:Events]]

Revision as of 19:46, 30 March 2019

The Raven source code licensing issue was a problem caused by the license used by Raven Software to release the source code to their games, Heretic and Hexen.

In January 1999, the source code to Heretic, Hexen and the ACC script compiler was released by Raven, albeit under a restrictive EULA [1] that prohibits many uses of the code and is incompatible with the GNU GPL. At the time of its release, the Doom source itself was only available under the Doom Source License, which was itself incompatible with the GPL.

The Doom source was later re-released under the GNU GPL; however, the Heretic and Hexen sources were not similarly re-released. Raven later released the Hexen 2 source (archived 🏛) under the GPL, but at the time, did not do the same for the Heretic and Hexen source. On September 4th 2008, the Heretic and Hexen sources were finally re-released under the GPL by Raven.

Problems

Inappropriate license

The license itself is a standard End User Licensing Agreement, of the kind that Raven would intend to attach to one of their games. As source code is different from the binary data shipped with a commercial game, the license is inappropriate for application to the Heretic and Hexen source. It includes various terms that are nonsensical; for example, that users may not "Make copies of this Program or any part thereof", effectively denying any right to distribute copies of the source code.

Crucially, the license does not grant permissions which are essential to any source code license. For example, the license does not grant permission to redistribute the source and make derivative works.

Raven's Kenn Hoekstra made an announcement after the source code was released, recognising the mistake and essentially admitting that the license was inappropriate [2]. Despite this, the problem was not remedied by Raven until September 2008.

GPL incompatibility

The license used for the Raven code is incompatible with the GNU GPL. As the Doom source code is only available under the Doom Source License and the GNU GPL, it was not possible to release a properly Open Source (under the Open Source Definition) source port with support for Heretic and Hexen.

Various ports addressed this issue in different ways:

  • Some ports refused to include any Heretic or Hexen code, preferring to stay under the GNU GPL. Odamex is an example of this; a lengthy audit was made of the (ZDoom-based) source code to identify and remove any Raven source.
  • ZDoom placed itself under the older Doom Source License, in order to provide support for Heretic and Hexen features.
  • Doomsday isolated all Raven code in loadable modules that control the game behavior. As such, the core Doomsday engine and the Doom loadable module is available under the GPL, while the Raven portions are under a separate license.
  • The Eternity Engine attempted to rewrite some of the Heretic and Hexen features from scratch, so that those games may be supported while not using any of the copyrighted code. However, it has been argued that it may essentially be impossible in some situations to write certain functions that are not identical to the original versions.

Open letter and petition to Raven

Multiple attempts to contact Raven, to ask them to relicense the code, appeared unsuccessful. In response, James "Quasar" Haley wrote an open letter to Raven, asking them to relicense the Heretic and Hexen sources under the GNU GPL [3]. The letter was signed by 35 prominent members of the Doom community, and backed by an online petition that attracted over 900 signatures [4]. The campaign was even successful in acquiring the signature of Chris Rhinehart, a member of the original programming team behind the games. The Free Software Foundation listed the campaign on their website to help draw attention to the issue [5].

The Heretic and Hexen source code was eventually released under the GPL on a Sourceforge site on September 4, 2008 by James Monroe of Raven. Development of Chocolate Heretic and Chocolate Hexen began on the same day as a result of the release.

The ACC script compiler source was not re-licensed, even though James Monroe indicated that he had thought it was included with the Hexen source and that he would remedy the situation. However, as of 2019, it remains under the original proprietary license.

See also

External links