EDuke32 Changelog Unofficial archive

What changed in EDuke32, build by build

2,117 builds · 8,866 commits · 25 authors · October 2009 – August 2026

Commits per year

Select a year to see its builds
SVN era · r1519 – r8798 Git era · voidpoint.io, from april 2020
Filters · 1 active

Showing 252 commits

Export CSV
Display options
Commit details:
Active filters: Author: NY00123 Clear all

August 2026

October 2025

  • SW

    Fix null pointer dereferences in case of showing inventory bar right before player kill

    NY00123 bf58c7b written 21 Oct 2025 Build 10651 Fix
  • SW

    Comment out definition and declaration of unused function _ErrMsg

    NY00123 8e1972a written 21 Oct 2025 Build 10651
  • SW

    Use TerminateWithMsg in _Assert

    NY00123 95ef384 written 21 Oct 2025 Build 10651
  • SW

    Use TerminateWithMsg in JS_DrawMirrors

    NY00123 26cfce5 written 20 Oct 2025 Build 10651
  • SW

    Use TerminateWithMsg in JS_PlockError as well

    NY00123 38465ff written 20 Oct 2025 Build 10651
    Show details

    There are unfortunate duplications of the shared string, but such occurrences don't seem to be that common so far.

  • SW

    Cleanup of what was non-RENDERTYPEWIN code

    NY00123 3837287 written 20 Oct 2025 Build 10651
  • SW

    Remove not fully ported heap check code and related definitions

    NY00123 b146130 written 20 Oct 2025 Build 10651
  • SW

    Remove DEBUG-specific console commands mem, checkheap, dumpheap

    NY00123 2a73792 written 20 Oct 2025 Build 10651
  • SW

    Replace a few more printf calls, none being compiled, with LOG_F/VLOG_F

    NY00123 75d79ad written 20 Oct 2025 Build 10651
  • SW

    Replace a few printf calls with uses of LOG_F(ERROR, ...)

    NY00123 0e82cb6 written 20 Oct 2025 Build 10651
    Show details

    Trailing '\n' characters have been removed again.

  • SW

    Do replace multiple calls to TerminateGame+print/wm_msgbox+exit

    NY00123 ccf709a written 20 Oct 2025 Build 10651
    Show details

    These are done using TerminateWithMsg, except for a few instances in which the strings were meant to be printed without formatting, where TerminateWithSimpleMsg is used instead. Trailing '\n' characters have been removed from input strings. For code previously using printf and not wm_msgbox or loguru, this should resolve instances in which the program would abort without relevant logs, at least under specific platforms. Note that printf had its usage under DOS.

  • SW

    Add template function TerminateWithMsg and wrapper TerminateWithSimpleMsg

    NY00123 954e9b1 written 20 Oct 2025 Build 10651
    Show details

    TerminateWithMsg is going to be used instead of separate sets of calls to TerminateGame, printf/wm_msgbox and exit. It'll use wm_msgbox, not printf (originally used under DOS), and also go through LOG_F. This is an inline function definition using a variadic template, allowing the use of LOG_F and also matching loguru::log. TerminateWithSimpleMsg is a wrapper that allows printing a string without formatting.

  • SW

    Move #endif directive to the end of game.h

    NY00123 1533a66 written 20 Oct 2025 Build 10651
  • Increase mmulti.cpp's MAXPAKSIZE (size of pakbuf in bytes) to 2048.

    NY00123 227c11d written 10 Oct 2025 Build 10638 FixEngine
    Show details

    This appeared to fix a long-standing issue, where a relatively high ping between two players (say, about 750ms) could start increasing over time due to accumulated messages not being sent sufficiently fast.

  • Log a warning from mmulti.cpp:dosendpackets in case output pakbuf lacks space for all data.

    NY00123 d023544 written 10 Oct 2025 Build 10638 Engine
    Show details

    Do so with a given threshold, i.e., turn off the warning until there are 16 consecutive calls to dosendpackets in which pakbuf has enough space for all data to send.

  • SW

    Improve prediction of interpolated bob_z value

    NY00123 fdbcb0b 14 Oct, 21:39 Build 10636
    Show details

    The addition of the "bob_z" field to the PREDICT struct might be unnecessary, technically speaking, but it probably won't hurt to ensure values are synced.

  • SW

    Fixed player movement prediction, now actually based on predicted angle

    NY00123 964ce88 14 Oct, 20:02 Build 10636 Fix
  • SW

    Fix switch to double Uzi for multiplayer games upon pick-up of second Uzi

    NY00123 8c88202 written 13 Oct 2025 Build 10636 Fix
  • SW

    Simplify HandleWeaponAutoSwitch usage to go through the DamageData array

    NY00123 1ca030f written 12 Oct 2025 Build 10636
  • SW

    Fix multiplayer sync errors with the weapon auto-switching toggle

    NY00123 2969374 written 12 Oct 2025 Build 10636 Fix
    Show details

    This also permanently enables weapon auto-switching for PedanticMode. The idea here is that outside of pedantic mode, within multiplayer games, a new bit or more of the inspected player's Flags2 field will be set for the weapon. Afterwards, only for player no. myconnectindex, the function getinput will set loc->bits as if a matching key was pressed for selecting the weapon. loc->bits should be properly synced. Note that each player's structure, including Flags2, is reset within InitNewGame, but not from InitLevel as far as I may tell.

  • SW

    Introduce new weapon auto-switch PF2 flags for a follow-up commit

    NY00123 aca3d38 written 12 Oct 2025 Build 10636

March 2024

  • Fix playback volumes of "Duke-Tag!" announcement sounds

    NY00123 0bc78c5 written 15 Mar 2024 Build 10564 Fix
    Show details

    The modified code has an unconditional call to S_PlaySound from S_PlaySound3D with no check of the flag SF_GLOBAL. This is also done with a higher priority than Duke Talk sounds now, which should similarly match DOS v1.5.

    Fixes
    terminx/eduke32#263
    Co-authored by
    Evan Ramos

July 2023

  • Fix typo in PR light offset for EXPLOSION2.

    NY00123 d0fab2b written 7 Jul 2023 Build 10332 FixEngine
    Show details

    Also fixes attempts to read data for sprite no. -1 in case of no parent sprite.

May 2023

October 2022

  • If 8-bpp mode couldn't be initialized using GL, retry without GL (sdlayer.cpp).

    NY00123 a9c797d written 21 Oct 2022 Build 10165 Engine
  • General

    kextract/kgroup: Add call to engineCreateAllocator.

    NY00123 810e1c1 written 13 Oct 2022 Build 10164
    Show details

    This was required for kgroup's call to Bopendir.

July 2022

  • General

    sw/src/game.h: Remove declaration of CommPlayerName,

    NY00123 06150c1 written 10 Jul 2022 Build 10118
    Show details

    now conflicting with extern "C" declaration from config.h. The "extern" itself isn't needed, but this is a good chance for removal.

April 2022

March 2022

January 2022

November 2021

  • add mus_tryformats cvar and menu option to control loading OGG/FLAC replacements for MIDI

    NY00123 3ca0f0f written 12 Nov 2021 Build 9815
    Show details

    Based on MR !175.

September 2021

  • Fix a typo in P_DisplayWeapon from port of SHOTGUN_WEAPON case for WW2GI

    NY00123 6c289cc written 30 Aug 2021 Build 9603 Fix
  • General

    Ken-Build, Duke3D, SW, mmulti: Replace rand with wrand almost everywhere.

    NY00123 e846be2 written 30 Aug 2021 Build 9603 Engine
    Show details

    Outside of 3rd party libraries, remaining uses are the Polymer-specific macro LIGHTRAD2 within Duke3D, system_15bit_rand and vox2poly. Also use WRANDOM_MAX in SW.

  • Add wrand, intended to mimic the behaviors of Watcom C 10.0's rand.

    NY00123 fbf1c84 written 30 Aug 2021 Build 9603 Engine
    Show details

    Also add WRANDOM_MAX. This will be used in SW, preventing possible freezes.

  • General

    Remove Brand macro. It was used just in Ken-Build.

    NY00123 e2bab6e written 30 Aug 2021 Build 9603
  • Split krand definitions from build.h to a new header, random.h

    NY00123 c22bf0e written 30 Aug 2021 Build 9603 Engine

March 2021

August 2020

  • Don't try to open device if it isn't in

    NY00123 c297a7f written 6 Aug 2020 Build 9214
    Show details

    the list as returned by ALSADrv_MIDI_ListPorts. Opening a device with ALSA_PortID == 0 might technically be successful even if not present.

  • General

    Audio / Duke3D: Modify alsa_mididevinfo_t to manage memory use of

    NY00123 7c1c12b written 23 Jun 2020 Build 9214
    Show details

    the "name" field on its own. Also make sure that the for loop in Menu_RefreshSoundProperties isn't accessing copies of the objects, including temporary copies of the "name" strings. It could be managed in a better way, but this should be usable for now.

  • Do free driver name strings duplicated using Xstrdup

    NY00123 69c9d0b written 30 May 2020 Build 9214
  • Refuse to initialize if Client:Port pair isn't in the list

    NY00123 dc22897 written 30 May 2020 Build 9214
  • Fix potential crashes in menu if no ALSA MIDI device is found

    NY00123 f13fbf6 written 30 May 2020 Build 9214 Fix

July 2020

  • General

    Revert "sw/src/game.cpp: Use initsingleplayers instead of initmultiplayers"

    NY00123 32096f6 written 26 Jun 2020 Build 9166 Fix
    Show details

    This reverts commit 4274a6160ce2f64676b79364cf83f185814811f6, i.e., SVN r8667.

  • Rename danetmode -> networkmode and make it use the same values

    NY00123 09e6842 written 26 Jun 2020 Build 9166
    Show details

    as in the previously used newer mmulti revision from JFBuild. Also use MMULTI_MODE_MS and MMULTI_MODE_P2P, now a part of an enum.

  • Constify the string params in a few functions

    NY00123 587d364 written 26 Jun 2020 Build 9166
  • SW

    If a saved load is loaded at a point which is right after killing

    NY00123 b4b054d written 13 Jul 2020 Build 9166
    Show details

    a boss, ensure that FinishTimer and FinishAnim are appropriately updated. This commit bumps GameVersion. Additionally, the set of FinishAnim to 0 in NewLevel had to move to a different location (InitLevelGlobals2), so it doesn't override the value stored in the saved game.