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

Showing 108 builds · 206 commits

Export CSV
Display options
Commit details:

March 2013 12 builds · 18 commits

Build 3566

15 Mar 2013 · 8 commits · 1 author SVN
Open build
  • General

    Lunatic t.: option for generating code caching sprite/actor/player structs...

    Helixhorned r3561 15 Mar, 09:56 Engine
    Show details

    ...at the beginning of each function called back from C, and each case/default function. Called -fcache-sap. Disabled by default.

  • spritesof{stat,sect} iterators that allow deletion inside the loop.

    Helixhorned r3560 15 Mar, 09:56 Engine
    Show details

    Also, - an optimization for sprite[]:setpos(). Calls to get_sprite_index() seem to be pretty slow (at least when they're not compiled). - add getzrange to the dynsymlists

Open the build to see all 8 commits

February 2013 10 builds · 24 commits

Build 3528

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

    engine.c: in setpolymost2dview(), set gloy=-1 unconditionally.

    Helixhorned r3525 25 Feb, 07:31 FixEngine
    Show details

    This fixes an update issue: start EDuke32 without warping to a map in Polymost, change to classic, and change to Polymost again. The OSD background will be displaced.

  • sector[]:zrangeat(), 'getzrange' command for the translator.

    Helixhorned r3524 25 Feb, 07:31 FixEngine
    Show details

    Also, fix quote commands there.

Open the build to see all 7 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 3495

18 Feb 2013 · 3 commits · 1 author SVN
Open build
  • Wii

    Add Homebrew Channel metadata for Mapster32 and expand the build process to easily allow its addition. Unfortunately it closes on launch without any log and I don't have any means to debug it, so it remains disabled. (Who wants to map on a TV with 640x480 resolution anyway?)

    Hendricks266 r3495 18 Feb, 00:49 Engine
Open the build to see all 3 commits

Build 3484

14 Feb 2013 · 4 commits · 1 author SVN
Open build
  • General

    Classic renderer: high-precision sprite drawing, preventing stray lines on top.

    Helixhorned r3483 14 Feb, 08:02 FixEngine
    Show details

    Face- and wall-aligned sprites are drawn using the wall routines in BUILD. However, the per-x-screen-coordinate distance (swall[]) is calculated in a way that potentially incurs great precision loss (for example 5 bits for xdimen=1280, yxaspect=65536). This leads to the starting (top) vertical texture coordinate possibly wrapping to large values, leaving an unsightly "stray line" on top of the sprite from certain viewing angles/horiz values. The approach to fix it has two parts: first, the distance is calculated using float values, preventing the precision loss. Because this doesn't fully prevent the unwanted lines, the texture coords are clamped to the mininum and maximum (0 and UINT32_MAX respectively) when calculating them for sprites. Note that stray lines may still appear at the *bottom* of sprites under certain circumstances, for example when viewing at a y-flipped sprite from above. These should be less noticable in real-world usage though. The feature is guarded by a macro HIGH_PRECISION_SPRITE in case using floating point or 64-bit integers is undesirable/impossible on some platforms.

  • General

    engine.c: factor out calculation of texture coords / addresses in wall drawing.

    Helixhorned r3482 14 Feb, 08:02 Engine
  • General

    engine.c: don't pass [udls]wal to maskwallscan(), use *wall globals instead.

    Helixhorned r3481 14 Feb, 08:01 Engine
Open the build to see all 4 commits

Build 3477

10 Feb 2013 · 10 commits · 1 author SVN
Open build
  • sprite.change{sect,stat}, access to more members, member read test.

    Helixhorned r3475 10 Feb, 08:24 Engine
  • General

    engine.c: in changesprite{sect,stat}, swap second and third early-out tests.

    Helixhorned r3474 10 Feb, 08:24 Engine
    Show details

    That is, first check if the sprite is in the game world and then if it already has the desired sector or status number. This doesn't change anything in our codebase, since the return values of these functions are never examined.

  • General

    Engine cleanup continued, no functional changes.

    Helixhorned r3472 10 Feb, 08:24 Engine
  • General

    engine/Polymer: factor out setting {cos,sin}*globalang into set_globalang().

    Helixhorned r3471 10 Feb, 08:24 Engine
  • General

    engine.c: clean up drawsprite()

    Helixhorned r3470 10 Feb, 08:24 Engine
    Show details

    The usual: declare locals more tightly, const-qualify them where it helps readability, remove dead code...

Open the build to see all 10 commits

Build 3452

1 Feb 2013 · 6 commits · 1 author SVN
Open build
  • provide access to actor-tsprite.

    Helixhorned r3452 1 Feb, 05:05 Engine
  • 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 11 builds · 20 commits

Build 3428

23 Jan 2013 · 5 commits · 1 author SVN
Open build
  • General

    Rework hardcoded BADGUY sprite flag initialization (i.e. amend r3257).

    Helixhorned r3426 23 Jan, 11:36 FixEngine
    Show details

    Use a new flag to mark hard-coded enemies, not SPRITE_BADGUY. This fixes an issue where in E1L4, a pigcop would appear in the area you have to crawl under shrunk. Thanks to LLCoolDave1 for pinpointing the range of relevant revisions.

  • fix cycling to the next link sprite with LShift+"]", tweak message.

    Helixhorned r3424 23 Jan, 11:36 FixEngine
Open the build to see all 5 commits