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 · 2 active

Showing 200 builds · 322 commits

Export CSV
Display options
Commit details:

September 2012 2 builds · 3 commits

Build 2992

2 Sep 2012 · 12 commits · 1 author SVN
Open build
  • General

    Remove some #if 0 blocks that are probably of no interest any more.

    Helixhorned r2981 2 Sep, 07:00 EngineCON
    Show details

    For reference, they are the following: - cache1d.c: suckcache() - build.c: compare_wall_coords() - make switch-invisible heuristic - Mapster32: old sprite search - Mapster32: manual z range - m32script: read/writearray, qgetsysstr - menus.c: savetemp()

Open the build to see all 12 commits

August 2012 6 builds · 9 commits

Build 2930

19 Aug 2012 · 14 commits · 1 author SVN
Open build
  • General

    Introduce additional rotatesprite bit for internal use and mask ext. ones from CON.

    Helixhorned r2929 19 Aug, 05:57 CON
    Show details

    ROTATESPRITE_MAX is moved to build.h and all orientation bits from CON commands using rotatesprite are ANDed with (ROTATESPRITE_MAX-1). Some of the functions use ROTATESPRITE_MAX for different internal purposes, which will not be exposed to CON now (a good thing). Also, dorotspr_handle_bit2 is made clearer.

Open the build to see all 14 commits

Build 2895

13 Aug 2012 · 18 commits · 1 author SVN
Open build
  • CON

    in showview*, use new aspect determination if r_usenewaspect is 1.

    Helixhorned r2895 13 Aug, 11:26 CON
  • General

    Rewrite the EVENT_ANIMATESPRITES loop (G_DoEventAnimSprites calls) for clarity.

    Helixhorned r2893 13 Aug, 11:26 CON
  • CON

    in fake multi-mode, play 'globalsound' even if player index isn't screenpeek.

    Helixhorned r2890 13 Aug, 11:26 CON
    Show details

    This makes sounds like DUKE_GET (item pickup) be heard for the second player in the splitscreen mod, too.

  • General

    If a value of 1 is returned from EVENT_DISPLAYROOMS, don't draw them.

    Helixhorned r2889 13 Aug, 11:26 CON
    Show details

    This includes mirrors, rooms and masks. Any value other than 0 or 1 that is returned is considered an error (reserved for future use).

Open the build to see all 18 commits

July 2012 3 builds · 4 commits

Build 2820

8 Jul 2012 · 8 commits · 1 author SVN
Open build
  • EVENT_DRAW3DSCREEN, screenshot functonality.

    Helixhorned r2818 8 Jul, 14:47 CON
    Show details

    The event is run after drawing the scene, but before the overlays. To make a screenshot from a script, set DOSCRSHOT to non-zero. It will then be scheduled to run once after the drawing but before the above-mentioned event. The screenshots will be called mcapXXXX.{png,tga}.

  • if printext256's <col> arg is negative, use editorcolors[-<col>].

    Helixhorned r2816 8 Jul, 14:47 EngineCON
    Show details

    The editor colors are the ones listed on page 9 of the Mapster32 built-in help.

Open the build to see all 8 commits

June 2012 2 builds · 3 commits

Build 2745

7 Jun 2012 · 2 commits · 1 author SVN
Open build
  • don't attempt drawing sprites with (cstat&48) == 48 that aren't voxels.

    Helixhorned r2744 7 Jun, 10:37 EngineCON
    Show details

    Bang! One more invalid internals exposure squashed. Maybe one day we'll be able to call EDuke32 "stable"... Actually the offending sprite IS drawn as face sprite with shade 32 and xrepeat and yrepeat 255 for the convenience of the CON coder who will have to debug it.

Open the build to see all 2 commits

May 2012 6 builds · 8 commits

Build 2710

29 May 2012 · 6 commits · 1 author SVN
Open build
  • General

    In CON showview, if drawing off-screen, clear the view with pal 0 and bail out.

    Helixhorned r2706 29 May, 13:01 FixCON
    Show details

    This fixes the glitches/corruption whereever showview is used from EVENT_DISPLAYROOMS while the scene is actually rendered to a tile instead of the frame buffer, for example because we have a tilted view or "pixel doubling" enabled. Fixing it for real (i.e. so that the showview actually completes) will require more effort.

Open the build to see all 6 commits

Build 2704

28 May 2012 · 3 commits · 1 author SVN
Open build
  • General

    On Windows, check file name case with 'sound' and 'music' CON commands.

    Helixhorned r2704 28 May, 11:15 CON
    Show details

    This is done by kopen4loadfrommod'ing and immediately closing the file (since the checker is still run from there when not ingame). On my system, times were like 0.12 ms, 0.2 ms and 0.5 ms for each openfrompath/findfrompath, openfrompath/Bopen and SHGetFileInfo respectively, so it shouldn't have a too noticable impact on initial loading times.

Open the build to see all 3 commits

Build 2693

25 May 2012 · 7 commits · 2 authors SVN
Open build
  • General

    Fix gamearrays on 64-bit platforms.

    Helixhorned r2689 25 May, 08:23 FixCON
    Show details

    They were broken by r2666, which made their elements intptr_t instead of int32_t, but this change was not reflected in related allocation code. WARNING: players on 64-bit platforms should not attempt to load games saved with r2665 or earlier.

Open the build to see all 7 commits

Build 2651

13 May 2012 · 4 commits · 1 author SVN
Open build
  • General

    Add tilenum bound check to CON *actor blocks when parsing, fix the other ones.

    Helixhorned r2651 13 May, 09:05 FixCON
    Show details

    The remaining checks now "continue;" when an oob tilenum is found where an oob access would ensue else. Also, it's now checked for negative numbers (the message remains the same though).

Open the build to see all 4 commits

Build 2646

6 May 2012 · 1 commit · 1 author SVN
Open build
  • General

    Assign light SEs (lotags 49 and 50) to an exclusive status number. EXPERIMENTAL!

    Helixhorned r2646 6 May, 14:01 FixEngineCON
    Show details

    The primary reason for doing this is that handing of moving sectors is significantly simplified. Because moving sectors usually don't move containing SEs/effector-statnum sprites, no special handing code is needed to move light SEs with them. Thus, this commit sets light SEs to a new statnum when they're spawned *from premap*, and a new G_Move*-like function (called G_DoPolymerLights) is added to process every sprite in that status list. This should "fix" light SEs moving together with a variety of moving sectors, but CON programs expecting the old behavior may break, therefore this commit is marked as experimental. Additionally, a problem with the old implementation is identified: it seems like the correct functioning is dependent upon the order of processing between the sector movement effector and the light SE, so this makes it another good reason for the change. (A third one is that all lights can be processed with a per- statnum loop, but CON coders should not do this until the change is considered final).

Build 2643

5 May 2012 · 11 commits · 1 author SVN
Open build
  • General

    Factor out almost all instances of setting ...->pals.[rgbf] into P_PalFrom.

    Helixhorned r2643 5 May, 15:24 CON
    Show details

    This is so that it may be intercepted in the future. The only code that's not replaced by the function call is with the CON interface to g_player[].ps->pals via player[].pals X and .pals_time. Also, comment out one instance because it's overwritten by a succeeding one.

  • General

    Add bit 16 to the two main setbrightness() users, add bit 2 to one of them.

    Helixhorned r2637 5 May, 15:22 EngineCON
    Show details

    (I.e. also restore r2232 again.) The first one is the palette restore logic in G_DisplayRest, the second is CON setgamepalette, to which the "don't gltexinvalidateall()" bit is added to mimic the first. Hightile invalidations aren't really useful for anything other than reloading them after a video mode change, IMO. These changes mean that 1) active full screen tints should (almost) always be kept with a basepal change. The only exceptions to this are when tints really have to be cleared, e.g. when changing the player view in co-op play. 2) there should be no performance issues with simultaneously changing basepals while a tint is applied

  • General

    Tweak the conditions under which setbrightness() invalidates GL textures.

    Helixhorned r2636 5 May, 15:22 FixEngineCON
    Show details

    Previously, we checked whether the faded palette has changed (by way of CRC) and invalidated the textures then unless the preserve flags were set. This however could lead to wrongly invalidating them under unfortunate circumstances, e.g. basepal change from CON + tints at the same time before r2620 which reverted r2232. Now, only invalidate them if the corresponding preserve flags are clear AND * the base palette has really changed OR * the palette CRC changed and we were running on software gamma The latter means that performance-killing invalidations may still happen on GL platforms lacking HW gamma (for ATI, it's currently only disabled in 8-bit fullscreen). Also have a new global 'basepalreset' to fake a basepal change for setbrightness(), currently used when changing renderers so that going from Polymer to Polymost and back again will invalidate the Polymer textures on the second change, potentially re-applying a basepal highpal. (Still with me?)

Open the build to see all 11 commits

April 2012 4 builds · 5 commits

Build 2620

29 Apr 2012 · 5 commits · 1 author SVN
Open build
  • General

    Revert r2232, "don't reset full-screen tint on basepal change" in CON setgamepalette.

    Helixhorned r2620 29 Apr, 13:55 FixCON
    Show details

    Because gltexinvalidate*() could be called too often when setgamepalette is used while having a tint overlaid else. Pending thorough analysis/reworking of the 32-bit mode base palette handling / texture invalidation.

Open the build to see all 5 commits