The game is made on an classic Build engine by Ken Silverman and it uses the EDuke 32 port. The game is free and you can run it on Windows, Linux or Mac. You can also play it with joystick, thanks to the extensive configuration. Hope the fans of Sonic games and indie platformers will enjoy STH3D. Alternatives to eduke32 for Windows, Steam, Playstation, Xbox, Mac and more. Filter by license to discover only free or Open Source alternatives. This list contains a total of 5 apps similar to eduke32. EDuke32 is an awesome, free homebrew game engine and source port of the classic PC first person shooter Duke Nukem 3D— Duke3D for short—to Windows, Linux, Mac OS X, FreeBSD, several handhelds, your family toaster, and to your girlfriend's vibrator. Dukeworld - /eduke32/mac/ - back from the past to kick your ass. Hail to the king, baby! Thanks to Marcus 'rhoenie' Herbert for producing these Mac OS X builds. See his documentation for more information. You can also check out 'Building EDuke32 on Mac OS X' on the EDukeWiki.
As of 8/3/19 this guide isn't the way to install the 3 expansion packs. I had followed this guide and it used to infact work. An update of retropie script and then subsequent update of all installed packages that I had done, changed where the grp go. So now all you need to do is put nwinter.grp, dukedc.grp, and vacation.grp in the duke3d folder you create and then install eduke32 as described. You may need to make the .sh files described below for each duke3d expansion pack but maybe not. Same with the emulators.cfg and eduke32.cfg files in the configs/ports/duke3d folders. I dont know as mine were already created using this guide before the devs changed how the duke3d install works.
NAM however will run and continue to run everytime you start it up but it changes the eduke32.cfg file located in .etc/eduke32 on its own and breaks duke3d and all expansion packs till you manually modify eduke32.cfg selectedgrp field back to duke3d.grp. I've tried multiple times and nam breaks duke 3d and any expansion packs every single time. To avoid this change the permissions on the eduke3d.cfg file so no one can change it. And then you can run duke 3d the expansion packs and nam without anything breaking or having to modify anything after running nam.
I also had to modify the screen res from 1024 x 768 (iirc) in eduke32.cfg to make the screen visible if anyone else is having issues with a blurred screen smashed at the top of the monitor or tv.
Duke Nukem 3D is a First Person Shooter game developed by 3D Realms in 1996.
Port: Eduke32
Basic Installation
The shareware port can be installed under RetroPie setup. Go to Manage packages > Manage optional packages and select eduke32. You can install from binary or from source.
ROMs
Eduke32 For Mac Free
Shareware versions of duke3d.grp and duke.rts are provided via symlinks in
The shareware files are physically located in a different directory, but if you just replace the links in the folder above with your full version game data, it should work.
Installing Duke Nukem 3D Official Addons 'Nuclear Winter', 'Duke It Out in DC' and 'Duke Caribbean: Life's a Beach'
Automated installation
Since September 2019, the EDuke32 port installation can automatically setup launching entries for the official addons and the NAM mod. To use this method, copy each addon files to ports/duke32/addons/<addon_name>.
| Addon | Mod .grp file | Location |
|---|---|---|
| Duke It Out in DC | dukedc.grp | /home/pi/RetroPie/roms/ports/duke3d/addons/dc |
| Nuclear Winter | nw.grp | /home/pi/RetroPie/roms/ports/duke3d/addons/nw |
| Duke Caribbean: Life's a Beach | vacation.grp | /home/pi/RetroPie/roms/ports/duke3d/addons/vacation |
| NAM | nam.grp* | /home/pi/RetroPie/roms/ports/duke3d/addons/nam |
NAMrequires copying theGAME.CONfile and renaming it toNAM.CON, in addition to the main.grpfile.
After copying the files, install the eduke32 package and addons launching entries will be added to the Ports system. As with all new games, EmulationStation must be restarted after the installation/re-installation for the new addon entries be picked up and displayed.
Manual installation

The files tested for this method came from the Megaton Edition on Steam on Windows and these instructions assume that you'll be modifying files on your RetroPie instance via the Samba network share from your Windows PC. If you have a different version of the game or a different method of modifying files on your RetroPie instance then you should be able to interpret these instructions for the game version and method you have.
Install full Duke Nukem 3D Megaton Edition as already documented on this page.
Copy the three folders in
C:Program Files (x86)SteamsteamappscommonDuke Nukem 3Dgamerootaddonsfrom your PC to yourRETROPIEromsportsduke3dfolder. This means you will havenw,dcandvacationsubfolders.In
RETROPIEconfigsports, make three copies of theRETROPIEconfigsportsduke3dfolder, renaming them to,duke3d-nw,duke3d-dcandduke3d-vacation.In each of the three folders, edit
eduke32.cfgso thatSelectedGRP = 'nwinter.grp','dukedc.grp'and'vacation.grp'respectively, instead of plain'duke3d.grp'Change any other settings you want for these addons, like maybe some Christmas-themed taunts for Nuclear Winter or some political taunts for Duke It Out in DC.RETROPIEconfigsportsduke3demulators.cfgin the duke3d config folder normally looks like this:
ChangeRETROPIEconfigsportsduke3d-nwemulators.cfg to look like this:
(Note the -x nw/nwinter.con. You need that.)
Change RETROPIEconfigsportsduke3d-dcemulators.cfg to look like this:
Eduke32 For Mac Pro
Change RETROPIEconfigsportsduke3d-vacationemulators.cfg to look like this:
Eduke32 For Mac Os
- In
RETROPIEromsportsmake three copies ofDuke Nukem 3D.sh.
Name the first one Duke Nukem 3D - Nuclear Winter.sh and it should say:
Name the second one Duke Nukem 3D - Duke It Out In DC.sh and it should say:

Name the third one Duke Nukem 3D - Lifes a Beach.sh and it should say:
Installing NAM
The files tested for this method came from NAM on Steam on Windows and these instructions assume that you'll be modifying files on your RetroPie instance via the Samba network share from your Windows PC. If you have a different version of the game or a different method of modifying files on your RetroPie instance then you should be able to interpret these instructions for the game version and method you have.
Copy
GAME.CON,NAM.GRPandNAM.RTSto a new folder you make calledRETROPIEromsportsduke3dnam. The Windows Steam version of NAM has these files located inC:Program Files (x86)SteamsteamappscommonNamNAM.Rename
GAME.CONtoNAM.CON.In
RETROPIEconfigsports, make a copy of theRETROPIEconfigsportsduke3dfolder, renaming itnam.Edit
RETROPIEconfigsportsnameduke32.cfgso thatSelectedGRP = 'NAM.GRP'and choose some taunts about giving free helicopter rides to Commies.Edit
RETROPIEconfigsportsnamemulators.cfgto look like this:
- Add a file
RETROPIEromsportsNAM.sh, which should contain:
Controls:
| Key | Action |
|---|---|
| W or NUMPAD 8 | Move Forward |
| S or NUMPAD 2 | Move Backward |
| Left or NUMPAD 4 | Turn Left |
| Right or NUMPAD 6 | Turn Right |
| ALT | Strafe |
| Right CTRL or Left Click | Fire |
| E | Open/Use |
| Shift | Run |
| Caps Lock | Autorun |
| Space or / | Jump |
| Left CTRL | Crouch |
| PGUP or NUMPAD 9 | Look Up |
| PGDN or NUMPAD 3 | Look Down |
| INS or NUMPAD 0 | Look Left |
| DEL or NUMPAD . | Look Right |
| A | Strafe Left |
| D | Strafe Right |
| HOME or NUMPAD 7 | Aim Up |
| END or NUMPAD 1 | Aim Down |
| 0-9 | Weapons |
| Enter | Inventory |
| [ | Inventory Left |
| ] | Inventory Right |
| H | Holo Duke |
| J | Jetpack |
| N | Nightvision |
| M | Medkit |
| Backspace | Turnaround |
| T | Send Message |
| Tab | Map |
| - | Shrink Screen |
| + | Enlarge Screen |
| 5 | Center View |
| Scroll Lock | Holster Weapon |
| Y | Show Opponents Weapon |
| F | Map Follow Mode |
| K | See Co-op View |
| U | Mouse Aiming |
| I | Toggle Crosshair |
| R | Steroids |
| Q | Quick Kick |
| ' | Next Weapon |
| : | Previous Weapon |
| ` | Show Console |
| F1 | Help |
| F2 | Save |
| F3 | Load |
| F4 | Sound/Music |
| F5 | Change Music |
| F6 | Quicksave |
| F7 | Chase View |
| F8 | Messages |
| F9 | Quickload |
| F10 | Quit |
| F11 | Brightness |
| F12 | Save PCX |
| ESC | Menu |
If you start EDuke32 and it is not recognizing your controller bring down the console and type:
in_joystick 1
Eduke32 For Macbook
For information on how to configure an XBox360 controller to work in eduke32, check out this forum post.