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:

February 2013 11 builds · 19 commits

Build 3529

28 Feb 2013 · 1 commit · 1 author SVN
Open build
  • General

    Lunatic translator: fix codegen for "break" inside while loops.

    Helixhorned r3529 28 Feb, 09:29 FixCON
    Show details

    Note: usually, languages call this "continue". Jeez, CON...

Build 3521

24 Feb 2013 · 6 commits · 1 author SVN
Open build
  • export C functions that may call into CON events using the Lua C API.

    Helixhorned r3520 24 Feb, 08:05 CON
    Show details

    We must not call these functions using the FFI, since the Lua state is considered locked across such calls.

  • General

    Lunatic translator: nearing a workable state...

    Helixhorned r3516 24 Feb, 08:05 FixCON
    Show details

    - some more outer commands - gamearray persistence - faster 'mod': use math.modf instead of math.fmod (the former is JIT-compiled) - checkavail* - THISACTOR special handling - Fix building in Windows (export A_ShootWithZvel instead of A_Shoot).

Open the build to see all 6 commits

Build 3509

19 Feb 2013 · 1 commit · 1 author SVN
Open build
  • add "movement by one" debugging functionality via a.m32.

    Helixhorned r3509 19 Feb, 12:35 FixEngineCON
    Show details

    If m32script gamevar "move_by_one" is nonzero, the some keys move the "player arrow" by increments of 1: - Without SHIFT: LEFT/RIGHT absolute x, DOWN/UP absolute y, A/Z absolute z. - With SHIFT: DOWN/UP (unbounded!) horiz, LEFT/RIGHT angle. This can be useful to debug renderer bugs that show a high sensitivity to the exact location ("are transient in space").

Build 3508

18 Feb 2013 · 11 commits · 1 author SVN
Open build
  • General

    CON qsprintf: fix specifying more than one "%s" conversion.

    Helixhorned r3506 18 Feb, 08:07 FixCON
    Show details

    Also, slightly better, though still inadequate checking.

  • CON

    don't accept read-only vars for first arg of qstrlen.

    Helixhorned r3505 18 Feb, 08:07 CON
  • General

    Lunatic translator: gamearrays.

    Helixhorned r3503 18 Feb, 08:07 CON
  • General

    Fix derailing CON instruction pointer when gametextz is passed null quote.

    Helixhorned r3500 18 Feb, 08:07 FixCON
  • General

    CON digitalnumber*: move orientation &= (ROTATESPRITE_MAX-1) to G_DrawTXDigiNumZ

    Helixhorned r3499 18 Feb, 08:07 CON
Open the build to see all 11 commits

Build 3467

7 Feb 2013 · 9 commits · 1 author SVN
Open build
  • General

    Rework how the z velocity is passed from *zshoot to A_Shoot().

    Helixhorned r3465 7 Feb, 13:01 CON
    Show details

    Previously, actor[].shootzvel (implementation detail, not available to CON) was checked, and if it was !=0, that was the overridden velocity. The value 0 meant "hardcoded, projectile-dependent velocity". But that neccesiated a hack where if zvel 0 was passed and really meant, it needed to be set to 1 instead. Now we have A_ShootWithZvel() taking an additional last argument plus a macro SHOOT_HARDCODED_ZVEL permissible for that argument.

Open the build to see all 9 commits

Build 3452

1 Feb 2013 · 6 commits · 1 author SVN
Open build
  • General

    NULL spriteext[].tpsr after each running EVENT_ANIMATESPRITES for a tsprite.

    Helixhorned r3450 1 Feb, 05:05 EngineCON
    Show details

    Meaning that only *ettsprite[THISACTOR] makes sense from CON. It did before too, because .tspr was set before each event run (and not before all runs), only that it was never nulled, which was kind of untidy.

  • remove unused tsprite access via spriteext[].tspr.

    Helixhorned r3449 1 Feb, 05:05 EngineCON
  • General

    Don't set spriteext[].tspr when creating tsprites from the engine.

    Helixhorned r3448 1 Feb, 05:05 EngineCON
    Show details

    Its only use is to have a actor -> tsprite mapping for the EVENT_ANIMATESPRITE event and .tspr will be set before it is run.

  • RESPAWN-preview coded in M32-script.

    Helixhorned r3447 1 Feb, 05:05 FixEngineCON
    Show details

    The m32script variable 'showrespawn_always' toggles whether the respawned picnum is shown unconditionally instead of only when aimed at (and locked onto the RESPAWN sprite) in 3D mode. Cool idea by Micky C. NOTE: sometimes doesn't work because of a bug in the m32script interpreter.

Open the build to see all 6 commits

January 2013 3 builds · 4 commits

Build 3404

17 Jan 2013 · 6 commits · 1 author SVN
Open build
  • General

    Simplify HUD scale and viewport size logic and clean up related code.

    Helixhorned r3402 17 Jan, 13:59 CON
    Show details

    * Make the "classic status bar fullscreen viewport" mode accessible in classic too. * Make range of status bar scale 36..100 * Update ud.statusbarmode when executing OSD command r_size (ud.screen_size). NOTE: ud.statusbarmode is considered internal. Don't use from CON! * Make sure 1) loading any configuration and 2) menu bars work correctly. (The "classic status bar fullscreen viewport" mode will never be restored though because ud.statusbarmode isn't handled by the OSD var system).

Open the build to see all 6 commits

December 2012 3 builds · 4 commits

Build 3329

28 Dec 2012 · 8 commits · 1 author SVN
Open build
  • General

    Encapsulate aplWeapon* array accesses in a PWEAPON(Player, Weapon, Wmember) macro.

    Helixhorned r3328 28 Dec, 09:18 CON
    Show details

    In the normal game, these arrays are conceptually [MAX_WEAPONS][MAXPLAYERS], allocated as CON per-player gamevars (e.g. WEAPONx_WORKSLIKE). For Lunatic, they are replaced with weapondata_t g_playerWeapon[MAXPLAYERS][MAX_WEAPONS].

  • General

    Replace wall of dup'd code in Gv_AddSystemVars with something more readable.

    Helixhorned r3327 28 Dec, 09:18 EngineCON
    Show details

    Specifically, have a weapondata_t type mimicking the aplWeapon* arrays. Keep a list weapondefaults[] which undergoes some static->dynamic tweaks and then makes its way to the WEAPONx_XXX per-player gamevars.

Open the build to see all 8 commits

Build 3266

10 Dec 2012 · 4 commits · 1 author SVN
Open build
Open the build to see all 4 commits

November 2012 2 builds · 2 commits

Build 3189

15 Nov 2012 · 5 commits · 1 author SVN
Open build
  • CON

    make lotag/hitag getters return signed values, as per agreement on IRC.

    Helixhorned r3189 15 Nov, 13:10 EngineCON
    Show details

    This means that the internal change done to these sprite members in r3159 is hidden from CON for backward-compatibility purposes. Note that .cstat and .{ceiling,floor}stat aren't touched, and will return unsigned values to CON.

Open the build to see all 5 commits

September 2012 2 builds · 3 commits

Build 3000

5 Sep 2012 · 7 commits · 1 author SVN
Open build
  • General

    Factor out some repeated code into G_{Load,Save}PlayerMaybeMulti.

    Helixhorned r2999 5 Sep, 10:25 CON
    Show details

    This currently says that MP saving/loading isn't supported, but doesn't really work correctly. Also, properly bound-check the immediate argument to CON's 'save' command and one more ... -> G_HandleAsync().

  • General

    Factor out snprintf'ing a maybe-modDir'd file name into macro G_ModDirSnprintf().

    Helixhorned r2997 5 Sep, 10:25 CON
    Show details

    ... and use it in three places. In two of these uses, 1) CON {read,write}arrayfromfile and 2) G_SavePlayer, display an error message if the file name such generated is too long. In the CON commands of 1), also error out if the file couldn't be opened.

Open the build to see all 7 commits