Duke Nukem 3D on Ubuntu 12.10 using EDuke32
Start with the following links, which contain the majority of the instructions. I will summarise the process I followed below:
- http://wiki.eduke32.com/wiki/APT_repository
- http://wiki.eduke32.com/wiki/Installation_and_configuration
Summary of terminal commands used to install EDuke32 via APT:
echo -e "deb http://apt.duke4.net $(lsb_release -cs) main\n\ deb-src http://apt.duke4.net $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/eduke32.list wget -q http://apt.duke4.net/key/eduke32.gpg -O- | sudo apt-key add - sudo apt-get update && sudo apt-get install eduke32
Then, using Steam running under WINE, download Duke Nukem Megaton Edition and copy the files DUKE3D.GRP and DUKE.RTS to the .eduke32 folder. In my case, this was from...
/home/rob/.wine/drive_c/Program Files/Steam/steamapps/common/Duke Nukem 3D/gameroot/classic
...to:
/home/rob/.eduke32
e.g.
cp /home/$USER/.wine/drive_c/Program\ Files/Steam/steamapps/common/Duke\ Nukem\ 3D/gameroot/classic/DUKE3D.GRP /home/$USER/.eduke32/ cp /home/$USER/.wine/drive_c/Program\ Files/Steam/steamapps/common/Duke\ Nukem\ 3D/gameroot/classic/DUKE.RTS /home/$USER/.eduke32/
If you're not using the Steam version, check the other paths suggested on the Installation and Configuration wiki page linked to above.
Download HRP pack from:
http://hrp.duke4.net/download.php
Make a folder called autoload:
mkdir /home/$USER/.eduke32/autoload
Copy and paste the duke3d_hrp.zip file into /home/rob/.eduke32/autoload folder - you do not need to extract it.
From a terminal, run:
eduke32
On the Configuration tab, check the following options:
- Enable "autoload" folder
- Polymer
Hopefully, this should get Duke Nukem 3D working!
Duke Nukem Forever 2013 mod
The mod is available here:
http://www.moddb.com/mods/duke-nukem-forever
Once downloaded, extract somewhere (I chose /home/rob/.eduke32/DNF)
The DNF README.txt file states you need to download the eduke32_src_20130429-3717.tar.bz2 file from:
http://dukeworld.duke4.net/eduke32/synthesis/20130429-3717/
However, the GTK build is broken in that version, so you'll get the error:
source/startgtk.game.c: In function 'PopulateForm': source/startgtk.game.c:462:48: error: 'grpfile' undeclared (first use in this function) source/startgtk.game.c:462:48: note: each undeclared identifier is reported only once for each function it appears in source/startgtk.game.c:462:56: error: 'i' undeclared (first use in this function) Failed building source/obj/startgtk.game.o from source/startgtk.game.c!
So, download the following version instead:
http://dukeworld.duke4.net/eduke32/synthesis/20130430-3718/
...as the ChangeLog.txt file states:
r3718 | terminx | 2013-04-30 11:51:15 -0700 (Tue, 30 Apr 2013) | 1 line Fix GTK build
Then refer to:
http://wiki.eduke32.com/wiki/Building_EDuke32_on_Linux
sudo apt-get install build-essential nasm libgl1-mesa-dev libglu1-mesa-dev libsdl1.2-dev libsdl-mixer1.2-dev libvorbis-dev libpng12-dev libvpx-dev libgtk2.0-dev freepats cd /home/rob/.eduke32/eduke32_20130430-3718/ make cp eduke32 mapster32 ../DNF/ cd ../DNF/
Copy the files DUKE3D.GRP and DUKE.RTS into the DNF folder as we did for the main EDuke32 install.
To play, run the following from a terminal:
cd /home/$USER/.eduke32/DNF ./eduke32 -gDNF.GRP -xDNFGAME.CON
UNCHECK Polymer on the Configuration tab - it's not compatible.