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 154 builds · 247 commits

Export CSV
Display options
Commit details:

December 2012 2 builds · 3 commits

Build 3278

12 Dec 2012 · 7 commits · 1 author SVN
Open build
  • General

    Win64 support! (Meaning it works, not that we recommend it for everyday use.)

    Hendricks266 r3278 12 Dec, 18:37 FixEngine
    Show details

    This includes a complete Windows header and library refresh, including the addition of 64-bit compiled libs: *libogg 1.3.0 *libvorbis 1.3.3 *zlib 1.2.7 *libpng 1.5.13 *libvpx 9a3de881c0e681ba1a79a166a86308bbc84b4acd *SDL_mixer 1.2.12 (for RENDERTYPE=SDL) *DirectX import libraries: dsound and dxguid (now included) To build in 64-bit, you essentially need MinGW's MSYS (but not MinGW itself) and MinGW-w64 at the top of your PATH. The target is automatically detected using `$(CC) -dumpmachine`. The EDukeWiki will get detailed instrucitons. All compiler and linker warnings when building in 64-bit mode have been fixed. Remaining 64-bit to-do: - The ebacktrace dll does not build under 64-bit. It uses code specific to the format of 32-bit executables and will have to be ported to work with 64-bit executables. A future 64-bit version will be named ebacktrace1-64.dll. - RENDERTYPE=SDL crashes in SDL_mixer's Mix_Linked_Version(). - DirectInput gives an error and does not function. This only affects joysticks, and the error never happens without any plugged in. - Port the classic renderer ASM to 64-bit. (Just kidding, this is way out of my league.) This commit includes a fair bit of Makefile development spanning all platforms, including simplifying the SDLCONFIG code, fixing build on Mac OS X (thanks rhoenie!), globally factoring Apple brew/port inclusion, enforcing that all -L come before all -l, and ensuring that $(shell ) is always :='d. In addition, I have resurrected the old GCC_MAJOR and GCC_MINOR detection using `$(CC) -dumpversion`, but I have made it failsafe in case the command fails or the version is manually specified. I have applied this new fine-grained detection where applicable, including allowing LTO, and restraining -W's to versions that support them.

  • General

    Port system gamearray access from M32Script to CON. Expose tilesizx and tilesizy.

    Hendricks266 r3274 12 Dec, 18:33 FixEngineCON
    Show details

    Also, fix deficient logic in Gv_Free and Gv_Clear (both M32 and CON) so that gamevar and gamearray erasure results are (closer to) correct, and so that the game does not crash when system arrays are accessed from CON because they all have been nulled.

Open the build to see all 7 commits

November 2012 4 builds · 4 commits

Build 3223

25 Nov 2012 · 4 commits · 1 author SVN
Open build
  • General

    RENDERTYPE=SDL on Windows, part 2.

    Hendricks266 r3221 written 24 Nov 2012 Engine
    Show details

    This introduces winbits.[ch] in the engine, containing layer-independent code migrated from winlayer, including nedmalloc, ebacktrace1, OS version detection, and high-resolution profiling timers. sdlayer has been expanded to include the code from winbits under _WIN32. All uses of RENDERTYPEWIN in the source have been examined and changed to _WIN32 (or removed) where the block in question is layer-independent.

Open the build to see all 4 commits

Build 3164

14 Nov 2012 · 3 commits · 1 author SVN
Open build
  • General

    Tools updates:

    Hendricks266 r3163 14 Nov, 22:42 FixEngine
    Show details

    - Eliminate use of the C++ standard library from arttool. I improved some of the program's workings but it continues to corrupt my art files in certain circumstances. (Note: Not a regression; it happens with previous revisions.) - Construct "make utils" for the game side following the pattern of the engine. - Move ivfrate to this new distinction. - Minor Makefile cleanup and tweaks, mainly to facilitate CLANG=1 and to formalize text output in special cases.

Open the build to see all 3 commits

Build 3118

4 Nov 2012 · 3 commits · 1 author SVN
Open build
  • General

    Work-in-progress adjustment to the C code to compile under C++. It builds for me without errors using Win32 MinGW-GCC, but it still generates warning soup. No guarantees about MSVC or anything using SDL. Enable C++ by building with CPLUSPLUS=1. C remains the default and should compile with no change in setup.

    Hendricks266 r3116 4 Nov, 18:49 Engine
    Show details

    Credit to Plagman for the idea and doing the work on the game side, which is included in this commit. (Building as C++ will give us features with which we can make improvements and optimizations on the multiplayer code and Polymer.)

Open the build to see all 3 commits

October 2012 1 build · 2 commits

Build 3101

28 Oct 2012 · 6 commits · 1 author SVN
Open build
  • General

    Two new player structure members: "autostep" and "autostep_sbw".

    Hendricks266 r3100 28 Oct, 21:29 Engine
    Show details

    These control the maximum difference in height between two sectors that the player will automatically traverse without needing to jump. The latter controls the special case when the player's sector's lotag is ST_1_ABOVE_WATER or p->spritebridge == 1. BYTEVERSION bumped.

  • General

    Slight makefile reorganization and cleanup.

    Hendricks266 r3096 28 Oct, 21:26 Engine
    Show details

    * Centralize optimization strategies in Makefile.common. This required moving detection of $(PLATFORM), which makes sense if we work on the paradigm that Makefile.common is for generic compiler setup and Makefile.shared works with libraries and things closer to the engine and game code itself. * New Makefile variables OPTOPT (Optimization Options) and CUSTOMOPT (Custom Optimizations). OPTOPT by default contains -march, -mtune, etc. Setting this variable from Make invocation will blank these. CUSTOMOPT (Custom Optimizations) works the same but in an additive fashion, overwriting nothing. Technically CUSTOMOPT could stand for (Custom Options) and include any additional parameters sent to both linker and compiler. * Factor out literal names of the main executables. * The build process now prints assembler (if NOASM=0) and linker settings in addition to compiler settings.

Open the build to see all 6 commits

August 2012 1 build · 1 commit

Build 2976

26 Aug 2012 · 5 commits · 1 author SVN
Open build
  • General

    Add EVENT_PREGAME. Now all sprites are processed in the following fashion:

    Hendricks266 r2973 26 Aug, 20:49 EngineCON
    Show details

    1. EVENT_PREGAME 2. hardcoded stuff 3. EVENT_GAME One potential use is to examine values which are clobbered by commands such as ifhitweapon/ifwasweapon.

Open the build to see all 5 commits

June 2012 1 build · 1 commit

Build 2729

3 Jun 2012 · 5 commits · 1 author SVN
Open build
  • General

    The handling for grp, con, and def filenames has been massively cleaned up and factored into common.c. A new header, common_game.h, was created because common.h was placed in build/include (see r2542) and we need a common header for things that strictly should not be in the engine. RTS file names were also improved but some of the patterned changes were already made in r2420, and they were not factored because they are strictly part of the game, not the editor.

    Hendricks266 r2726 3 Jun, 09:09 Engine
    Show details

    NAM and Napalm can now share their con, def, and rts files if the one for their respective game is not present because the con and rts files are identical. Also, decapitalize two string literals missed in r2540.

Open the build to see all 5 commits

May 2012 1 build · 1 commit

Build 2685

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

    Mac OS X: Add correct default values for 'gameexecutable' cfg string so that the Mapster32 test feature works with .app bundles.

    Hendricks266 r2684 20 May, 00:24 FixEngine
    Show details

    Note: You may encounter a crash if you try to test your map and Mapster32 is running fullscreen.

Open the build to see all 3 commits

March 2012 2 builds · 2 commits

Build 2523

24 Mar 2012 · 1 commit · 1 author SVN
Open build
  • General

    - Makefiles:

    Hendricks266 r2523 24 Mar, 01:30 FixEngine
    Show details

    - Fix typo, correctly adding SDL libs to the tools on OS X so that makesdlkeytrans builds. - Move all mention of $(LIBS) out of build/Makefile into build/Makefile.shared because no linking takes place in the engine itself so LIBS additions were lost. This should fix USE_LIBPNG=1 on Windows at least. - Other assorted cleanup.

Build 2495

18 Mar 2012 · 3 commits · 1 author SVN
Open build
  • General

    New "-clipmap" command-line switch to specify sector collision clip maps. This switch works in an additive fashion like -mx and -mh. _clipshape0.map through _clipshape9.map remain loaded by default.

    Hendricks266 r2495 18 Mar, 01:50 Engine
    Show details

    Also, a very minor change in the con/def module code. (int --> int32_t)

Open the build to see all 3 commits

October 2011 1 build · 1 commit

August 2011 1 build · 1 commit

July 2011 1 build · 1 commit

Build 1939

21 Jul 2011 · 3 commits · 1 author SVN
Open build
  • General

    My first commit!

    Hendricks266 r1937 21 Jul, 15:39 FixEngine
    Show details

    The main feature is the addition of -mx and -mh command-line parameters to EDuke32 and Mapster32. These parameters include a con and def "module" respectively. This translates into essentially including the file from the bottom of the compiled script. I fixed the classic buggy behavior of the BROKEHYDROPLANT and REACTOR2 sprites. I also fixed a small, long-standing bug where FRAMEEFFECT1 blurs are not affected by sector floorpal. You can see one example of this by shrinking the Enforcer on the upper inside of the toppled building in E3L11: Freeway. I tweaked the Makefile so that it would automatically regenerate the keep.me files in the $(OBJ) and $(EOBJ) directories after they are deleted for cleaning. One final change is a slight positioning cleanup of both programs' --help dialog boxes.

Open the build to see all 3 commits