How to build the SDK on Windows

Introduction

This is a guide on how to compile the Doom 3 or Enemy Territory: Quake Wars SDK on Microsoft Windows using freely available Microsoft tools. It assumes Microsoft Visual C++ and the Microsoft Platform SDK are installed and configured following the guidelines given on Microsoft’s respective websites below.

What you will need

Note: Doom 3 only:
A copy of the Windows Doom 3 SDK v1.3.1
Note: Enemy Territory: Quake Wars only:
A copy of the ETQW SDK v1.5

Doom 3 configuration and building

The information in this section is specific to Doom 3 .

Open the D3Game.vcproj file. Under Solution Explorer pane on the left, right-click on Game and go to properties. Under Configuration Properties -> Linker -> Input -> Additional Dependencies, remove any instances of odbc32.lib and odbccp32.lib. You have to do this for each compile type (eg Release, Debug).

ETQW configuration and building

The information in this section is specific to Enemy Territory: Quake Wars .

You will need to add the following lines to ‘SDK 1.5/source/framework/BuildDefines.inc’:

   #ifndef SD_PUBLIC_BUILD
           #define SD_PUBLIC_BUILD
   #endif

Without this, odd bugs will occur when running your code, even if it is unmodified from the base SDK code.

Next, open ‘SDK 1.5/source/etqw_sdk.sln’, choose a configuration from the dropdown and click build. The build output will end up in ‘SDK 1.5/source/build/win32/<configuration name>/gamex86.dll’.

Package your build

Now create a text file with a single “0” in it and save it as ‘binary.conf’. Zip both the ‘binary.conf’ and the newly compiled ‘gamex86.dll’ into their own .pk4 file (example - windows_build.pk4) and place it into your mod folder. Conventionally the .PK4 is named game00x.pk4, where x is the same number as used in binary.conf, e.g. game000.pk4 for Windows, but this is not required.