Following the release of the
Doom source code in 1997, players wanted a similar source code release from 3D Realms. The last major game to make use of the
Duke Nukem 3D source code was TNT Team's
World War II GI in 1999. Its programmer, Matthew Saettler, obtained permission from 3D Realms to expand the gameplay enhancements done on
WWII GI to
Duke Nukem 3D.
EDuke was a semi-official branch of
Duke Nukem 3D that was released as a patch as
Duke Nukem 3D v2.0 for
Atomic Edition users on July 28, 2000. It included a demo mod made by several beta testers. It focused primarily on enhancing the CON scripting language in ways which allowed those modifying the game to do much more with the system than originally possible. Though a further version was planned, it never made it out of beta. It was eventually cancelled due to programmer time constraints. About a month after the release of the
Duke Nukem 3D source code,
Blood project manager Matt Saettler released the source code for both
EDuke v2.0 and EDuke v2.1, the test version of which would have eventually become the next
EDuke release, under the GPL. The
source code to the
Duke Nukem 3D v1.5 executable, which uses the Build engine, was released as
free software under the
GPL-2.0-or-later license on April 1, 2003. The game content remains under a proprietary license. The game was quickly ported by enthusiasts to modern operating systems. The first
Duke Nukem 3D port was from icculus.org. It is a cross-platform project that allows the game to be played on
AmigaOS,
AmigaOS 4,
AROS,
BeOS,
FreeBSD,
Linux,
Mac OS X,
MorphOS,
Solaris, and
Windows rather than MS-DOS. The icculus.org codebase would later be used as the base for several other ports, including
Duke3d_32. Another popular early project is Jonathon Fowler's
JFDuke3D, which, in December 2003, received backing from the original author of Build, programmer
Ken Silverman. Fowler, in cooperation with Silverman, released a new version of
JFDuke3D using
Polymost, an
OpenGL-enhanced renderer for Build which allows hardware acceleration and 3D model support along with 32-bit color high resolution textures. Another project based on
JFDuke3D called
xDuke, unrelated to the
xDuke project based on
Duke3d_w32, runs on the
Xbox. Silverman has since helped Fowler with a large portion of other engine work, including updating the network code, and helping to maintain various other aspects of the engine. Development was semi-active between 2005 and 2020; since then, new versions are regularly published. While a few short-lived MS-DOS-based
EDuke projects emerged, it was not until the release of
EDuke32, an extended version of
Duke3D incorporating variants of both Fowler's
Microsoft Windows JFDuke3D code, and Saettler's
EDuke code, by one of 3D Realms' forum moderators in late 2004, that ''EDuke's
scripting extensions received community focus. Among the various enhancements, support for advanced shader model 3.0 based graphics was added to EDuke32
during late 2008-early 2009. In June 2008, thanks to significant porting contributions from the DOSBox team, EDuke32
became the only Duke Nukem 3D'' source port to compile and run natively on
64-bit Linux systems without the use of a 32-bit compatibility environment. On April 1, 2009, an
OpenGL Shader Model 3.0 renderer was revealed to have been developed for
EDuke32, named
Polymer to distinguish from Ken Silverman's
Polymost. It allows for much more modern effects such as dynamic lighting and
normal mapping. Although Polymer is fully functional, it is technically incomplete and unoptimized, and is still in development. As of the fifth installment of the
High Resolution Pack, released in 2011, the Polymer renderer is mandatory. In 2011, another significant development of
EDuke32 was the introduction of true room over room (TROR), where sectors can be placed over other sectors, and can be seen at the same time. In practice, this allows for true three-dimensional level design that was previously impossible, although the base engine is still 2D. On December 18, 2012, the
Chocolate Duke Nukem 3D source port was released. Inspired by
Chocolate Doom, the primary goal was to refactor the code so developers could easily read and learn from it, as well as make it portable. In February 2013, a source
code review article was published that described the internal working of the code. == Reception ==