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

Showing 8,866 commits

Export CSV
Display options
Commit details:

October 2023

September 2023

  • Increase YAX_MAXCLIPSECTORS from 64 to 256

    Dino Bollinger 8feaf6c 26 Sep, 09:14 Build 10459 Engine
    Show details

    Some TROR layers were blocking hitscan shots because of the low limit.

  • Comment out log message in appendstate/prependstate

    Dino Bollinger 2b937f1 written 22 Sep 2023 Build 10458
  • General

    Engine/Duke3D: Several changes to TROR traversal in clipping functions

    Dino Bollinger 46a4394 18 Sep, 00:37 Build 10457 FixEngine
    Show details

    * clipmove() - No longer traverses sectors once a distance limit is exceeded, and at most traverses 64 TROR sectors at once. * hitscan() - TROR sectors added to clipsectlist after regular next sectors. Only adds TROR sectors in a single direction, and at most 64 at once. * A_RadiusDamage - only add TROR sectors if inside damage radius. Also increase MAXDAMAGESECTORS to 512, same as MAXCLIPSECTORS. Fixes glitches and error spam in maps that make heavy use of TROR.

  • Only store boardfilename in the savegame if we have a usermap

    Dino Bollinger 90db601 written 17 Sep 2023 Build 10457
  • Don't try to interpolate rotatesprite calls if the clock difference is negative.

    Jordon Moss c728274 written 15 Sep 2023 Build 10455 Engine
  • General

    Update gamecontrollerdb.txt

    TerminX 95aef90 11 Sep, 21:04 Build 10454
  • avoid passing -1 as bunchnum to SECTORS_OF_BUNCH

    TerminX 40deb2c written 6 Sep 2023 Build 10454
  • avoid passing -1 as bunchnum to SECTORS_OF_BUNCH

    TerminX aa0e785 written 6 Sep 2023 Build 10454 Engine
  • minor optimization of 209bc8793d0838bb02d487bd8a74e6199a9911d1 + similar blocks in fgrouscan

    TerminX 3799006 written 6 Sep 2023 Build 10454 Engine
  • improve slope sprite interpolation on edges

    nukeykt 209bc87 written 6 Sep 2023 Build 10454 Engine
  • update xxHash to 6f9771f2c014a703f151ac646d5f8074b6236c84

    TerminX 2499744 written 5 Sep 2023 Build 10454 Engine
  • tweak controlflow struct added to VM in 4eb6cbe190cf79d758a4a64b9fa10af64d4609ad

    TerminX 6ef0c6f written 2 Sep 2023 Build 10454
    Show details

    Resulting binary is smaller, but no significant performance difference either way on anything I tested the change on.

  • only update a maximum of one VIEWSCREEN tile per frame

    TerminX 0278536 written 2 Sep 2023 Build 10454 Engine
    Show details

    Improves performance greatly in all renderers in scenes using more than one concurrent VIEWSCREEN sprite displaying unique cameras.

  • remove a bunch of EDUKE32_PREDICT macro usage from gameexec

    TerminX 3f4e11c written 17 Aug 2023 Build 10454
  • move glGetGraphicsReset() shenanigans to videoShowFrame()

    TerminX 49b2de7 written 6 Aug 2023 Build 10454 Engine
  • fix bugs with 90 degree texture rotation wall cstat bit

    TerminX d6d0ec1 written 6 Aug 2023 Build 10454 FixEngine
  • allow sound data to expire out of cache1d again

    TerminX f0f5443 written 27 Jul 2023 Build 10454
  • change G_ReadGLFrame() to use regular memory allocation instead of pulling a block from cache1d because glReadPixels() is so slow anyway

    TerminX 40e4e6e written 26 Jul 2023 Build 10454 Fix
    Show details

    Resolves an issue where starting the game in a low resolution and creating a savegame before switching to a higher resolution and creating another savegame could corrupt `sizeof(palette_t) * the difference in total pixel count between the resolutions` bytes of adjacent data in cache1d.

  • revert cache1d to mostly Ken's version

    TerminX 6cd3c9b written 28 Jun 2023 Build 10454 FixEngine
    Show details

    Throws out a half-assed refactor that seems to contain a mistake somewhere that results in occasional cache1d data corruption.

  • update lz4 to 76106cba6fbbf8efb63d9fa90f052d384d212c56

    TerminX 9bce9a7 written 26 Jun 2023 Build 10454 Engine
  • SDL 2.28.3

    TerminX fe693bf written 21 Jun 2023 Build 10454
  • additional sloped sprite clipping fixes

    TerminX 1c4c0a3 written 27 May 2023 Build 10454 FixEngine
  • more comprehensive player getzrange checks

    TerminX 1b25e6f written 18 May 2023 Build 10454
  • Blackhole any accumulated input when clearing the input FIFO/starting a level, prevents you from being spun around the wrong way when you spawn in.

    Jordon Moss 244ffd0 written 8 Sep 2023 Build 10436 Fix
  • Fix CON_EXIT not working correctly in while loops

    Show details

    The instruction pointer wasn't being updated properly.

  • Fix globalsound being broken in 3D Mode

    Dino Bollinger a2a6009 5 Sep, 17:36 Build 10434 FixEngine
    Show details

    This would previously attempt invalid array access with index -1.

  • Revert clipupdatesector() changes from df868267 and replace with a different approach

    Dino Bollinger bf731b2 5 Sep, 22:09 Build 10434 FixEngine
    Show details

    If the sector contains a TROR bunch, then whenever clipupdatesector() would normally return 1, instead run updatesector() and return 0 instead. The old approach did not work out in all situations. In Fury, certain flying enemies could not pass some TROR layers properly, and in AMC, trying to submerge in TROR water had the player glitch out on the surface. This exact approach had previously been used in AMC without any major issues for 2 years, before the recent TROR changes.

  • Rework the cansee() changes from 86e5fe7f to only affect TROR transitions

    Dino Bollinger 423a059 5 Sep, 19:33 Build 10434 Engine
    Show details

    The problem with the previous version was that it didn't take overlapping geometry into account. This should be a more conservative approach that doesn't affect non-TROR uses of the cansee() function.

  • Add same sectnum checks as in hitscan() to A_RadiusDamage()

  • Fix hitscan() and clipmove() by checking for invalid sectnums

    Dino Bollinger fa83f83 5 Sep, 17:28 Build 10434 FixEngine
    Show details

    Invalid sectnums could previously be added to the clipsectlist if a hitscan shot passed a tror layer.

  • CON

    Add missing GAMEVAR_RAWQ16PTR case in VM_GAMEVAR_OPERATOR

    Jordon Moss 7e1563a 4 Sep, 23:43 Build 10429 CON
  • Add detection for new DOS crash-fixed VACATION.GRP (and DUKEDC.GRP)

    Hendricks266 7aa7560 4 Sep, 18:46 Build 10429 Fix
  • fix actors on lotag 1 sectors not being squishable

    Dino Bollinger da49d94 4 Sep, 19:29 Build 10427 FixEngine
    Show details

    Squishing is now prevented if SE7 is present (as previously intended), or when the actor is standing on submergible TROR water.

    Fixes
    terminx/eduke32#283
  • fix regressions with clipupdatesector() from df868267

    Dino Bollinger 1e3d72e 4 Sep, 18:31 Build 10427 FixEngine
    Show details

    This resolves a bug in Duke3D where the player couldn't move while shrunk if a TROR sector was present on the map. It also ensures that the original clipping is used if no TROR bunch is present inside the sector in question. This should reduce the amount of backwards-compatibility problems.

  • Fix clipmove() problems with TROR wall geometry resulting from commit 7f00d5ce

    Dino Bollinger 027baac 4 Sep, 15:40 Build 10427 FixEngine
    Show details

    The changes are now more conservative and only affect sprites on TROR layers.

  • General

    Fix potential enginecompatibilitymode regression in cansee()

    Hendricks266 d7c2c9b 3 Sep, 22:12 Build 10424 Fix
  • General

    Fix enginecompatibilitymode regression in hitscan()

    Hendricks266 2f76e0a 3 Sep, 22:06 Build 10423 Fix
  • Improvements to A_RadiusDamage()

    Dino Bollinger 6a08b35 3 Sep, 21:28 Build 10422 Engine
    Show details

    - Add TROR-awareness in similar fashion to clipmove() and hitscan() - Continue scanning walls to damage even if MAXDAMAGESECTORS is reached - Increase MAXDAMAGESECTORS from 128 to 256

  • Fix many cases in which cansee() would fail with TROR

    Dino Bollinger 86e5fe7 3 Sep, 21:13 Build 10421 FixEngine
    Show details

    This commit adds a failsafe which corrects the given origin and destination sectnums of the "cansee()" function, by checking if the corresponding (x,y,z) coordinates are actually contained within the given sectors. The problem with TROR in particular was that the calculation done to determine the point of intersection on the TROR layer requires the coordinates to be within the given sectnums. Else, cansee() would simply return 0, even if there was a clear line of sight. This should also implicitly fix any other cases where the coordinates of the cansee() call do not exactly match up with the given sectnums.

  • Properly split TROR code from commit 19fd0915 into YAX_ENABLE blocks

    Show details

    And fix problems introduced by 9070cd2bff6d4547f0765fc483ffd4f923e24383.