Alternative SDK Files for Doom 3

The SDK shipped by id Software is a little "untidy".

  • It has several build configurations that are not required to create an SDK based mod.
  • It follows the Visual Studio standard of placing all build files in a sub-folder of the source tree. This can get messy when taking backups and when using SCM packages and differencing tools.
  • The files will open and compile with later versions but you will be swamped with warnings in VC 2005 and VC 2008.

Direct Replacement

You can download new versions of D3Game.sln, D3Game.vcproj, game-d3xp.vcproj and idlib.vcproj in this package.

They are in Visual C++ 2002 format but if you open them in a later version they will be automatically converted.

These files add the necessary changes to the projects to remove the warnings and to create output files in a folder at the same directory level as the source tree, rather than under it.

If your source is in 'C:\Mods\mymod\src' then the build folder structure will be this for a "Release" build...

C:\Mods\mymod\build\windows\release\game (gamex86.dll is here)
C:\Mods\mymod\build\windows\release\game\obj
C:\Mods\mymod\build\windows\release\d3xp (gamex86.dll is here)
C:\Mods\mymod\build\windows\release\d3xp\obj
C:\Mods\mymod\build\windows\release\idlib
C:\Mods\mymod\build\windows\release\idlib\obj

.. or this for a "Debug" build...

C:\Mods\mymod\build\windows\debug\game (gamex86.dll is here)
C:\Mods\mymod\build\windows\debug\game\obj
C:\Mods\mymod\build\windows\debug\d3xp (gamex86.dll is here)
C:\Mods\mymod\build\windows\debug\d3xp\obj
C:\Mods\mymod\build\windows\debug\idlib
C:\Mods\mymod\build\windows\debug\idlib\obj

The replacement package also contains a command script called PackPK4.cmd.

This script is run at the end of the build as a custom step. If you have 7-Zip (normal or command line version), WinRAR or WinZip (command line extension) installed then D3Game.pk4 will be created in the same folder as gamex86.dll for the current build configuration (Debug/Release).

If you want it to do so, PackPK4.cmd can also automatically copy the D3Game.pk4 file to the correct folder for it to run. Just edit the file and on line 9 replace...

set ModPakFile=

...with...

set ModPakFile="C:\Program Files\Doom 3\mymod\mymod.pk4"

...or whatever folder and PK4 filename you want.

Website design based on Melankolia template by Ercan K.