emulator: GZDoom type: standalone core_classification: game_engine source: "https://github.com/ZDoom/gzdoom" upstream: "https://github.com/ZDoom/gzdoom" profiled_date: "2026-10-04" source_commit: "c26ce2e6ca2a0c770f140cb25dde0d30073ca8f7" core_version: "4.15pre" display_name: "GZDoom" cores: [] systems: [doom, heretic, hexen, strife, chex] notes: | Doom-engine source port by Christoph Oelckers. Supports Doom, Heretic, Hexen, Strife, Chex Quest and derived games through a unified IWAD identification pass. Engine resources (built from wadsrc*/static/ via add_pk3): gzdoom.pk3 BASEWAD, searched by BaseFileSearch ref: src/version.h:90, src/d_main.cpp:3757-3761 game_support.pk3 OPTIONALWAD, filter/game assets per IWAD ref: src/version.h:92, src/d_main.cpp:3794 lights.pk3 dynamic light definitions brightmaps.pk3 brightmap textures game_widescreen_gfx.pk3 widescreen HUD/menu replacements The last three are skipped for shareware IWADs and with -noextras. ref: src/d_main.cpp:2050-2071 Game data is a user-supplied IWAD. iwadinfo.txt declares each known IWAD with its IWADName, MustContain lumps and support files. The search directories are scanned for the file names of its Names block and for any .iwad, .ipk3 or .ipk7 file. Each candidate is then identified by its lumps, not by its name. The Names block also lists doomu.wad, doom1.wad, bfgdoom.wad, bfgdoom2.wad, freedoomu.wad, freedoom.wad, hereticsr.wad, heretic1.wad, hexendemo.wad, hexdemo.wad, strife0.wad and strife.wad. ref: wadsrc_extra/static/iwadinfo.txt:650-703, src/d_iwad.cpp:502-530 Startup refuses to run if BASEWAD (gzdoom.pk3) is absent, and stops with "Cannot find a game IWAD" when no candidate is identified. ref: src/d_main.cpp:3757-3761, src/d_iwad.cpp:789-798 files: # ================================================================ # Engine resources (shipped with the port, add_pk3 in CMakeLists) # ================================================================ - name: "gzdoom.pk3" category: game_data required: true bundled: true size: 3132275 sha1: "5eca7aae47b5851de06303c48165f9d75145da4c" md5: "5772f907fdee4284f6332d89c0c5609c" crc32: "3c4dfe79" source_ref: "src/version.h:90, src/d_main.cpp:3757-3761, wadsrc/CMakeLists.txt:1" note: "Fonts, menus, zscript, textures. Fatal if absent. Built from the tree at each release. The hash is the copy in the 4.14.2 Windows zip." - name: "game_support.pk3" category: game_data required: false bundled: true size: 2379443 sha1: "fe656e64f872450e5d691f0c19a174a4aea5050d" md5: "c679df011fca562cfb20f9a3a4b0d80f" crc32: "56e96007" source_ref: "src/version.h:92, src/d_main.cpp:3794-3796, wadsrc_extra/CMakeLists.txt:1" note: "Per-game filters under static/filter/ (doom.id, strife, hexen, heretic, chex...). The hash is the copy in the 4.14.2 Windows zip." - name: "lights.pk3" category: game_data required: false bundled: true size: 24030 sha1: "c7f7cc23d223938700ad38ee2888062f35f97dbb" md5: "0b9deffc98788ee19c7da017c1ad4680" crc32: "089159b5" source_ref: "src/d_main.cpp:2053-2058, wadsrc_lights/CMakeLists.txt:1" note: "The hash is the copy in the 4.14.2 Windows zip." - name: "brightmaps.pk3" category: game_data required: false bundled: true size: 246181 sha1: "a0854eeea281741a9f2491f9f04ba5c7cfc0a3a7" md5: "448d065ef519e5763a6598329ea875da" crc32: "40da9ce8" source_ref: "src/d_main.cpp:2059-2064, wadsrc_bm/CMakeLists.txt:1" note: "The hash is the copy in the 4.14.2 Windows zip." - name: "game_widescreen_gfx.pk3" category: game_data required: false bundled: true size: 5565936 sha1: "218e77f4850cf596e1cdf3abb80d2720dc16c5e4" md5: "2530586849630cd131da80a9112af2a2" crc32: "b06e58e3" source_ref: "src/d_main.cpp:2065-2070, wadsrc_widepix/CMakeLists.txt:1" note: "The hash is the copy in the 4.14.2 Windows zip." - name: "gzdoom.sf2" aliases: ["uzdoom.sf2"] category: game_data path: "soundfonts/gzdoom.sf2" required: false bundled: true size: 3299098 sha1: "4394193fb95c1e59916efe9ac3a47952ab5002f5" md5: "f306ebc541a428d296cd3b7ee996d872" crc32: "408ab422" source_ref: "src/common/audio/music/i_soundfont.cpp:334-352, 427-430, 439-459, src/CMakeLists.txt:1429" note: "Default soundfont, used when the soundfont directories hold none. Every file of those directories is taken by its content. When no soundfont is named gzdoom the first SF2 found is used. Shipped in the 4.14.2 Windows zip." - name: "GENMIDI.GS.wopl" category: game_data path: "fm_banks/GENMIDI.GS.wopl" required: false bundled: true not_bundled_on: [retropie] size: 118767 sha1: "538d220d87b86b997f539265eb12a6c319e17a1c" md5: "29570afc6ccea3d9ef7d2734f02e6cab" crc32: "d18f9d56" source_ref: "src/CMakeLists.txt:1431, src/gameconfigfile.cpp:165-195, src/common/audio/music/i_soundfont.cpp:355-359" note: "OPL3 bank copied next to the executable. fm_banks is one of the scanned soundfont directories. The RetroPie package leaves it out." - name: "gs-by-papiezak-and-sneakernets.wopn" category: game_data path: "fm_banks/gs-by-papiezak-and-sneakernets.wopn" required: false bundled: true not_bundled_on: [retropie] size: 274864 sha1: "eaca5d7a9fe1db6094990be0d8916b7f97920db1" md5: "4978fd39a6d78de1cf1021e24424f822" crc32: "887a8ba3" source_ref: "src/CMakeLists.txt:1433, src/gameconfigfile.cpp:165-195, src/common/audio/music/i_soundfont.cpp:360-364" note: "OPN2 bank copied next to the executable. The RetroPie package leaves it out." # ================================================================ # IWADs (user-supplied). At least one is needed to launch a game. # All source refs point to wadsrc_extra/static/iwadinfo.txt entries. # ================================================================ # ---- Doom ---- - name: "doom.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:420, 437, 659" note: "The Ultimate DOOM and DOOM Registered both use this name and are told apart by their lumps." - name: "doom2.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:640, 653" - name: "doom2f.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:625, 657" - name: "doombfg.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:332, 666" - name: "doom2bfg.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:560, 667" - name: "doomunity.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:369, 661" - name: "doom2unity.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:592, 655" - name: "doomkex.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:350, 662" - name: "doom2kex.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:576, 656" - name: "doomxbox.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:403, 660" - name: "doom2xbox.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:608, 654" - name: "doom_complete.pk3" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:389, 652" - name: "plutonia.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:545, 670" - name: "plutoniaunity.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:514, 671" - name: "plutoniakex.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:529, 672" - name: "tnt.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:499, 673" - name: "tntunity.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:468, 674" - name: "tntkex.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:483, 675" - name: "nerve.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:565, 614, src/d_iwad.cpp:877-895" note: "No Rest for the Living. Autoloaded by Doom 2 BFG and Xbox editions." - name: "nerveunity.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:598, src/d_iwad.cpp:877-895" note: "Loaded from the IWAD directory by DOOM 2: Unity Edition." - name: "extras.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:357, 376, 488, 534, 582, 598" note: "Loaded from the IWAD directory by the KEX and Unity editions." - name: "soundtrack" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:376, 598, src/d_iwad.cpp:877-895" note: "Loaded from the IWAD directory by the DOOM and DOOM 2 Unity editions." - name: "id24res.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:341, 360, 379, src/d_iwad.cpp:862-875" note: "id24 resource WAD. SupportWAD of every id IWAD block, loaded when found and i_loadsupportwad is set." # ---- Freedoom (free) ---- - name: "freedoom1.wad" category: game_data system: doom required: false installed_on: [retropie] source_ref: "wadsrc_extra/static/iwadinfo.txt:307, 676" - name: "freedoom2.wad" category: game_data system: doom required: false installed_on: [retropie] source_ref: "wadsrc_extra/static/iwadinfo.txt:294, 677" - name: "freedm.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:281, 680" # ---- Heretic ---- - name: "heretic.wad" category: game_data system: heretic required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:241, 244, 254, 257, 681" note: "Both Heretic and Shadow of the Serpent Riders use this name and are told apart by the EXTENDED lump." - name: "blasphem.wad" aliases: ["blasphemer.wad"] category: game_data system: heretic required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:228, 692-693" # ---- Hexen ---- - name: "hexen.wad" category: game_data system: hexen required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:188, 684" - name: "hexdd.wad" category: game_data system: hexen required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:196-207, 685" note: "Deathkings expansion. Requires hexen.wad (Required = Hexen: Beyond Heretic)." # ---- Strife ---- - name: "strife1.wad" category: game_data system: strife required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:151, 688" - name: "sve.wad" category: game_data system: strife required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:136, 140, 689" note: "Veteran Edition. Required = Strife: Quest for the Sigil (loads voices.wad)." - name: "voices.wad" category: game_data system: strife required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:142, 155" # ---- Chex Quest ---- - name: "chex.wad" category: game_data system: chex required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:123, 694" - name: "chex3.wad" category: game_data system: chex required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:109, 695" # ---- Standalone commercial / community IWADs ---- - name: "hacx.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:83, 698" - name: "hacx2.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:65-75, 699, src/d_iwad.cpp:351-394, src/common/filesystem/source/resourcefile.cpp:156-174" note: "Identified by the MAP01 map and the HACX-E lump, whatever the container: every candidate is opened by its magic, so a zip under this name is read as a pk3. The Hacx 2.0 repository builds that zip from src/, where hacx-e.txt is the HACX-E lump and maps/MAP01.wad the first map." - name: "action2.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:97, 696" - name: "harm1.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:57, 697" - name: "square.pk3" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:33" note: "Absent from the Names block: picked up only when named with -iwad." - name: "square1.pk3" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:45, 700" - name: "delaweare.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:22, 701" - name: "rotwb.wad" category: game_data system: doom required: false source_ref: "wadsrc_extra/static/iwadinfo.txt:9, 702"