commit e389d6d9d34b5d6328736d81c49348fa84eaf484
Author: Fabian Greffrath <fabian@greffrath.com>
AuthorDate: Thu Aug 14 09:40:48 2025 +0200
Commit: Fabian Greffrath <fabian@greffrath.com>
CommitDate: Thu Aug 14 09:40:48 2025 +0200
Release 3.1.1
---
CMakeLists.txt | 4 +-
NEWS.md | 2 +-
RELEASE_NOTES.md | 181 +++++++------------------------------------------------
configure.ac | 4 +-
4 files changed, 27 insertions(+), 164 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a7456650..da58daca 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,7 +1,7 @@
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
cmake_minimum_required(VERSION 3.7.2)
-project("Chocolate Doom" VERSION 3.1.0 LANGUAGES C)
+project("Chocolate Doom" VERSION 3.1.1 LANGUAGES C)
set(CMAKE_C_STANDARD 99)
@@ -17,7 +17,7 @@ set(PACKAGE_STRING "${PROJECT_NAME} ${PROJECT_VERSION}")
set(PACKAGE_BUGREPORT "chocolate-doom-dev-list@chocolate-doom.org")
string(REGEX REPLACE " Doom$" "" PACKAGE_SHORTNAME "${PACKAGE_NAME}")
-set(PACKAGE_COPYRIGHT "Copyright (C) 1993-2024")
+set(PACKAGE_COPYRIGHT "Copyright (C) 1993-2025")
set(PACKAGE_LICENSE "GNU General Public License, version 2")
# Any settings that should apply to all targets in this directory and all
diff --git a/NEWS.md b/NEWS.md
index 125a88f8..9fa55a74 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -1,4 +1,4 @@
-## 3.1.1 (2025-??-??)
+## 3.1.1 (2025-08-14)
### General
* Fix compilation on GCC 15 (thanks Fabian).
diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
index 6e973399..a366537f 100644
--- a/RELEASE_NOTES.md
+++ b/RELEASE_NOTES.md
@@ -1,172 +1,35 @@
-## 3.1.0 (2024-08-01)
+## 3.1.1 (2025-08-14)
### General
- * Drag and drop loading of WAD, Dehacked and demo files is now supported on
- Windows - simply drag the files onto chocolate-doom.exe (thanks Fabian).
- * WAD file autoloading was added - WAD and DEH files can be copied into
- an autoload folder to be automatically included on every game start.
- * Music pack configuration has been significantly simplified. By simply
- copying .flac/.ogg music files into a folder they will be automatically
- detected by filename and used.
- * Music packs can now be used with OPL as a fallback, and music pack
- config files can have any name ending in '.cfg'.
- * MP3 music packs are now supported.
- * Network synchronization now uses a PID controller by default, which
- makes games more smooth and more stable, especially for Internet play.
- * UDP hole punching is now used to make servers behind NAT gateways
- automatically accessible to the Internet.
- * OPL emulation now uses Nuked OPL3 v1.8 (thanks nukeykt)
- * Allow simultaneous PC speaker emulation and OPL emulation
- (thanks Michael Day).
- * The setup tool now uses "Romero Blue" as a background (see the wiki:
- <https://doomwiki.org/wiki/Romero_Blue> for more info).
- * The 0 and 5 keys on the number pad can now be bound independently
- of any other keyboard key (thanks BlooD2ool).
- * With aspect ratio correction disabled, the game can scale to any
- arbitrary size and remove all black borders in full screen mode.
- (thanks chungy)
- * The executable's location is now checked when looking for IWADs.
- * The IWAD files installed by Steam-on-Linux are now detected (thanks
- chungy).
- * It's now possible to use `-response` to load response files.
- * Default savegame name now includes the WAD filename (thanks Fabian).
- * Mouse movement is no longer read when the game window is inactive
- (thanks Julia Nechaevskaya).
- * Chocolate Doom now by default generates a "pet name" for the user
- to respect privacy (thanks Jon!)
- * The Freedoom single-player IWAD files are now officially supported,
- since recent versions changed all levels to be vanilla compatible.
- * Add native support for the FluidSynth midi synthesizer.
- * Add a fsynth_gain config key to fine tune the FluidSynth output level
- (thanks Fabian).
- * Redesign of native MIDI support in Windows (thanks ceski and Roman Fomin):
- - Emulates DMX MPU-401 feature set by default, change with
- `winmm_complevel`.
- - MIDI device reset between songs using "GM System On", change with
- `winmm_reset_type`.
- - Configurable delay after reset for legacy MIDI hardware (e.g. Roland
- SC-55), change with `winmm_reset_delay`.
- * Add improved gamepad support via the SDL\_GameController interface. This
- includes support for analog triggers, modern dual-stick default bindings
- (based on Unity Doom), descriptive button names for common controller types
- and configurable dead zones for stick axes. (Michael Day).
- * All games now have shiny new icons!
- * The -display parameter was added to specify the display number on which to show the screen (thanks Robin Emeršič).
+ * Fix compilation on GCC 15 (thanks Fabian).
+ * Hide public IP addresses for privacy.
+ * Use native OpenGL texture format for better performance (thanks Fabian).
+ * Improved directory handling on Windows (thank Roman Fomin):
+ * Fixes problems with postfix "." for non-relative paths.
+ * Support for long NTFS paths (up to 32768 characters).
+ * Fixed metainfo files for latest AppStream spec compliance (thanks Fabian).
+ * Add option to enable or disable smooth pixel scaling (thanks StevenSYS).
+ * Allow spaces in GUS patch folder path (thanks Michael Day).
+ * Add support for non-US backslash key (thanks Michael Day).
+ * Never let SDL Mixer use native midi on Windows (thanks Michael Day).
+ * Use $TMPDIR to find tempdir on Unix (thanks Mr. Myth).
+ * Improve man page formatting (thanks g-branden-robinson).
### Build systems
- * SDL2_mixer and SDL2_net can now be optionally disabled to increase
- portability to systems that might not support audio or networking
- (thanks turol).
- * Travis CI was replaced with GitHub Actions (thanks Michael Francis).
- * mingw CI was added for automatic Windows-building (thanks turol).
- * A cpp-linter CI was added to improve the quality and formatting of code
- (thanks turol).
- * The `--disable-zpool` autoconf argument for disabling memory pooling was
- added to make debugging easier (thanks turol).
- * Python 2 has been deprecated and Python 3 is now used exclusively
- (thanks Fabian).
+ * Can now be built with Emscripten (thanks James Baicoianu).
+ * Misc. improvements (thanks suve, Emmanuel Ferdman, Gabriele Simoni, et al.)
-### Refactorings
- * CMake project files have been added, replacing the Microsoft Visual
- Studio and Code::Blocks files. CMake maintains support for multiple
- IDEs and versions thereof, and reduces developer overhead when updating
- Chocolate Doom (huge thanks to AlexMax for this work).
- * Source code has been retrofitted to fix many compiler warnings and
- add const annotations to many variables (thanks turol).
- * Several functions have been hardened against incomplete reads and
- error conditions, and made safer (thanks turol).
- * Man page generation has been reworked to use autoconf macro
- substitution, making it eaiser for downstream forks to change the
- project name (thanks Jon).
- * We now print a meaningful error message when a savegame cannot be
- loaded (thanks Zodomaniac, chungy).
- * There's now a log file feature for the network code to aid in tracking
- down multiplayer bugs.
- * AppData files were updated to the AppStream standard (thanks Mike).
- * Many abuses of the extern keyword have been cleaned up to prevent
- undefined behavior (thanks turol).
- * Install of bash completion scripts was fixed (thanks Mike Swanson).
-
-### Bug fixes
- * Fixed an exception thrown by the Windows kernel when debugging with
- GDB (thanks AXDOOMER).
- * Loop metadata now works properly with music packs on Windows.
- * Mouse movement is ignored when the game window isn't active (thanks
- Julia Nechaevskaya).
- * A bug was fixed where music would not play after pausing on an
- intermission screen (thanks Julia Nechaevskaya).
- * Timeouts when connecting to a network server were fixed (thanks
- @bradc6).
- * A long-standing bug where some visplane overflows caused crashes was
- fixed (thanks Michael Francis).
- * A multiplayer deadlock bug where clients would stop sending tics after
- missing tics from the server was fixed. There are both client- and
- server- side fixes to fix the problem when playing with older versions
- (thanks MadDog and Mortrixs for help tracking this down).
- * The macOS launcher now quits automatically when all windows are closed.
- * The mouse speed calibration thermometer was fixed.
- * Some improvements have been made to PC speaker emulation to better match
- Vanilla (thanks NY00123).
- * Filenames and paths with non-latin characters now work on Windows
- (thanks Roman Fomin).
- * Properly handle orphan carriage returns when parsing deh files
- (thanks Michael Day).
+### Setup
+ * Use correct EGA palette colors (thanks Henrique Jorge).
### Doom
- * Doom 1.2 demo support was added (thanks James Canete!)
- * Map33 intermission screen and map33-map35 automap names are
- emulated (thanks CapnClever).
- * We now exit gracefully when player starts are missing (thanks Michael
- Francis).
- * We now exit gracefully on levels with a boss brain and no boss spitter
- things (thanks Jason Benaim).
- * It's now possible to play multiplayer with gameversion=1.2.
- * When the game hits the limit for the number of wall scrollers, a count
- of the number of scrollers is now displayed (thanks Jon).
- * Sector special 17 (random light flicker) is now accurately emulated to
- only appear in gameversion > 1.2 (thanks tpoppins).
- * Fixed mouse events causing unwanted key presses (thanks Michael Day).
- * French Doom II files doom2f.wad and french.deh are now automatically
- detected (thanks Acts19quiz).
- * Mouse buttons are now bindable to run (thanks Archenoth).
- * The "Sky never changes in Doom II" bug is now accurately emulated
- (thanks Michael Francis).
- * Mouse buttons are now bindable to turn left/right (thanks Fabian).
- * Fix possible undefined behavior and accurately emulate vanilla when -skill
- parameter is given a negative value (thanks Henrique Jorge).
+ * Initial support for Doom version 1.5 (thanks Michael Francis).
### Heretic
- * P\_FindNextHighestFloor was changed to match vanilla behavior (thanks
- AXDOOMER).
- * WAD hash table is now generated for speed (thanks Michael Francis).
- * HHE level name replacements now apply on the intermission screen
- (thanks ETTiNGRiNDER).
- * Mouse buttons are now bindable to scroll through inventory and
- "use artifact" (thanks Michael Day).
- * Mouse buttons are now bindable to run (thanks Archenoth).
- * Multiplayer demo playback was fixed (thanks Ryan Krafnick).
- * The GOG.com release is now detected (thanks Mike Swanson).
- * Mouse buttons are now bindable to turn left/right (thanks Fabian).
- * Fix NULL backsector crash (thanks kitchen-ace and Julia Nechaevskaya).
+ * Fix crash after loading too many saved games (thanks Noseey).
### Hexen
- * ACS code has been hardened against potential security vulnerabilities.
- * WAD hash table is now generated for speed (thanks AXDOOMER).
- * Mouse buttons are now bindable to scroll through inventory and
- "use artifact" (thanks Michael Day).
- * Mouse buttons are now bindable to run (thanks Archenoth).
- * Multiplayer demo playback was fixed (thanks Ryan Krafnick).
- * The GOG.com release is now detected (thanks Mike Swanson).
- * Mouse buttons are now bindable to turn left/right (thanks Fabian).
- * Fixed demo desyncs in P_LookForPlayers (thanks Michael Day)
- * Add support for two different v1.1 variants through -gameversion
- argument (thank NY00123).
+ * Fix crash with Heresiarch fireballs if player has never touched a wall (thank Noseey).
### Strife
- * Sehacked replacements of the "empty slot" string now work.
- * VOICES.WAD is now found in a case-insensitive way (thanks Michael Francis).
- * PC speaker sound effects are now supported (thanks ceski).
- * Mouse buttons are now bindable to turn left/right (thanks Fabian).
- * Fixed demo desyncs in P_LookForPlayers (thanks Michael Day)
- * Fix possible undefined behavior and accurately emulate vanilla when -skill
- parameter is given a negative value (thanks Henrique Jorge).
+ * Initialize floor->type and floor->crush fields in EV_BuildStairs() (thanks Fabian).
diff --git a/configure.ac b/configure.ac
index fbc1dd51..26e6958d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,9 +1,9 @@
-AC_INIT(Chocolate Doom, 3.1.0,
+AC_INIT(Chocolate Doom, 3.1.1,
chocolate-doom-dev-list@chocolate-doom.org, chocolate-doom)
PACKAGE_SHORTNAME=${PACKAGE_NAME% Doom}
PACKAGE_SHORTDESC="Conservative source port"
-PACKAGE_COPYRIGHT="Copyright (C) 1993-2024"
+PACKAGE_COPYRIGHT="Copyright (C) 1993-2025"
PACKAGE_LICENSE="GNU General Public License, version 2"
PACKAGE_MAINTAINER="Simon Howard"
PACKAGE_URL="https://www.chocolate-doom.org/"