What Is BuildGDX and Which Classic Build Engine Games Can It Run?

BuildGDX is a Java-based port of the Build engine that lets you run Blood, Duke Nukem 3D, Shadow Warrior, Redneck Rampage, Witchaven, Tekwar and related games on modern systems. It is developed by M210 Projects and distributed through m210.duke4.net. You need your own copy of each game's data files to use it, and since it runs on Java, you need JRE 8 or newer. If you want a cross-platform, actively maintained way to play these games with gamepad and modern input support, BuildGDX is a reasonable choice — but if you only care about Duke Nukem 3D and want the most mature native port, eDuke32 is the more established option.

What BuildGDX actually is

BuildGDX is not a single program for one game. It is a family of ports built on the same Java/libGDX codebase, with separate branches for different Build engine titles:

Branch Game(s)
BloodGDX Blood
DukeGDX Duke Nukem 3D
WangGDX Shadow Warrior
TekwarGDX Tekwar
LSPGDX Witchaven and related titles
DK / RR Redneck Rampage series

Each branch gets its own fixes in a release. For example, the v1.18 changelog lists a BloodGDX fix for loading extra data in savegame files, a DukeGDX improvement to CON addon finding, and a WangGDX fix for leaving a vehicle in map2. That means a BuildGDX update is really a bundle of per-game updates, not one uniform change.

Which games it runs

The port covers the main Build engine catalogue: Blood, Duke Nukem 3D, Shadow Warrior, Redneck Rampage, Witchaven and Tekwar. Because these are separate branches, support quality and update timing differ by game — a fix in one branch does not automatically apply to another.

How it compares to eDuke32 and the original DOS versions

The key differences come down to platform, runtime and feature set:

  • Runtime: BuildGDX runs on Java (JRE 8 required as of v1.17), which is what makes it cross-platform. eDuke32 is a native port, so it is typically tied to specific platforms but can feel closer to the original code path.
  • Scope: eDuke32 targets Duke Nukem 3D specifically. BuildGDX covers a wider set of Build games through its branches.
  • Modern features: BuildGDX adds raw mouse input, a new controller input logic, drag-and-drop map file loading, and a rebuilt sound manager with an OpenAL driver. These are the kinds of conveniences the original DOS releases do not have.
  • Save compatibility: BuildGDX v1.17 increased the savegame version, and the notes state it is "not comfortable with old BuildGDX" — in practice, saves from older BuildGDX versions may not load in newer ones.

If your goal is simply to play Duke Nukem 3D with the largest modding ecosystem, eDuke32 is the conventional pick. If you want one launcher-style toolset covering Blood, Shadow Warrior and the rest on a modern OS, BuildGDX is the broader option.

What changed in recent versions

The current release listed on the site is BuildGDX v1.18 (11 January 2025). Its notable changes include:

  • Bilinear filtration for palette emulation mode, plus a palette emulation soft shading option
  • XInput gamepad support (Windows only)
  • Library updates: libgdx 1.13.0, jinput 2.0.10, lwjgl 3.3.3
  • Mouse sensitivity changed from a 0–2 slider to a text field
  • useHighTiles and useModels default back to true for new configs (affects skyboxes)
  • Crash fixes for deleting all saves then saving, for a single demo in "randomly" playback mode, and for loading maps with broken sectors in the Polygdx renderer
  • Software renderer now rejects resolutions above 4096x3072
  • OSX sky rendering and resolution changing fixed

The previous major release, v1.17 (23 August 2024), was a larger internal overhaul: Java code moved to version 8, raw mouse input and new controller logic arrived, drag-and-drop map files were added, and the sound manager, audio OpenAL driver, console, input processor, file handler and renderer changer were all replaced. The author noted at the time that the release did not contain everything intended and that some changelog items may have been omitted.

Earlier versions on the page — v1.16 (2021), v1.15 and v1.14 (2020) — show the project has been maintained over several years rather than being a one-off release.

Before you download

Two practical conditions matter:

  1. You need the game data. BuildGDX is a port, not a game. You must supply the data files from a legitimate copy of each title you want to run.
  2. You need Java. v1.17 raised the requirement to JRE 8. Older versions may run on earlier Java, but the current release expects JRE 8 or newer.

Also plan for savegame compatibility: if you start a playthrough on one BuildGDX version and later update, check whether your saves still load, since the savegame version changed in v1.17.

The downloads, screenshots, forums and links are all reachable from the M210 Projects site, which also hosts a Discord server for support.

m210.duke4.net
BuildGDX (The port of Blood, Duke3D, Shadow Warrior, Redneck Rampage, Witchaven, Tekwar, etc.)