Releases: JNechaevsky/international-doom
International Doom / Heretic / Hexen 8.0 (2024-10-06)
This is a next major version with technical improvements and few eye-candy features.
Compiled with Build Tools for Visual Studio 2022
Kind thanks to @rfomin for a lot of help with Visual Studio and insellium for raising the issue of Windows XP support!
- Win64 version: compiled as statically linked executable, so additional .dll files are no longer needed and existing ones from previous versions can be safely removed.
- Win32 version: still using .dll dependent approach, but now compatible with Windows XP.
Note for XP users: Service Pack 3 and Microsoft Visual C++ 2015-2019 Redistributable for x86 systems are required. SSE2 compatible CPU is required as well.
Features
- Significantly improved smoothing of "Diminished Lighting: Smooth" in TrueColor rendering.
- Added "Palette Fading Effect" feature to make the fading effects smoother. This also affects berserk fade in Doom; Wraithwerge, Bloodscourge and poison palette in Hexen.
- Added back "Sound of crushed corpse" feature, but now it's using stock IWAD
DSSLOP
sound. - "Items are tossed when dropped" gameplay feature now working.
- Implemented intermediate brighter gamma-correction levels.
- Added
-levelstat
command line parameter for Doom (thanks @kraflab, @fabiangreffrath and @xemonix0). - Added "Square Aspect Ratio" feature to Automap Setting (shamelessly taken from Woof! Thanks @thearst3rd).
Improvements
- Better sprite clipping for higher field of view settings and wider aspect ratios (thanks @ceski-1).
- Even better precision for patch drawing functions on higher wide screen modes, Ultra-Widerpix854 32:9 wide screen assets now working correctly (thanks @rfomin and @Meerschweinmann).
- Added dedicated "Speed On" mouse button, added names for mouse wheels and slightly reordered mouse bindings menu (thanks Dweller Dark).
- Fixed sector's sound origin for large levels (thanks @kitchen-ace).
- Gameplay Features pages can be scrolled via arrow keys when cursor is placed on
< Scroll pages >
item. - Improved coloring accuracy of Jaguar automap color scheme.
- Other small technical improvements.
Fixes
- Path to GUS patches folder now may contain spaces (thanks @mikeday0).
- Hexen: fixed possible incorrect save game deletion (thanks @mikeday0).
- Heretic and Hexen: fixed incorrect automap line anti-aliasing when toggled in the game menu.
Libraries update
- Updated SDL library to version 2.30.8.
International Doom 7.5 / Heretic 7.1 / Hexen 7.1 (2024-06-29)
Controls
- Added fast mouse polling for lower lag interpolation at uncapped frame rate (thanks @ceski-1, @mikeday0 and @rfomin).
- Mouse movement while the mouse button is held down in the active menu is no longer considered an extra key press.
- Player will no longer automatically press
use
when entering a new level after skipping intermission texts by pressinguse
. - Added a special bind for toggling the extended HUD, available in the Keyboard Binds / Special Keys section (toggles all enabled on-screen widgets and the demo bar, thanks @Catoptromancy and Aurelius).
- Level reload / Go to next level from tally screen now possible.
Video
- Improved support for UltraWide screen modes at higher render resolutions. Added 32:9 widescreen mode to the Video Options menu, as it is now properly supported. (thanks @Meerschweinmann).
- Improved stability and precision of full-screen patch drawing at higher render resolutions (thanks @Meerschweinmann).
- Added "Crossfade" for "Screen wiping effect".
Other improvements
- Save and Load menu now shows date and time of save game file (thanks @fabiangreffrath).
- Added
savegames_path
,screenshots_path
config variables and-shotdir
command line parameter (thanks @liPillON). - Single sided automap lines now appearing last in drawing order (Woof! issue #1665. Thanks @ribbiks, @rfomin and @fabiangreffrath).
- "Mark secret sectors" will now always show secret sectors after they've been found on the automap, and optionally before as well (by @kitchen-ace, thanks!).
- Extended "Show ENDOOM" to "PWAD only".
- Quick load before quick save now possible (thanks @fabiangreffrath).
- Updated program icons to 256x256 size.
Doom only
- Added back
-complevel N
command line parameter to emulate a specific version of Doom engine executable. Supported complevels are0
,1
,2
,3
and4
.
Heretic only
- Added back support for graphical startup, available in Video Options menu.
Hexen only
- Extra translucency of Quietus' green clouds has been disabled, as they can cause serious framerate drops on point-blank attacks.
Libraries update
- Updated SDL library to version 2.30.4 and FluidSynth to version 2.3.5
Compiled using GCC 14.1.0 under MSYS environment.
International Doom 7.4 (2023-03-08)
Video
- Improved True color code for better compatibility of drawing graphical patches when
PLAYPAL
andCOLORMAP
lumps have different color indexes. (thanks @fabiangreffrath) - Reduced memory consumption of screen border drawing when using bordered screen sizes (thanks @rfomin).
Automap
- Automap can be zoomed in/out by using mouse wheel (thanks @NightFright2k19).
- Marks properly cleared after finishing the level (thanks @NightFright2k19).
- Zooming in/out by pressing
+
and-
interpolated again in uncapped frame rate mode.
New features
- Added mouse look option to Control settings (thanks @Meerschweinmann).
- Added dedicated bind for toggling vertical mouse movement (thanks @kitchen-ace).
- Implemented "On Death Action" feature, available in Gameplay section of Gameplay Features menu.
Other improvements
Y
-type actions can be by confirmed by left mouse button,N
-type actions can be confirmed by right mouse button.- Starting game in nightmare skill, end game and quit can be confirmed by Enter key.
- Added proper support for wide status bar graphics with
0
horizontal offset (thanks @NightFright2k19). - Added support dedicated music tracks for the 4th episode (thanks Horizon).
- Fixed possible demo desync when floating powerups modified by Dehacked (thanks @Meerschweinmann).
- Empty save game slots now prefilled with map name on game saving (thanks @NightFright2k19).
- Improved detection for chex.deh (thanks @NightFright2k19).
- Background shading now covers all game menus, blinking no longer happening while active menu and uncapped game state (thanks @NightFright2k19).
- Chosen player view no longer resets to first player in multiplayer demo playback.
-warp
command line parameter can be used without spaces in Doom 1, i.e.-warp 23
will warp to 2nd episode and 3rd level (thanks @fabiangreffrath).- Monsters forget player after use of notarget cheat.
- Vanilla menu strings now have highlighting/fading effect.
- Fixed vanilla bug of blinking Tower of Babel level on intermission screen when switching to "Entering" state.
Libraries update
- Updated SDL to version 2.30.0.
- Updated SDL Mixer to version 2.8.0. This version fixes FLAC music looping critical issue.
International Hexen 7.0 (2024-03-08)
Just like it was done to Doom, this is a next major version, a total refresh. Whole project has been reviewed, rewritten and reassembled, as well as all resource dependency and "bloat" features has been removed.
This project couldn't be possible to exist without @fabiangreffrath, @rfomin, @mikeday0, @ceski-1 and @bradharding, as well as @kitchen-ace, @Meerschweinmann and @NightFright2k19!
International Heretic 7.0 (2024-03-08)
Just like it was done to Doom, this is a next major version, a total refresh. Whole project has been reviewed, rewritten and reassembled, as well as all resource dependency and "bloat" features has been removed.
This project couldn't be possible to exist without @fabiangreffrath, @rfomin, @mikeday0, @ceski-1 and @bradharding, as well as @kitchen-ace, @Meerschweinmann and @NightFright2k19!
International Doom 7.3 (2023-12-31)
Improvements
- Added support for x3, x5 and x6 rendering resolutions (thanks @fabiangreffrath, @MrAlaux and @Meerschweinmann).
- Switching between rendering resolutions and widescreen modes now fast and painless.
- Added support for Sigil II (thanks @mikeday0 and @ceski-1)
- Brightmaps now applied to translucent and color-translated sprites.
- Added dedicated keyboard bind for making 180° degree turn in Movement section (thanks @fabiangreffrath).
- Added support for variable FOV, available in the Display Options menu. Available range is from 45 to 135, default value is 90 (thanks @bradharding, @rfomin, @MrAlaux and CacoKnight).
- Added support for «SSG in Doom 1» feature (thanks @fabiangreffrath and CacoKnight).
- Disabled
doom-all
autoload for Freedoom. - Small technical and performance improvements.
Demos
- Added various enhancements for demo recording from Crispy Doom (thanks @fabiangreffrath):
- Demo info footer.
- Prevention of overriding demos by adding a "-NNNNN" file name suffix.
- Ability to "join demo" (i.e. giving controls to the player and continue recording).
- Improved "Special Keys" handling while demo playback:
- Pressing "Restart level/demo" now restarts demo and keeps it playing.
- Pressing "Go to next level" now goes to next level of demo and keeps it playing.
- Frame rate no longer forcefully uncapped after using demo warp (i.e.
-playdemo demo.lmp -warp 18
) if vertical sync is enabled. IDCLEV
cheat code now working in demo playback (thanks @fabiangreffrath). Additionally, it is possible to go previous levels, not just next ones.- Demo warping should be a little bit faster now.
- Demo bar colors is now independent from game palette, always showing black and white colors.
Libraries update
- Updated SDL to version 2.28.5.
International Doom 7.2.1 (2023-10-29)
Improvements
- Gray
0
and5
are now properly recognized in keyboard bindings and side/extra mouse buttons are now properly recognized in the mouse bindings menu. - IDDQD cheat code: fixed reviving if god mode was already enabled (#1106, thanks @tomas7770).
Source code
- Almost the entire codebase has been updated to the latest Chocolate/Crispy Doom code. This includes numerous fixes and stability improvements.
- Enabled ASan as a compile-time option (see
ENABLE_ASAN
in/CMakeLists.txt
file, may not work with GCC, need Clang), fixed all remaining "pedantic" warnings in GCC 13.2.0 and 17.0.2, and separated platform-dependent sources at compile-time (thanks @rfomin).
International Doom 7.2 (2023-10-22)
Improvements
- Better color translation from cyan to green (thanks @fabiangreffrath and @liPillON).
- Disabled sector special 17 in
gameversion 1.2
(#1554, thanks @tpoppins). - Playing demos with multiple levels is now possible with Pistol Start game mode enabled.
- Renamed Fake Contrast from "On" to "Original" for better compliance with other menu items (thanks @OpenRift412).
- Player movement and camera rotation no longer possible while active game menu in multiplayer game.
- Improved messages ticker handling.
- "Centered" message of revealed secret will be shown if messages are off, to work with same logics as "top" placement.
- Blinking key or skull on status bar now optional and disabled by default to match up default port setting. Feature can be enabled back in Gameplay Features / Status Bar.
- Added
fsynth_gain
config file variable to fine tune the FluidSynth output level (thanks @fabiangreffrath and @Vitoria90). - Improved support for tall skies and it's stretching (#1092, thanks @fabiangreffrath and @kitchen-ace).
- Improved support for
DEHACKED
lump loading from PWAD (#1101, thanks @fabiangreffrath and @kitchen-ace).
Fixes
- Fixed possible errors and silent crashes on toggling video options (thanks @MrAlaux).
- Fixed possible random silent crash on visplanes drawing.
Demos
- Gameplay-unsafe cheats now disabled while demo playing/recording. Safe ones
IDMUS
,IDDT
andIDMYPOS
are still allowed (thanks @fabiangreffrath). - An ingame message "Demo recording: demoname.lmp" will be printed right after the start with demo recording.
Available again
- Level Name widget (automap only / always). Can be useful while demo watching.
Windows OS only
- Added support for drag-n-drop .ini config files onto the executable.
- Windows 11: Snipping Tool no longer appears after pressing PrintScreen key (thanks @bradharding). Win+Shift+S combination will work as usual for this case.
Libraries update
- Updated SDL to version 2.28.4.
- Updated FluidSynth to version 2.3.4.
- Updated included MinGW libraries to their actual versions.
Compiled using GCC 13.2.0 under MSYS environment.
International Doom 7.1 (2023-09-16)
Seventh anniversary of the project! 🎂
Improvements
- "Translucency" feature extended to "Additive" (current implementation) and "Blending" (more classical look) modes.
- "Revealed secret message" feature extended to "Top" (current implementation) and "Centered".
- Added "Reset bindings to default" function to mouse bindings menu.
- Fixed status bar face hysteresis when player is going invulnerable from pain/ouch states.
- Reorder sprites rendering, so that objects with higher map indices appear in front (thanks @fabiangreffrath).
- Various small improvements for brightmaps:
- Improved lighting of armor bonus, BFG9000 (world and HUD sprites) and
SW2STONE
texture for Doom 1. - Fixed incorrect brightmapping on armor bonuses, explosive barrels and rarely on floor textures in some instances.
- Excluded TNT brightmaps when not using tnt.wad (thanks @kitchen-ace and @fabiangreffrath).
- Improved lighting of armor bonus, BFG9000 (world and HUD sprites) and
- Various small technical improvements (also thanks @rfomin).
- Upgraded SDL library to version 2.28.3.
Available again
- Color Settings subsection for fine-tuning color saturation and RGB intensity, available in Display Options menu.
- Wider status bar modes in wide screen rendering.
- Crosshairs are back in Gameplay Features menu, but with fewer options.
- "Translucent" style for fuzz effect.
Fixes
- Fixed possible silent crash on toggling hires/widescreen modes while demo playing or network game.
- Added back fixed sound attenuation on Doom 2 map 8.
- Fixed marks drawing on automap in wide screen modes.
- Fixed PIT_ApplyTorque when line has no length (thanks @kraflab).
- [Windows only] Improved drag-n-drop support of files onto executable.
Compiled using GCC 13.2.0 under MSYS environment.
International Doom 7.0 (2023-07-07)
This is a next major version, a total refresh. Whole project has been reassembled almost from scratch, as well as most of functions and features were either rewritten or replaced with better implementations. I have entirely removed all resource dependency, including translation and beta/jaguar game modes. Uncanonical UNM skill level, bloat "features for features, not for functionality" and unsafe quirks in game mechanics were also removed (with few optional exceptions, which are sill safe for demos/multiplayer).
I'm also leaving any farther development of Heretic and Hexen, as well as previous resource-dependent codebase. It was a good time and practice, but later was giving me nothing more than headache with compatibility and double amount of work, so neither I would like to keep nor maintain it, preferring to keep things clean and simple, just like it was done in my CRL experience.
Please note, this version is not compatible in any ways with previous ones, so yet another clean install is needed.
Video/Render
- Added optional True Color rendering, a Masterwork written by @fabiangreffrath for Crispy Doom. However, I'm kindly asking to carefully read the first paragraph in Crispy Doom Wiki, as everything applies here as well.
- Toggling video options no longer require restart of the program.
- Additional optimization to visplanes drawing.
- Replaced "Loading" screen wipe effect with "Fast".
- Gamma-correction levels OFF-4 now equals to vanilla Doom.
My subjective recommendation for True Color render: try to disable fake contrast and enable smooth diminished lighting in Gameplay Features. This will probably provide best looking, and if game feels brighter than it should, adjust gamma-correction via F11
key.
Audio
- Changing music playback system no longer needed for playing tracks in MP3/OGG/FLAC/IT/XM/MOD formats.
- Added FluidSynth support. There is no sample bank included, but I highly recommending to check out Trevor0402's SC-55 soundfont. Just provide a file name or full patch to sound bank in
fsynth_sf_path
config file variable (thanks @rfomin and @mikeday0). - Upgraded Windows MIDI code (thanks @ceski-1).
- Added support for Chocolate/Crispy Doom compatible music pack folder (
music_pack_path
config file variable).
Automap
- All automap colors/schemas now more friendly with heavily modified custom palettes.
- Added ReMood/CRL-inspired IDDT cheat monsters highlighting.
Multiplayer
- Port now compatible with Chocolate/Crispy Doom and Woof (in vanilla complevel) source ports multiplayer.
- Setup executable is back as multiplayer launcher, on same manner as in Woof source port.
Dehacked
- Port now using actual version of Dehacked parser. Notably, BFG2704 is working.
Chocorenderlimits/CRL features
- Spectator mode - allows to fly around as spectator (thanks @RestlessRodent).
- Freeze mode (cheat shortcut:
FREEZE
) - freezes whole game world except player.
Shortcut keybinds are available in keyboard bindings / special modes section.
Technical
- Added support for drag-n-drop of iwad/pwad/deh/bex files and demo lumps onto executable.
- Added support for Chocolate/Crispy Doom compatible directory based autoload folder (
autoload_path
config file variable). - Default port values now matches up vanilla Doom (exception: hires rendering).
- Upgraded SDL library to version 2.28.1.