After revelations of there being a patent issue with the Doom 3 source code last week, there were concerns that it’s imminent source code release might not be so imminent anymore. However apparently there was a minor workaround for the offending code, which John Carmack himself implemented. According to him it required adding only four lines of code and changing two. And now of course, Doom 3 is finally open source!
This code release has been triggered by the release of their next-generation id Tech 5 engine in Rage, which was released just last month. The id Tech 5 engine too will eventually become open source when id Software creates its replacement and releases it in a commercial game.
The open source nature does not extend to the game data as well of course, and to play Doom 3 you will still need to purchase a license for the game. People can, however, now create their own games based on the engine, or modify the Doom 3 engine itself and use it to play the game.
The open source gaming community has benefited greatly from the source code opened by id Software, and there are now numerous open source games that use the quake3 engine and its derivatives.
The Doom 3 engine, or the id Tech 4 engine first appeared in Doom 3 back in 2004, and was also used in Quake 4 soon after. While the engine might seem rather old now, it is still a huge advancement over the id Tech 3 engine and the Enemy Territory engines that were available till now. Also, the id Tech 4 engine has been used in recent commercial games; Brink, an id Tech 4 based games was released just this year, and Prey 2 an as yet unreleased game coming in 2012 also features the id Tech 4 engine.
The source code for Doom 3 is hosted at the popular GitHub code hosting site and is available under the GPL3 license, which permits anyone to create derivatives of the code and distribute them as long as the modified code is distributed as well. While it has only been a few hours since it was made available, already they are hundreds of people watching the project, dozens of forks, and one commit for XCode 4 support.