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

Showing 2013 · select it again to see every year
SVN era · r1519 – r8798 Git era · voidpoint.io, from april 2020
Filters · 3 active

Showing 108 builds · 206 commits

Export CSV
Display options
Commit details:

December 2013 9 builds · 17 commits

Build 4237

31 Dec 2013 · 7 commits · 1 author SVN
Open build
  • General

    Lunatic/m32: include the Lua bytecode into the binary, exit if setup failed.

    Helixhorned r4237 31 Dec, 03:52 Engine
  • add 'engine' module, currently allowing to create custom shade tables.

    Helixhorned r4236 31 Dec, 03:52 Engine
    Show details

    Available in the game and editor. Provide test/shadexfog.lua, containing a function to creating a set of 32 shade tables corresponding to different shades of the same fog palookup table, together with some tests and convenience functions. Also, - Add gv.LUNATIC_CLIENT{,_EDUKE32,_MAPSTER32} - Add LUNATIC_FIRST_TIME in the global env for the game - defs_m32.lua: add reload() convenience function - Failed attempt at recreating the base shade table. It is NOT a linear ramp of the base palette colors to (0,0,0). That is, it's not created by build/util/transpal.exe!

  • fix setup under Mapster32, remove a few obsolete lines in defs_common.lua.

    Helixhorned r4234 31 Dec, 03:51 FixEngine
  • General

    In the no-netcode build, don't expose four internal engine functions.

    Helixhorned r4233 31 Dec, 03:51 Engine
    Show details

    Also don't compile three multiplayer related OSD commands there.

Open the build to see all 7 commits

Build 4230

28 Dec 2013 · 7 commits · 1 author SVN
Open build
  • allow access to sprite[].yvel through set_yvel() member, document.

    Helixhorned r4230 28 Dec, 09:04 Engine
    Show details

    BUILD_LUNATIC.

  • General

    Clean up legacy ROR code and introduce LEGACY_ROR define in game.h.

    Helixhorned r4228 28 Dec, 09:04 Engine
    Show details

    Also, bound-check two .yvel meant as sprite indices in actors.c.

  • General

    Guard retrieval of player index (.yvel) from APLAYER sprite.

    Helixhorned r4226 28 Dec, 09:04 Engine
    Show details

    It is unacceptable that yvel is on one hand modifiable without restriction from scripting, but can be used as an array index without prior bound check in the C code. Because that member has an overloaded meaning and is also used for innocuous purposes such as the green color intensity of an SE light, it's infeasible to restrict access from scripting. Consequently, we must add bound checks on the C side. This is the first part of the effort to make .yvel safe, adding two functions P_Get() and P_GetP(). There are a couple of other uses as some kind of index.

  • add example toggling forcefield wall to test.lua.

    Helixhorned r4224 28 Dec, 09:04 Engine
Open the build to see all 7 commits

Build 4207

20 Dec 2013 · 7 commits · 1 author SVN
Open build
  • General

    Generalize Sect_DamageCeiling to Sect_DamageCeilingOrFloor, use appropriately.

    Helixhorned r4205 20 Dec, 10:31 Engine
    Show details

    - in the function itself: for floor, currently, do nothing (but this commit is in preparation of the next one, again) - In Proj_MaybeDamageCF(), Proj_MaybeDamageCF2() and the A_RadiusDamage() use if the function, generalize to floors, but with the special case that parallaxed floors keep blocking projectiles, as before (in constrast to parallaxed ceilings). However, Sect_DamageCeilingOrFloor() is only called for non-parallaxed ceilings *and* floors.

  • General

    sector.c: in ST9 handling code, prevent oob for improperly constructed doors.

    Helixhorned r4203 20 Dec, 10:31 Engine
Open the build to see all 7 commits

Build 4199

12 Dec 2013 · 3 commits · 1 author SVN
Open build
  • General

    Various stylistic cleanup.

    Helixhorned r4199 12 Dec, 11:22 Engine
    Show details

    - Move ARRAY_SIZE() macro to compat.h, add another one ARRAY_SSIZE() - In A_RadiusDamage(): note maybe-unaligned access issue, prevent unlikely oob - sector.c: use SPRITES_OF* macros where appropriate

  • General

    a.m32: don't clamp SE50 extra (=horiz) to [-500 500] with KP8/KP5.

    Helixhorned r4197 12 Dec, 11:22 Engine
Open the build to see all 3 commits

November 2013 4 builds · 11 commits

Build 4176

22 Nov 2013 · 7 commits · 1 author SVN
Open build
  • handle HUD model 'fov' DEF token.

    Helixhorned r4172 22 Nov, 11:26 Engine
    Show details

    This "simply" requires an appropriate factor in the projection matrix. Also, get rid of a special-case factor for >=1.6 aspects (making HUD models wider then, I think).

  • implement horiz. tex panning for sprites (spriteext[].xpanning).

    Helixhorned r4170 22 Nov, 11:26 EngineCON
    Show details

    Known as getactor/sprite[].xpanning from CON, values are 0-255. It should be assumed that this is only valid for wall-aligned sprites (currently, face sprites also pan). A test is provided in lunatic/test/animatesprites.con. It should be run in E1L2 and only with the Lunatic build.

Open the build to see all 7 commits

Build 4169

19 Nov 2013 · 2 commits · 1 author SVN
Open build
  • General

    a.m32: add [']+[F] menu function setting xvel=1 on all sel. wall/floor sprites.

    Helixhorned r4169 19 Nov, 11:00 Engine
    Show details

    For sanitizing underwater sections, see r4166. Also, don't print "Menu function executed successfully" when the function printed something itself.

  • General

    Amend r4142: make e.g. 'include a' (names shorter 4 chars) append ".m32".

    Helixhorned r4168 written 18 Nov 2013 Engine
    Show details

    DONT_BUILD.

Build 4167

16 Nov 2013 · 8 commits · 1 author SVN
Open build
  • make underwater blocking floor sprites w/ xvel 1 NOT act like sprite bridge.

    Helixhorned r4166 16 Nov, 10:47 Engine
    Show details

    Likewise for blocking wall sprites. This makes it possible to construct underwater sections containing complex spritework without losing the "underwater-ness" when over such sprites, in a backward-compatible way. Actually, the check is for bit 1 being set, but all other bits should be considered reserved.

  • General

    lunatic/util/foreachmap.lua: don't expand .xxx after ']'.

    Helixhorned r4165 16 Nov, 10:47 Engine
    Show details

    Add an example searching for all maps containing blocking floor-aligned sprites in underwater sectors.

  • show a message when setting the initial position with SCROLL LOCK.

    Helixhorned r4164 16 Nov, 10:47 Engine
  • fix Ctrl-F/Ctrl-G as "key FIFO" keys, used in Mapster32.

    Helixhorned r4163 16 Nov, 10:47 FixEngine
    Show details

    By detecting them in the SDL_KEYDOWN events. This list is getting a bit ridiculous...

  • General

    a-c.c: prevent stray lines on bottom of sprites by saturating v. tex coords.

    Helixhorned r4161 16 Nov, 10:47 Engine
    Show details

    The functions mvlineasm1, mvlineasm4 and tvlineasm2 can now be set to clamp the vertical texture coordinate (vplc), preventing the unsightly stray lines on the bottom of non-y-flipped sprites. (The first part of this effort, r3483, handled their top). However, this is only enabled for the mvlineasm ones: the vectorized variants suffered almost no slowdown (even though a PADDUSD SSE instruction would be a nice thing to have), while it was pretty significant for the sequential translucent ones. Summarizing, this leaves two cases where stray lines may appear in the non-ASM build (the saturation is NYI for a.nasm): - at the bottom of y-flipped sprites - at the bottom of translucent sprites (can be toggled by #define) Another observation is that recent GCC generates much faster code for this stuff than Clang from SVN.

Open the build to see all 8 commits

October 2013 9 builds · 13 commits

Build 4125

28 Oct 2013 · 5 commits · 1 author SVN
Open build
  • when failing to load file, don't append '.m32' if already there.

    Helixhorned r4124 28 Oct, 14:26 EngineCON
    Show details

    So that there are no error messages like "M32 file `a.m32.m32' not found." Also, in build.c's 'save as' code, add a bound check that would probably always pass in practice, but looks a bit safer and may fail in very cornerly cases.

  • save r_usetileshades and r_pr_artmapping with mapster32.cfg.

    Helixhorned r4123 28 Oct, 14:26 Engine
  • take initial map file name from ExtPreInit()->G_CheckCommandLine().

    Helixhorned r4121 28 Oct, 14:26 Engine
    Show details

    Instead of directly in build.c:app_main(). Previously, it was possible that an argument to an option, e.g. "WGR2" with "-game_dir WGR2", would get interpreted as the initial map to load. This in turn would attempt to execute WGR2.cfg as sequence of OSD commands -- where that file is an EDuke32 config file instead! Now: maps are passed without any options, e.g. "mapster32 [opts...] debug.map". The map file name is not added to the "additional parameters" for map testing.

Open the build to see all 5 commits

Build 4120

27 Oct 2013 · 9 commits · 1 author SVN
Open build
  • General

    At end of G_RestoreMapState(), update g_player[].ps->i from STAT_PLAYER sprites.

    Helixhorned r4114 written 25 Oct 2013 FixEngine
    Show details

    This fixes a potential crash caused by violating the expected invariant sprite[g_player[player_index].ps->i].yvel == player_index otherwise.

Open the build to see all 9 commits

Build 4096

11 Oct 2013 · 3 commits · 1 author SVN
Open build
  • General

    Fix OpenGL texture cache "leak" and slightly tweak hash string construction.

    Helixhorned r4096 11 Oct, 15:20 FixEngine
    Show details

    The leak happened because a struct was hashed that had uninitialized bytes in padding inserted by the compiler. The hash string in now constructed as concatenation of three CRC32s as 8-byte hex strings, i.e. the individual CRC32s are padded with leading zeros. Note to users: because of the hash change, it's sensible to delete the 'textures' and 'textures.cache' files.

  • fix ANM playback.

    Helixhorned r4094 11 Oct, 15:20 FixEngine
    Show details

    References: - r3742 - r4038 (fixing savegame screenshots, but introducing the now fixed bug)

Open the build to see all 3 commits

Build 4089

8 Oct 2013 · 1 commit · 1 author SVN
Open build
  • General

    Merge a patch and suggestions from NY00123 improving SDL2 support. This fixes the flickering in OpenGL in SDL2 on Windows. It also provides a proper list of resolutions.

    Hendricks266 r4089 8 Oct, 02:59 FixEngine

Build 4088

7 Oct 2013 · 5 commits · 1 author SVN
Open build
  • General

    Fix OpenGL under SDL && Windows. (Almost. SDL 1.2 works fine, but SDL2 has an unresolved problem where OpenGL screen updates flicker over a black background.)

    Hendricks266 r4088 7 Oct, 03:06 FixEngine
  • General

    Split the handling of audio based on RENDERTYPE into a new variable named MIXERTYPE, allowing Windows builds to use SDL for input and rendering (RENDERTYPE=SDL) while using DirectSound and Windows' MIDI interface (MIXERTYPE=WIN [current default]) so that EMIDI works.

    Hendricks266 r4084 7 Oct, 03:05 Engine
Open the build to see all 5 commits