Table of Contents

EDuke32 on OSX

Splash Screen

I played a bit with the Icculus.org Duke Nukem 3D sources today. I wanted to have a native OSX binary for no reason (heck.. even the original PowerPC only binary from 3D Realms1) runs superfast inside the Rosetta emulation).

Unfortunately my efforts with that port lead to nowhere since the resulting binary crashes at startup while reading the IWAD file. It smelled like a lot of work2) to do and so I googled a bit for other Duke ports.

I found Jonathon Fowlers work which is pretty much amazing but also dated. Seems like he lost interest in it a few years ago (but don't miss to check out his fantastic website over here). I had success compiling his version of the build engine on OSX Leopard (with some changes), but failed with the actual game part. Maybe I'll get back to it later again…

Another candidate was EDuke32 which is available here. It is not as fancy as Jonathons work at first sight3) but I had more success in compiling it into a working binary. And what a result I got! :-D This enhanced version of Duke Nukem 3D is all that I ever wanted to have. Among other things it features:

Kudos to Jonathon Fowler, Ken Silverman, Matt Saettler, TerminX, Plagman and the whole EDuke32 Team! You have done a great job!

Screenshots

Nice view down the tube... Sample Screenshot Videosetup Menu There is also a Quake-like console A HRP model displaying a dead alien A HRP model of Duke himself in the mirror The famous Bleached Blonde Biker Bimbos movie The same movie running in the theater POLYMER finaly working on PPC) POLYMER and HRP on INTeL

Downloads

Game-data files

To be able to run the game you need the original game-data files. Either extract them from your game CD or get them from GOG (the whole process is described elsewhere).

If you are desperate and just need a few demo levels to run the game then you can also grab the old DOS shareware version of Duke Nukem 3D and extract the data files from it:

OS X 10.4 Tiger

Binary-only distribution:

You need the Duke Nukem 3D game-data files (either Full- or Shareware version) to run one of these.

Ready-to-run application:

This is a special distribution with everything packed into an application bundle. Download, drag the Duke Nukem icon into your Macintoshs Application folder and run it from there:

OS X 10.5+ Leopard/Snow Leopard

Binary-only distribution:

You need the Duke Nukem 3D game-data files (either Full- or Shareware version) to run one of these.

Ready-to-run application:

This is a special distribution with everything packed into an application bundle. Download, drag the Duke Nukem icon into your Macintoshs Application folder and run it from there:

Installation

There are three different types of installation:

  1. Get the “ready-to-run application” distribution that fits your version of OSX; drag the icon onto your Macintosh drive and run it from there.
  2. Get one of the binary-only distributions and the Shareware game-data file provided here (or use the contents from your 3DReals Duke Nukem CD)4) and install it like described below.
  3. Get the source code and compile it on your own and run your own binaries (see below).

Method 1. is the easiest and no further action has to be taken to get the game up and running. If you choose either 2. or 3. you have to get the game-data files as well and extract them into a folder named: /Users/YOUR_NAME/Library/Application Support/EDuke32/

In certain cases it might help if you download this ZIP and put its contents into your EDuke32 folder. Please note that you might have to edit the config files by hand and do changes in it.

You will find more informations about installation and EDuke32 in general in the EDuke32 Wiki over here.

High-Resolution Pack

There is a must-have addon available that replaces the original graphics with high quality textures. The game looks way better with them installed. You will find it here.

Without HRP With HRP

Starting with the new POLYMER renderer there is also a new HRP collection available:

While the new EDuke32 renderer Polymer is still work-in-progress, considerable improvements regarding HRP contents have been made. We thought this is reason enough to provide you with a beta build of the upcoming Polymer HRP so you can see for yourself what the next stage of our facelift for Duke3D will look like. Download Polymer HRP v4.2.054 Preview (405 MB), and you will notice the changes immediately without having to mention what's new. ;)

EDuke32 stores its game-data files inside your Application Support/ folder (just like any other Macintosh application does it). You will find the folder inside your Home under Library/Application Support/EDuke32/. Simply create a new folder called autoload/ and in there another one called duke3d.grp/ and put the HRP and all the other .ZIP files in there. Don't extract them!

I came to the conclusion that it might be a good idea to do some sort of a HowTo movie that explains all needed steps to get EDuke32 including HRP running out of the box on a Mac. It took me less than 10 minutes and no illigal downloads to fire up the first level in OpenGL - it's really that simple. Enjoy this video: EDuke32_HowTo.m4v

Please note that the design of this webpage has changed a little bit since the creation of the video and looks different - also some links may have changed!

Known problems

Feel free to jump into channel #EDuke32 on irc.freenode.net and ask if you encounter strange problems.

Sample Videos

Here are some recordings I took on my 2.16GHz iMac using the screen recording software ScreenFlick (former ScreenCast). Please note that these files are huge! Don't click on them as it might trash your browser session! Better right-click and save the files.


And here is a sample video displaying the new HRP + POLYMER features of EDuke32 on Mac OS X. Please note that the game play got stuck some times, partly because of the parallel screen recording and partly because of the high demands on CPU and GPU. You better have a fast Mac to try this. :-)

Compiling the source

If you don't trust my binaries all you have to do is to grab the source distribution and unpack it into some folder. You need to have Xcode installed (Xcode 3.0/Leopard and Xcode 2.4/Tiger are confirmed working).

To compile the whole thing on OSX Leopard I only had to do minor modifications. There were linux libraries and object files in the source distribution which had to be replaced. I rewrote the Makefiles so they work correctly on Darwin and changed a few bits in the sources.

Change into the eduke32/ folder and edit the Makefile. You only need to define the root directory of your SDL installation. For example: if you have MacPorts (aka Darwinports) installed then point SDLROOT to /opt/local.

If you get sourcecode versions after january 2010 you only need to edit the file: eduke32/Apple/Makefile.shared

That's all you have to configure. You can create a eduke32 binary by running “make” now.

1) actually the 1.5 update looks like a recompile of the icculus.org sources when you analyze it
2) the sourcecode is aware of the apple platform but back in 2004 “Apple” meant PowerPC and BigEndian
3) as it turned out later it is based on jfduke
4) how to install Duke from the original CD is not part of this website