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 425 builds · 724 commits

Export CSV
Display options
Commit details:

January 2015 7 builds · 9 commits

Build 4897

10 Jan 2015 · 10 commits · 1 author SVN
Open build
  • General

    Faster/better optimized access to game structures from C-CON.

    TerminX r4897 10 Jan, 20:54 CON
  • General

    Clean up/refactor a few gamevar related functions based on building as C++/C99 and some interesting articles I read about how GCC and Clang optimize switches. Worth a few FPS here.

    TerminX r4895 10 Jan, 20:53 CON
Open the build to see all 10 commits

Build 4875

4 Jan 2015 · 2 commits · 1 author SVN
Open build
  • CON

    always return non-negative values from 'clipmove' and related.

    Helixhorned r4874 4 Jan, 10:44 FixEngineCON
    Show details

    Previously, the C function clipmove() returned negative values when hit a wall (32768+wallnum) or sprite (49152+spritenum) because internally, these values were encoded into a *signed* 16-bit integer. This made no difference to C code using it, since it always proceeded by bit checks, but was inconsistent with documentation on CON 'clipmove' on the wiki. The following commands are affected too, since they use the value returned by clipmove(): 'clipmovenoslide', 'movesprite'. Also, the value of actor[].movflag ('htmovflag' from CON). Also, fix 'clipmove*' in LunaCON and add lunatic/test/checknearwall.con as an example of how to implement a being-close-to-a-wall checker as requested in http://forums.duke4.net/topic/7869-determining-closeness-to-a-wall/

Open the build to see all 2 commits

December 2014 6 builds · 12 commits

Build 4871

28 Dec 2014 · 1 commit · 1 author SVN
Open build
  • General

    sounds.c: don't crash S_PlayMusic() if passed null pointer for 'fn'.

    Helixhorned r4871 28 Dec, 14:12 FixCON
    Show details

    This may happen if no title/end music is defined from CON. Thanks to Zaxtor for the bug report.

Build 4844

26 Dec 2014 · 11 commits · 1 author SVN
Open build
  • fix 'writearraytofile' for 64-bit platforms.

    Helixhorned r4844 26 Dec, 09:30 FixCON
  • CON

    allow passing more than one flag to the 'spriteflags' directive.

    Helixhorned r4841 26 Dec, 09:29 CON
    Show details

    These will be bitwise-OR'd.

  • General

    In C-CON build, prevent leak of gamevar/gamearray labels on savegame loading.

    Helixhorned r4839 26 Dec, 09:29 FixCON
    Show details

    Also, rewrite the loops in Gv_Free() and Gv_Clear() in the plain fashion so that they are correct even if the number of gamearrays exceeds the number of gamevars.

  • General

    cache1d.c: Revert changes in r4665 unrelated to unrolling, fixing oob write.

    Helixhorned r4838 26 Dec, 09:29 FixCON
    Show details

    Specifically, we must make sure that dasizeof <= LZWSIZE (or so) in c1d_{read,write}_compressed() (what the assertion in the last commit was about, and is now redundant). This fixes saving of e.g. large gamearrays with the C-CON build. Bump BYTEVERSION. An alternative for setting dasizeof to 1 would be to factor it and keep dividing as long as it's > LZWSIZE.

Open the build to see all 11 commits

Build 4799

6 Dec 2014 · 8 commits · 1 author SVN
Open build
  • fix tilesizx[]/tilesizy[] access. Can also 'copy' from them.

    Helixhorned r4799 6 Dec, 11:09 FixCON
  • General

    M32Script cleanup. Fixes at least one non-minor and one minor bug.

    Helixhorned r4798 6 Dec, 11:09 FixCON
  • implement 'qstrncat' command.

    Helixhorned r4795 written 5 Dec 2014 CON
  • General

    gamevars.c: don't leak memory in Gv_NewArray(). DONT_BUILD.

    Helixhorned r4793 written 5 Dec 2014 FixCON
Open the build to see all 8 commits

November 2014 2 builds · 8 commits

Build 4777

28 Nov 2014 · 81 commits · 3 authors SVN
Open build
  • fix 'readgamearray' and 'resizearray' on Windows.

    Helixhorned r4735 written 7 Nov 2014 FixCON
    Show details

    We must not use Xrealloc(), since gamearrays are now allocated with Xaligned_alloc(). NOTE: I did not check all potential problematic cases, only those to get LNGA3 up and running.

  • fix 'readgamearray' on 64-bit platforms.

    Helixhorned r4734 written 7 Nov 2014 FixCON
    Show details

    Also prettify P_DisplaySpit().

  • player[].loogcnt, userdef[].color, minor fixes.

    Helixhorned r4732 written 7 Nov 2014 FixCON
  • fix tilesizx[] and tilesizy[] system gamearrays.

    Helixhorned r4731 written 7 Nov 2014 FixCON
  • fix possible crash when a CON error is raised due to access of invalid sprite.

    Helixhorned r4709 written 30 Oct 2014 FixEngineCON
    Show details

    For example, in CON_ERRPRINTF("invalid target sprite (%d) %d %d\n", iActor, vm.g_i, TrackerCast(vm.g_sp->picnum)); vm.g_i can be -1 and vm.g_sp can be NULL then. (Not anymore.) DONT_BUILD.

Open the build to see all 81 commits

September 2014 1 build · 2 commits

Build 4593

7 Sep 2014 · 9 commits · 1 author SVN
Open build
  • General

    Get rid of EnvMusicFilename[] and use MapInfo[].musicfn for that.

    Helixhorned r4588 7 Sep, 11:10 CON
    Show details

    The additional space was there all the time, so it's not understandable why another array was necessary. CON: for 'music', error if volume number is outside [0 .. MAXVOLUMES+1], and in LunaCON, additionally warn if it's MAXVOLUMES+1 (0 is preferred for that).

  • General

    Allow DEFining music for which there is no CON music; Add 'music' OSD command.

    Helixhorned r4587 7 Sep, 11:10 CON
    Show details

    The OSD command is invoked like "music E5L3" (case insensitively).

Open the build to see all 9 commits

August 2014 2 builds · 5 commits

Build 4584

31 Aug 2014 · 9 commits · 1 author SVN
Open build
  • implement 'qsubstr' command. Add source/lunatic/test/qsubstr.con.

    Helixhorned r4583 31 Aug, 04:15 CON
    Show details

    In C-CON's qsubstr, error if <start> is not in [0 .. MAXQUOTELEN-1] or <length> is negative.

  • General

    Fix crash using INTERNAL DEFAULTS after CON error when CON modules were given.

    Helixhorned r4582 31 Aug, 04:15 FixCON
  • ignore internal flag in gamevar redef check; allow "Pals" member.

    Helixhorned r4581 31 Aug, 04:15 CON
Open the build to see all 9 commits

June 2014 2 builds · 2 commits

May 2014 1 build · 3 commits

Build 4476

18 May 2014 · 4 commits · 1 author SVN
Open build
Open the build to see all 4 commits

April 2014 3 builds · 6 commits

Build 4452

19 Apr 2014 · 5 commits · 1 author SVN
Open build
  • General

    Keep displaying difficulty menu for as long as the *voice* plays.

    Helixhorned r4449 19 Apr, 15:42 CON
    Show details

    Previously, the check was for the hard-coded sound number. This made it impossible to change difficulty selection sounds via EVENT_SOUND.

  • CON

    add getactor[]/sprite[] member 'movflags'.

    Helixhorned r4448 19 Apr, 15:42 EngineCON
    Show details

    This is exactly the same as the actor[].movflags member in the Lunatic build: http://lunatic.eduke32.com/lunatic.html#actor

Open the build to see all 5 commits

Build 4428

9 Apr 2014 · 3 commits · 1 author SVN
Open build
  • CON

    in rotatespritea and screentext, if alpha < 0, make -alpha denote blend.

    Helixhorned r4428 9 Apr, 11:51 CON
    Show details

    For convenience, orientation gets bit 1 (translucency) set automatically. Again, test/screentext.con is updated to show off this functionality (the code there assumes that additive blending tables are loaded at blend numbers 101 -- 132). BUILD_LUNATIC.

  • fix 'screentext' command.

    Helixhorned r4427 9 Apr, 11:51 FixCON
  • General

    In ext. PALETTE.DAT, store log2 of last alpha table index. Handle alpha in classic.

    Helixhorned r4426 9 Apr, 11:51 EngineCON
    Show details

    The extended PALETTE.DAT format can now carry a trailing byte, called 'lognumalphatables'. If it is present, the engine assumes that alpha blending tables are loaded at blend indices 1 to 1<<lognumalphatables and handles rotatesprite's alpha and spriteext[].alpha accordingly. The ability to save this new byte is added to engine.lua:savePaletteDat() and the corresponding convenience functions in shadexfog.lua. Examples test/screentext.con and test/sprite_access.con are updated for demonstration purposes.

Build 4416

5 Apr 2014 · 5 commits · 1 author SVN
Open build
  • General

    Rename sector[].filler member to '.fogpal'. From CON, keep the '.alignto' alias.

    Helixhorned r4416 5 Apr, 04:28 EngineCON
    Show details

    The overall situation is thus as follows: - in C and from Lua, that member is called 'fogpal' - In CON (both C-CON and LunaCON), it's 'fogpal' with 'alignto' being an alias; 'filler' wasn't available before, either. - In m32script, it's 'fogpal' or 'alignto' ('filler' is not available any more)

Open the build to see all 5 commits