Releases: dhewm/dhewm3
dhewm3 1.5.5 Release Candidate 2
Release Candidate 2 for the upcoming version 1.5.5 of our Doom 3 Sourceport
Needs the original Doom3 (not BFG!) game data.
See https://dhewm3.org/ for more information.
dhewm3-wide-guis-v0.2.zip contains (optional) widescreen versions of several Doom3 UIs, including main menu, PDA and HUD. They were created by the awesome @Arl90 - thanks a lot!
They have been updated to fix some graphical issues.
Note: The provided Linux build requires SDL 2.0.12 or newer.
Thanks to MacSourcePorts for providing the notarized Mac build (for Apple Silicon and 64bit Intel)!
dhewm3-mods contains some new mods:
- Desolated - The Crying Fate (New in RC2!)
- ELDOOM
- Grimm
- HeXen: Edge Of Chaos Demo
- Real Gibs
- Note: The page says it only works with the 32bit version of dhewm3, but that refers to the realgibs.dll they ship.
Use their gamedata with the .dll/.so provided here (or build the lib yourself)
- Note: The page says it only works with the 32bit version of dhewm3, but that refers to the realgibs.dll they ship.
- Blood Mod v1.8 now also supports the Resurrection Of Evil (d3xp) addon
Changes since 1.5.5 RC1:
- Fixed a crash when using an incomplete cubemap texture (missing one side).
Will now print a warning about the missing side. - Loading Blood Mod for d3xp (Resurrection of Evil) via Mods menu works now
- The
timescaleCVar works again (broke with the "smoother timing" changes) - Fixed some timing issues, esp. when trying to sleep for one frame in scripts, introduced with the "smoother timing" changes (#727)
- Fixed MD3 animation issue when multiple instances of the same model were visible (#727)
dhewm3 1.5.5 Release Candidate 1
NOTE: There is a new Release candidate, you probably want to use that instead
https://github.com/dhewm/dhewm3/releases/tag/1.5.5_RC2
Release Candidate 1 for the upcoming version 1.5.5 of our Doom 3 Sourceport
Needs the original Doom3 (not BFG!) game data.
See https://dhewm3.org/ for more information.
dhewm3-wide-guis-v0.1.zip contains (optional) widescreen versions of several Doom3 UIs, including main menu, PDA and HUD. They were created by the awesome @Arl90 - thanks a lot!
Note: The provided Linux build requires SDL 2.0.12 or newer.
Thanks to MacSourcePorts for providing the notarized Mac build (for Apple Silicon and 64bit Intel)!
dhewm3-mods contains some new mods:
- ELDOOM
- Grimm
- HeXen: Edge Of Chaos Demo
- Real Gibs
- Note: The page says it only works with the 32bit version of dhewm3, but that refers to the realgibs.dll they ship.
Use their gamedata with the .dll/.so provided here (or build the lib yourself)
- Note: The page says it only works with the 32bit version of dhewm3, but that refers to the realgibs.dll they ship.
- Blood Mod v1.8 now also supports the Resurrection Of Evil (d3xp) addon
Changes since 1.5.4:
- Enable/disable Soft Particles when loading a graphics quality preset (only enabled in Ultra preset,
though you can still configure it independently like before; #604) - Greatly improve precision of internal timing, which should eliminate micro stutters
(that were esp. noticeable when using VSync with 60Hz displays).
Related:com_showFPSis now more precise andcom_showFPS 2shows additional information - Support BC7-compressed (BPTC) .dds textures. They offer better quality than the older S3TC/DXT/BC1-3
texture compression standard that Doom3 always supported. Mostly relevant for high-res retexturing
packs, because they offer similar quality as uncompressed TGAs while being smaller, using only
a quarter of the VRAM (TGA: 4 bytes per pixel, BC7: 1 byte per pixel) and loading significantly
faster because mipmaps are contained and don't have to be generated on load.
If you have such DDS files and want to use them (instead of TGAs), you must set
image_usePrecompressedTextures 1andimage_useNormalCompression 2.
You can also setimage_usePrecompressedTextures 2, then dhewm3 will only load .dds textures
with BC7 data - if it only finds an old one (with S3TC/DXT/BC-13 compression) it will use the
uncompressed TGA textures instead.
If you want to create .dds files with BC7 texture data, you can use any common texture compression
tool, except for normalmaps, those must be created with my
customized bc7enc with the-r2aflag!
(Because Doom3 requires that normalmaps have the red channel moved into the alpha channel,
id confusingly called that "RXGB", and AFAIK no other tool supports that for BC7.)
Just like the old DXT .dds files, they must be in thedds/subdirectory of a mod (either directly
in the filesystem or in a .pk4). - Allow creating aspect-ratio-independent GUIs (HUD and menus), based on code from
CstDoom3, but greatly extended (#324).
Note that this won't work out of the box with the original Doom3 game data, but requires updated GUIs.
See docs/GUIs.md for how to use these features when creating GUIs. - Support SDL3 (SDL2 and, to some degree, SDL1.2 are also still supported)
- Fix bugs on 64bit Big Endian platforms (#472, #625)
- Fixes for high-poly models (use heap allocation instead of
alloca()for big buffers; #528) - Fix building dhewm3ded with newer OpenAL Soft headers (#633)
- Better support for High-DPI mice:
- Don't ignore mouse input on fast movement ("ridiculous mouse delta"; #616)
- Allow setting sensitivity to values
< 1in the dhewm3 settings menu to allow sane speeds
for looking around with High-DPI mice (otherwise it might be way too fast)
- Fix a crash (assertion) on start with ImGui if
SDL_GetWindowDisplayIndex()
orSDL_GetDisplayDPI()failed and theimgui_scaleCVar was set to the default value of-1
(setting it to1worked around the bug; #632) - Updated Dear ImGui to 1.91.7
- Fix scaling of Grabber cursor in Resurrection of Evil in non-4:3 resolutions (#637)
- Add
com_disableAutoSavesCVar: If set to1, Autosaves (when starting a level) are disabled (#620) - Add support for "nospecular" parm of lights, enabled by setting
"allow_nospecular" "1"in a maps
worldspawn, or by setting ther_allowNoSpecularCVar to1.
Note that this required changing the format of demos. dhewm3 can still play old demos, but ones
recorded with current dhewm3 are not compatible with older dhewm3 versions, original Doom3 or
other source ports (unless they do the same change). - Make sure macOS doesn't show popups for key-alternatives when pressing a key for longer while ingame
- Windows: Show error MessageBox if dhewm3log.txt can't be created on startup (#544)
- Running a timedemo with sound disabled (
s_noSound 1) doesn't crash anymore (#163) - Show some OpenGL/GPU information in the Video Options tab of the dhewm3 Settings Menu
- Fix saving/loading of
idSpring(func_spring) entity (#31) - Fix several issues (incl. crashes and missing shadows) with MD3 models (#698)
- Fix the "shrivel" effect of MD5 models (
SHADERPARM_MD5_SKINSCALE) - Optionally integrate the Tracy profiler.
Disabled unless you enable it in CMake. - Fixed a crash in AI pathfinding code that could happen in the lotsaimps testmap (#721)
- Disabled assertion in
TestHugeTranslation()that led to "crashes" in several user-maps (#720) - Fixed concatenation of timed GUI commands that sometimes lead to glitches in UIs
- Added
fs_gameDllPathCVar: If set, game DLLs will be searched in that directory before the other
standard places (like next to the executable). Especially useful for developing/debugging mod DLLs
(you can just setfs_gameDllPathto the build dir, no need to copy the DLL/.so/.dylib) - Several smaller fixes for all kinds of things incl. build issues
dhewm3 1.5.4
By the way: A release candidate for the next version is available - you may want to try that instead :)
Release 1.5.4 of our Doom 3 Sourceport
Celebrating 20 years of Doom 3!
Needs the original Doom3 (not BFG!) game data.
See https://dhewm3.org/ for more information.
Note: The provided Linux build now requires SDL 2.0.12 or newer.
If your system has an older version of SDL2 (e.g. 2.0.10 on Ubuntu 20.04), you can put the libSDL2-2.0.so.0 from sdl-2.30.0-linux-amd64.tar.gz into dhewm3/libs/ to make dhewm3 use this updated version of SDL2 (2.30.0).
An up-to-date version for macOS is available at http://www.macsourceports.com/sourceport/dhewm3
Changes since 1.5.3:
- dhewm3-mods now contains game DLLs/libs for several new mods:
- Blood Mod v1.5
- Perfected Doom3 (ROE) v7
- Sikkmod v1.2 and Sikkmod RoE v1.1
- See the README files in the dhewm3-mods archives for more details, and the dhewm3-sdk repository for source code
- A brand new settings menu that uses Dear ImGui.
Can be opened withF10(unless that key is bound already) or by enteringdhewm3Settings
in the console. It has lots of settings that the original options menu doesn't have and
can be easily navigated with gamepad or keyboard (or the mouse, of course).
It can also be opened while in the game, which then is paused (if Single Player) but still visible,
so the effect of most graphics settings can be seen immediately.
Needs SDL2 and C++11. - "Soft" Particles (that don't "cut" into geometry but fade smoothly), based on code from The Dark Mod
2.04. Can be enabled/disabled withr_useSoftParticles, is applied automatically for all appropriate
particles (view-aligned, using additive or alpha blending and not too small) r_enableDepthCapture: Enable capturing depth buffer to texture, needed for the soft particles.
Can be used in custom materials by using the"_currentDepth"texture- Replaced dependency on (external) zlib with integrated miniz
- HighDPI/Retina support
- Allow inverted mouse look (horizontally, vertically or both) with
m_invertLook - CVar to allow always run in single player (still drains stamina though!):
in_allowAlwaysRunInSP - VSync can be enabled/disabled on the fly, without restarting the renderer (still with
r_swapInterval
or in the menu, of course; needs SDL2) - Allow enabling/disabling HRTF with
s_alHRTF s_alOutputLimiter: Configure OpenAL's output-limiter which temporarily reduces the overall
volume when too many too loud sounds play at once, to avoid issues like clippings_scaleDownAndClamp: Clamp and reduce volume of all sounds to prevent clipping or temporary
downscaling by OpenAL's output limiter- If
r_windowResizableis set, the dhewm3 window (when in windowed mode..) can be freely resized.
Needs SDL2; with 2.0.5 and newer it's applied immediately, otherwise when creating the window. - If switching between fullscreen and windowed mode or similar changes causes issues (like here), you can set
r_vidRestartAlwaysFull 1, so (again) a fullvid_restartis done, instead of the partial one which usually suffices for just changing the resolution or fullscreen state. If you run into that issue (probably a driver bug), you'll probably also want to setr_windowResizable 0, because resizing the window that way also triggered the bug, and in that case novid_restartis done at all - Fixed screenshots when using native Wayland (
SDL_VIDEODRIVER=wayland) - If you enter the
mapcommand in the console, without any arguments, the current map name is printed - Support OpenGL debug contexts and messages (
GL_ARB_debug_output). Can be enabled withr_glDebugContext 1.
Changing that CVar requires avid_restart(or set it as startup argument) - In the Win32 release, updated the bundled SDL2 to 2.30.5 and cURL to 8.9.0
- In the dhewm3-mods archive for Linux, the librecoop libs have been rebuild (fix #589)
Thank you very much to everyone who tested this, especially @j4reporting, @ALord7, @Eonfge and @tomkidd (who also maintains the macOS port at http://www.macsourceports.com/sourceport/dhewm3)!
Special thanks to Valkyries733 from the idtech4 Discord channel who created the picture celebrating 20years of Doom3 used in the newspost
dhewm3 1.5.4 Release Candidate 3
Release Candidate 3 for the upcoming version 1.5.4 of our Doom 3 Sourceport
(hopefully the last one)
This is outdated, please use 1.5.4 instead!
Click to see the rest of this outdated post
Needs the original Doom3 (not BFG!) game data.
See https://dhewm3.org/ for more information.
The only change since RC2 is a fix for Soft Particles (that made the muzzle flash in Dentonmod look wrong).
The mods themselves haven't changed, download them from RC2
dhewm3 1.5.4 Release Candidate 2
Release Candidate 2 for the upcoming version 1.5.4 of our Doom 3 Sourceport
This is outdated, please use 1.5.4 instead!
Click to see the rest of this outdated post
Needs the original Doom3 (not BFG!) game data.
See https://dhewm3.org/ for more information.
Note: The provided Linux build now requires SDL 2.0.12 or newer.
If your system has an older version of SDL2 (e.g. 2.0.10 on Ubuntu 20.04), you can put the libSDL2-2.0.so.0 from sdl-2.30.0-linux-amd64.tar.gz into dhewm3/libs/ to make dhewm3 use this updated version of SDL2 (2.30.0).
Changes since 1.5.4 RC1:
- Fixed mods menu to support Perfected Doom 3 ROE and Sikkmod RoE (so they automatically get fs_game_base set to d3xp when started from the menu)
- Make entries for base game and Resurrection of Evil (d3xp) in mods menu clearer
- Fixed Perfected Doom 3 ROE (so it actually starts)
- Applied fix to Perfected Doom 3 and Sikkmod so the crosshair is round in widescreen resolutions
dhewm3 1.5.4 Release Candidate 1
Release Candidate 1 for the upcoming version 1.5.4 of our Doom 3 Sourceport
This is outdated, please use 1.5.4 instead!
Click to see the rest of this outdated post
Needs the original Doom3 (not BFG!) game data.
See https://dhewm3.org/ for more information.
Note: The provided Linux build now requires SDL 2.0.12 or newer.
If your system has an older version of SDL2 (e.g. 2.0.10 on Ubuntu 20.04), you can put the libSDL2-2.0.so.0 from sdl-2.30.0-linux-amd64.tar.gz into dhewm3/libs/ to make dhewm3 use this updated version of SDL2 (2.30.0).
Changes since 1.5.3:
- dhewm3-mods now contains game DLLs/libs for several new mods:
- Blood Mod v1.5
- Perfected Doom3 (ROE) v7
- Sikkmod v1.2 and Sikkmod RoE v1.1
- See the README files in the dhewm3-mods archives for more details, and the dhewm3-sdk repository for source code
- A brand new settings menu that uses Dear ImGui.
Can be opened withF10(unless that key is bound already) or by enteringdhewm3Settings
in the console. It has lots of settings that the original options menu doesn't have and
can be easily navigated with gamepad or keyboard (or the mouse, of course).
It can also be opened while in the game, which then is paused (if Single Player) but still visible,
so the effect of most graphics settings can be seen immediately.
Needs SDL2 and C++11. - "Soft" Particles (that don't "cut" into geometry but fade smoothly), based on code from The Dark Mod
2.04. Can be enabled/disabled withr_useSoftParticles, is applied automatically for all appropriate
particles (view-aligned, using additive or alpha blending and not too small) r_enableDepthCapture: Enable capturing depth buffer to texture, needed for the soft particles.
Can be used in custom materials by using the"_currentDepth"texture- Replaced dependency on (external) zlib with integrated miniz
- HighDPI/Retina support
- Allow inverted mouse look (horizontally, vertically or both) with
m_invertLook - CVar to allow always run in single player (still drains stamina though!):
in_allowAlwaysRunInSP - VSync can be enabled/disabled on the fly, without restarting the renderer (still with
r_swapInterval
or in the menu, of course; needs SDL2) - Allow enabling/disabling HRTF with
s_alHRTF s_alOutputLimiter: Configure OpenAL's output-limiter which temporarily reduces the overall
volume when too many too loud sounds play at once, to avoid issues like clippings_scaleDownAndClamp: Clamp and reduce volume of all sounds to prevent clipping or temporary
downscaling by OpenAL's output limiter- If
r_windowResizableis set, the dhewm3 window (when in windowed mode..) can be freely resized.
Needs SDL2; with 2.0.5 and newer it's applied immediately, otherwise when creating the window. - If switching between fullscreen and windowed mode or similar changes causes issues (like here), you can set
r_vidRestartAlwaysFull 1, so (again) a fullvid_restartis done, instead of the partial one which usually suffices for just changing the resolution or fullscreen state. If you run into that issue (probably a driver bug), you'll probably also want to setr_windowResizable 0, because resizing the window that way also triggered the bug, and in that case novid_restartis done at all - Fixed screenshots when using native Wayland (
SDL_VIDEODRIVER=wayland) - If you enter the
mapcommand in the console, without any arguments, the current map name is printed - Support OpenGL debug contexts and messages (
GL_ARB_debug_output). Can be enabled withr_glDebugContext 1.
Changing that CVar requires avid_restart(or set it as startup argument) - In the Win32 release, updated the bundled SDL2 to 2.30.5 and cURL to 8.9.0
- In the dhewm3-mods archive for Linux, the librecoop libs have been rebuild (fix #589)
dhewm3 1.5.3
Release 1.5.3 of our Doom 3 Sourceport
By the way: There is a newer release - you probably want that instead :)
Needs the original Doom3 (not BFG!) game data.
See https://dhewm3.org/ for more information.
UPDATE 2024-04-19:
The Linux binaries of this release were buggy, see #572.
If you want to use the Linux amd64 binaries provided here (instead of compiling yourself), please use the updated dhewm3-1.5.3try2_Linux_amd64.tar.gz and dhewm3-mods-1.5.3try2_Linux_amd64.tar.gz instead.
To avoid confusion, I deleted the old Linux binary archives from the downloads below.
The only change compared to 1.5.3 is 6daf1e9, and as far as I can tell this bug only manifests itself when compiling with ancient versions of GCC (I use 4.7.2 in my build environment; current Linux distributions ship GCC 9 or newer), so I decided against creating an entire new dhewm3 release for this.
Note: The provided Linux build now requires SDL 2.0.12 or newer.
If your system has an older version of SDL2 (e.g. 2.0.10 on Ubuntu 20.04), you can put the libSDL2-2.0.so.0 from sdl-2.30.1-linux-amd64.tar.gz into dhewm3/libs/ to make dhewm3 use this updated version of SDL2 (2.30.1).
Changes since 1.5.2:
- Support for gamepads (based on code from Quadrilateral Cowboy,
but heavily expanded). See Configuration.md for more information. Needs SDL2. - Support different file formats for screenshots by setting the
r_screenshotFormatCVar
(0 = TGA, still the default, 1 = BMP, 2 = PNG, 3 = JPG).r_screenshotJpgQualityand
r_screenshotPngCompressionallow configuring how JPG/PNG are compressed.
Thanks eezstreet (Nick Whitlock)! - Fixed problems with lights after loading a savegame (#495)
- Fix volume of some weapon sounds, like chaingun being too quit (#326)
- Increase stack size on Windows to 8MB (instead default of 1MB) to make loading huge models work
- Fixed crash in Radiant Model Preview Dialog (#496)
- Fix MD3 model support
- Several new CMake options:
- To enable Clang/GCC Address Sanitizer and Undefined Behavior Sanitizer
- Hardlink the game code into the executable (instead of using game DLLs,
only supports base or d3xp then; needed for Undefined Behavior Sanitizer) - Force colored diagnostic output from GCC or Clang (esp. useful when building with ninja)
- Fix several compiler warnings
- Added build instructions for Linux (and similar systems) to README.md
- Added documentation for dhewm3-specific settings (mostly CVars): Configuration
- Updated stb_image and stb_vorbis
- Updated minizip (from zlib/contrib) to latest upstream code
- Added
in_namePressedCVar to print currently pressed key/button (useful for binding keys
in the console or configs). Thanks Biel BestuΓ© de Luna! - Updated bundled libs on Windows: OpenAL Soft 1.23.1, SDL 2.30.1, cURL 8.6.0, zlib 1.3.1
- Linux binary build provided here now requires SDL 2.0.12 or newer (I provide an updated
libSDL2-2.0.so.0though).
If you compile dhewm3 yourself, older SDL2 versions (and SDL1.2) are still supported (however, SDL1.2 doesn't support gamepads).
dhewm3 1.5.3 Release Candidate 2
Release Candidate 2 for the upcoming version 1.5.3 of our Doom 3 Sourceport
This is outdated, please use 1.5.3 instead.
Needs the original Doom3 (not BFG!) game data.
See https://dhewm3.org/ for more information.
Note: The provided Linux build now requires SDL 2.0.12 or newer.
If your system has an older version of SDL2 (e.g. 2.0.10 on Ubuntu 20.04), you can put the libSDL2-2.0.so.0 from sdl-2.30.0-linux-amd64.tar.gz into dhewm3/libs/ to make dhewm3 use this updated version of SDL2 (2.30.0).
Changes since 1.5.3 RC1:
- Updated minizip (from zlib/contrib) to latest upstream code
- Fix bug with detecting if cursor is on ingame-UI or not, leading to mixing up the A/B/X/Y buttons on gamepads in normal gameplay.
(NOTE: This fix requires changes in the game DLLs, so if you want to play the supported mods make sure to use the latest builds linked below, or rebuild them yourself from latest git code)
dhewm3 1.5.3 Release Candidate 1
Release Candidate 1 for the upcoming version 1.5.3 of our Doom 3 Sourceport
This is outdated, please use 1.5.3 instead.
Click to see the rest of this post
Needs the original Doom3 (not BFG!) game data.
See https://dhewm3.org/ for more information.
Note: The provided Linux build now requires SDL 2.0.12 or newer.
If your system has an older version of SDL2 (e.g. 2.0.10 on Ubuntu 20.04), you can put the libSDL2-2.0.so.0 from sdl-2.30.0-linux-amd64.tar.gz into dhewm3/libs/ to make dhewm3 use this updated version of SDL2 (2.30.0).
Note: There are no new builds of mod .DLL/.so files yet, the ones from 1.5.2 work with 1.5.3 as well.
Changes since 1.5.2:
- Support for gamepads (based on code from Quadrilateral Cowboy,
but heavily expanded). See Configuration.md for more information. - Support different file formats for screenshots by setting the
r_screenshotFormatCVar
(0 = TGA, still the default, 1 = BMP, 2 = PNG, 3 = JPG).r_screenshotJpgQualityand
r_screenshotPngCompressionallow configuring how JPG/PNG are compressed.
Thanks eezstreet (Nick Whitlock)! - Fixed problems with lights after loading a savegame (#495)
- Fix volume of some weapon sounds, like chaingun being too quit (#326)
- Increase stack size on Windows to 8MB (instead default of 1MB) to make loading huge models work
- Fixed crash in Radiant Model Preview Dialog (#496)
- Fix MD3 model support
- Several new CMake options:
- To enable Clang/GCC Address Sanitizer and Undefined Behavior Sanitizer
- Hardlink the game code into the executable (instead of using game DLLs,
only supports base or d3xp then; needed for Undefined Behavior Sanitizer) - Force colored diagnostic output from GCC or Clang (esp. useful when building with ninja)
- Fix several compiler warnings
- Added build instructions for Linux (and similar systems) to README.md
- Updated stb_image and stb_vorbis
- Updated bundled libs on Windows: OpenAL Soft 1.23.1, SDL 2.30.0, cURL 8.6.0, zlib 1.3.1
- Linux binary build provided here now requires SDL 2.0.12 or newer.
If you compile dhewm3 yourself, older SDL2 versions (and SDL1.2) are still supported.
dhewm3 1.5.2
Release 1.5.2 of our Doom3 Sourceport.
Needs the original Doom3 (not BFG!) game data.
See https://dhewm3.org/ for more information
By the way: There is a newer release - you probably want that instead :)
UPDATE 2022-06-13 13:32:19 UTC: Replaced dhewm3-mods_1.5.2_win32.zip - the original archive's d3le.dll was broken
Click to see changes since 1.5.1
- Gamma and Brightness are now applied in the shaders instead of by setting hardware gamma.
Can be disabled (so hardware gamma is used again) withr_gammaInShaders 0 - Improvements for (Windows-only) MFC-based tools:
- Added the script debugger! (thanks HarrievG!)
Original Doom3 didn't have it (Quake4 did), but the Doom3 GPL source contained
most of it. HarrievG implemented the missing parts and we added some new
features. It can even be used over the network and while the client part
(the debugger GUI) is Windows-only, the server can run on all supported
platforms, so you can debug a game running on Linux or macOS, for example.
Relevant CVars for network debugging are:
com_enableDebuggerServerandcom_dbgClientAdrandcom_dbgServerAdr.
To debug the running game on the same PC, just enterdebuggerin the console. - All tools can now be built in 64bit (thanks raynorpat!)
- HighDPI support (thanks HarrievG!)
- PDAEditor works now
- Additional bugfixes
- Added the script debugger! (thanks HarrievG!)
- Cycle through multiple Quicksave slots instead of immediately overwriting the last
Quicksave. Thecom_numQuicksavesCVar allows setting the number of QuickSaves (#392) - Make r_locksurfaces work (#357)
It doesn't do exactly what its description and name suggests: it renders
everything that is currently visible from the position/view the player had
when settingr_locksurfaces 1. Originally it was supposed to render exactly
the surfaces that were visible then, but I couldn't get that to work.
This is pretty similar, but there may be differences with opened doors and such. - Keyboard input improvements (mostly SDL2-only):
- Support (hopefully) all keyboard keys on all kinds of keyboard layouts
by using scancodes for otherwise unknown keys - Support typing in non-ASCII characters, if supported by Doom3 (it supports ISO-8859-1)
- Support the clipboard also on non-Windows platforms
You can paste text from the clipboard into the console or other edit fields
withShift+Insert - Explicit support for Right Ctrl, Alt and Shift keys
(can be bound to different actions than their left counterparts) - Added
in_grabKeyboardCVar to make sure dhewm3 gets all keyboard input
Prevents the Windows-key or Alt-Tab or whatever from taking focus from the game - Added
in_ignoreConsoleKey- if set to1, the console is only opened with
Shift+Esc, and the "console key" (that key between Esc, 1 and Tab) can be freely
bound to an action (and its char can be typed in the console without closing it). - Added (SDL2-only) "auto" option for
in_kbd: When not disabling the console key,
dhewm3 will try to automatically detect it ifin_kbdis set to "auto" (now default)
- Support (hopefully) all keyboard keys on all kinds of keyboard layouts
- Reworked mouse-input and -grabbing code, using absolute mouse mode in fullscreen GUIs
(except for the PDA, because it's implemented weirdly).
This made releasing the mouse in the main menu possible, as now the ingame cursor
is at the same position as the system cursor. s_alReverbGainCVar to reduce EFX reverb effect intensity (#365)- Pause (looped) sounds when entering menu (#330)
- Fixes for looped sounds (#390)
- Replace libjpeg with stb_image and libogg/libvorbis(file) with stb_vorbis
- Now the only required external dependencies should be OpenAL, SDL, zlib
and optionally libCURL (and of course the C and C++ runtimes)
- Now the only required external dependencies should be OpenAL, SDL, zlib
- (Optionally) use libbacktrace on non-Windows platforms for more useful
backtraces in case of crashes (usually linked statically) - Fixed a deadlock (freeze) on Windows when printing messages from another thread
- Fixed endless loop (game locking up at startup) if graphics settings couldn't be applied (#386)
- Fixed some warnings and uninitialized variables (thanks turol!)
- Work around dmap bug caused by GCC using FMA "optimizations" (#147)
- Prevent dhewm3 from being run as root on Unix-like systems to improve security
- Replaced most usages of
strncpy()with something safer to prevent buffer overflows
(remaining cases should be safe).- Just a precaution, I don't know if any of them could actually be exploited,
but there were some compiler warnings in newer GCC versions.
- Just a precaution, I don't know if any of them could actually be exploited,
- Console output is now logged to
dhewm3log.txt(last log is renamed todhewm3log-old.txt)- On Windows it's in
My Documents/My Games/dhewm3/ - On Mac it's in
$HOME/Library/Application Support/dhewm3/ - On other Unix-like systems like Linux it's in
$XDG_DATA_HOME/dhewm3/
(usually$HOME/.local/share/dhewm3/)
- On Windows it's in
- Improved compatibility with Wayland (#426)
- Work around assertion in AlphaLabs4 due to "ride_of_death" yeeting
the dead "monster_zsec_shotgun_12" into the void (#409) - Support loading some mods known to need
fs_game_base d3xpvia Mods menu
(currently, The Lost Mission and LibreCoop d3xp are supported) - Disable assertion in idSampleDecoderLocal::DecodeOGG() that triggered
when starting a new Classic Doom3 game (#461)