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

Showing 2,117 builds

Export CSV
Display options
Commit details:

September 2011 24 builds · 56 commits

Build 2030

17 Sep 2011 · 2 commits · 1 author SVN
Open build
  • General

    More natural mouse picking in software mode, closer to "what's under the cursor

    Helixhorned r2030 17 Sep, 07:26 FixEngine
    Show details

    is picked" but still not perfect. In particular, sometimes a wrong wall is selected, and sprites don't get picked through portals. As a rule of thumb, don't be too far away from the objects you're modifying in 3D mode.

  • General

    In the textured 2D mode of Mapster32, only texture non-grayed out sectors.

    Helixhorned r2029 17 Sep, 07:25 Engine

Build 2028

16 Sep 2011 · 1 commit · 1 author SVN
Open build
  • General

    Three-way clipping in Mapster32 (still toggled with 'N): on and off as

    Helixhorned r2028 16 Sep, 12:17 Engine
    Show details

    before, and additionally a mode that doesn't clip against masked walls and sprites.

Build 2027

15 Sep 2011 · 1 commit · 1 author SVN
Open build
  • General

    In the editor, when rescaling the texture after dragging a wall-point, also

    Helixhorned r2027 15 Sep, 12:31 Engine
    Show details

    traverse the TROR neighbors.

Build 2026

15 Sep 2011 · 9 commits · 1 author SVN
Open build
  • General

    Add high-resolution timers C API for profiling. The functions are called

    Helixhorned r2026 15 Sep, 10:05 Fix
    Show details

    uint64_t gethiticks() and gethitickspersec(). For SDL 1.2, the timer has the same resolution as getticks (1000 Hz). For Windows and SDL 1.3, the resolution of the underlying perf-timers is used. The only user of these functions right now is some TROR on-screen debugging code. Revert an earlier change regarding r_preview_mouseaim. We can't do the check because editstatus is set later.

  • General

    - Add new trueror1.map that showcases the functionality and limitations of

    Helixhorned r2025 15 Sep, 10:04 FixEngine
    Show details

    the additional rendering pass - Remove r_preview_mouseaim cvar from the game, since it's only for Mapster - sdlmusic.c: (Failed) attempt to fix a call of waitpid() with a non-existent process ID in the external MIDI playing code. I think there's a race there...

  • General

    Support for drawing 'island sectors' for TROR/classic (and with limited

    Helixhorned r2024 15 Sep, 10:04 FixEngine
    Show details

    functionality, Polymost). The new feature can be enabled/disabled with the 'r_tror_nomaskpass' cvar. The basic idea is that when drawing lower or upper levels, a first pass is performed that ignores all red walls for which the TROR nextwall link 'towards' the viewer arrives at a red wall. Thus, in the worst case, there can be up to twice as many rendering passes now (when it is discovered that the no-mask-pass isn't different that what would be drawn with the ordinary one, the latter is skipped, since we've already drawn all needed geometry). Hovever, this kind of multi-pass splitting is only suitable for simple scenes, like the upper subway in the TROR test map. In particular, multiple islands shouldn't 'see' each other. Two issues are worth mentioning: first, care needs to be taken for translucent ceilings or floors, since drawing them twice isn't the same as drawing them once. This is done for classic, but not for Polymost. Second, sprites (which are always drawn _after_ the geometry for a given pass) are still clipped to the geometry of the ordinary pass, resulting in their disappearance from certain angles. -- Additionaly, a change made it into this commit that fixes redundant collection of sprites in TROR:classic/Polymost.

  • General

    misc. cleanup:

    Helixhorned r2023 15 Sep, 10:03
    Show details

    - remove 'imageSize' global which was always yres*bytesperline and only used once - some clearbuf() -> Bmemset() because I find the latter easier to read - remove some clearbufs to 0 of some global arrays on init

  • General

    Make uninitialization sequence more consistent across the editor code. It's

    Helixhorned r2022 15 Sep, 10:03
    Show details

    always like this now: ExtUninit -> (writesetup, misc.) uninitengine -> (uninitsystem -> (uninit timers, mouse, ...)) exit() Some paths still lead to a plain exit(), like failures in cache1d.c or mdsprite.c

Show the other 4 commits in this build

Build 2016

11 Sep 2011 · 1 commit · 1 author SVN
Open build
  • General

    Add a couple of missed sanity checks for accessing player and sprite structure members as vars. Should fix crashes with stuff like "ifvare player[some value greater than MAXPLAYERS].kickback_pic blah"

    TerminX r2016 11 Sep, 23:25 FixEngineCON

Build 2015

10 Sep 2011 · 4 commits · 1 author SVN
Open build
  • In setbrightness() and qsetmodeany(), call setpalette() only if the

    Helixhorned r2015 10 Sep, 08:45 FixEngine
    Show details

    palette changed from the last one (either globally or within the last call of one of the function). This fixes the ugly OSD flickering in 8-bit mode when a screen tint effect is in action (such as when being hurt or snotted on).

  • General

    A couple of trivial/cleanup changes. setvgapalette() is removed from the

    Helixhorned r2014 10 Sep, 08:44 Engine
    Show details

    engine, since it had no users.

  • when changing screen palettes, pass flag 2 to setbrightness().

    Helixhorned r2013 10 Sep, 08:44 Engine
    Show details

    This will prevent it from calling gltexinvalidateall() when e.g. submerging and resurfacing, mimicking the behavior of the game, where only gltexinvalidate8() is called in such situations.

  • make the heinum&2 and stat inconsistency be displayed only once

    Helixhorned r2012 10 Sep, 08:44 FixEngine
    Show details

    with 'corruptcheck now', but still print each corrected one on tryfix.

Build 2011

6 Sep 2011 · 6 commits · 1 author SVN
Open build
  • General

    sdlayer.c: also SDL_WarpMouse() in debugging builds. This has at least three

    Helixhorned r2011 6 Sep, 10:46
    Show details

    effects: 1) Mouse turning works with SDL 1.3 2) The mouse pointer can't leave the window area with the console up, so that focus always stays with the application 3) Menu selection using the mouse doesn't work. Not dramatic IMO.

  • General

    polymer.c: Fix a potential zero-size calloc call when a two-walled sector

    Helixhorned r2010 6 Sep, 10:46 FixEngine
    Show details

    is present (like in E4L1). Also sneak in a trivial change in cache1d.c

  • General

    Using this dynamic checking tool: http://embed.cs.utah.edu/ubc/,

    Helixhorned r2009 6 Sep, 10:46 FixEngine
    Show details

    fix two issues with signed integer overflow. One is related to clipping and the other to Polymost mouse-picking for overlong walls. Many more remain especially in the 8-bit rendering code, but I expect many of them to be intended.

  • General

    Tweak the source so that it can be built by clang. The only necessary change

    Helixhorned r2008 6 Sep, 10:46
    Show details

    is to remove a couple of 'inline's for functions with external linkage, which seems to be a GCC convenience.

  • General

    mdsprite.c: prevent a couple of float divides by zero and save model file

    Helixhorned r2007 6 Sep, 10:45 Engine
    Show details

    name into m->head.nam after loading (but before preprocessing for Polymer)

Show the other commit in this build

Build 2005

4 Sep 2011 · 1 commit · 1 author SVN
Open build
  • General

    Fix crashes on 64-bit due to unintended address truncation on ptr vars

    TerminX r2005 4 Sep, 16:06 Fix

Build 2004

4 Sep 2011 · 4 commits · 1 author SVN
Open build
  • General

    Better handling of tsprites that are duplicated through TROR portals.

    Helixhorned r2004 4 Sep, 12:44 FixEngine
    Show details

    Specifically, now also consider the sprite tile's yoffset, and fix an issue when a tsprite got duplicated 'toward' the viewer. Also add a couple of tests in trueror1.map.

  • General

    Unbreak zip support as another means to group files. Using 16-bit integers to

    Helixhorned r2003 4 Sep, 12:44
    Show details

    hold file lengths is certainly very frownworthy.

  • General

    Prepare polymost.c for proper umost/dmost clipping of TROR passes. No real functional changes.

    Helixhorned r2002 4 Sep, 12:44 Engine
  • General

    Move the fixspritesectors call and the start sector updating into ExtPreSaveMap().

    Helixhorned r2001 4 Sep, 12:43 Engine
    Show details

    This makes the latter also correct when testing a map from the editor.

Build 2000

2 Sep 2011 · 1 commit · 1 author SVN
Open build
  • General

    use updatesectorz instead of updatesector for the startsectnum updating when saving a map.

    Helixhorned r2000 2 Sep, 15:15

Build 1999

1 Sep 2011 · 5 commits · 1 author SVN
Open build
  • General

    Oops...

    Helixhorned r1998 1 Sep, 12:58 Fix
  • General

    BACKSPACE key in 3D mode now deletes a red-wall link when aimed at a wall or mask.

    Helixhorned r1997 1 Sep, 12:53 FixEngine
    Show details

    With script_expertmode enabled, SHIFT-BACKSPACE clears the upwall link and CTRL- BACKSPACE the downwall link. These functions are useful because the automatic nextwall determination code sometimes gets it wrong (not corrupting anything) or if you want to vertically displace a sector attached to a higher or lower level. Also add the exploding ceiling example to the TROR test map.

  • General

    Much more elegant solution to updating the player's sectnum when passing through

    Helixhorned r1996 1 Sep, 11:38 FixCON
    Show details

    TROR portals that works with a little help from updatesectorz() (change not visible from CON code). Relies only on the presence of an extension whose portal isn't blocked and also plays nicely with corner cases like being shrunk and enabling the jetpack. This should fix the upward moving platforms in WGR2.

  • General

    * game and editor: emit a warning when a search-path directory specified

    Helixhorned r1995 1 Sep, 11:37 Fix
    Show details

    on the command-line isn't found (instead of saying nothing) * editor: Move inconsistent (stat&2)/heinum detection into the corruption checker. This makes a lot of original maps spew countless 'errors', but it's preferable for new maps since such floors and ceilings could behave strangely with TROR.

  • General

    polymost.c: remove the rest of the rendmode 1 and 2 code from the build

    Helixhorned r1994 written 28 Aug 2011 Engine

August 2011 21 builds · 40 commits

Build 1993

27 Aug 2011 · 1 commit · 1 author SVN
Open build
  • fix leak of GL query objects

    Plagman r1993 27 Aug, 21:42 FixEngine
    Show details

    In cases where performing occlusion queries for multiple red walls leading to the same sector, we would sometimes leak a number of query objects. This was apparently harmless on NVIDIA drivers, but would leak tons of memory on ATI.

Build 1992

26 Aug 2011 · 1 commit · 1 author SVN
Open build
  • General

    weapons.con.sample: fix a potential bug modders may encounter: use the special G_Draw temp variables in G_DrawWeaponTile(_crystal) instead of the ones intended for individual drawing states

    Hendricks266 r1992 26 Aug, 22:08 FixCON

Build 1991

21 Aug 2011 · 2 commits · 1 author SVN
Open build
  • fix sector masks translucency.

    Plagman r1991 21 Aug, 12:41 FixEngine
    Show details

    The code was using the Polymer-cached version of the sector cstat to determine the translucency of its diffuse material, meaning it would never get it right on the first try; that's what you get for having completely different variables named 's' and 'sec'.

  • Don't draw back faces of sector masks.

    Plagman r1990 21 Aug, 12:41 Engine
    Show details

    We normally enable backface culling always, but turn it off for two-sided sprites; we need to make sure it's re-enabled after that as sector masks are drawn after.

Build 1989

20 Aug 2011 · 7 commits · 1 author SVN
Open build
  • General

    quotes don't print at all if blank

    Hendricks266 r1989 20 Aug, 16:28
  • General

    add weapons.con.sample, a direct port of the HUD display code to CON

    Hendricks266 r1988 20 Aug, 16:28 CON
  • General

    add support for the include command to names.h loaded by Mapster32, and names.h no longer requires # in front of commands for CON compatibility

    Hendricks266 r1987 20 Aug, 16:28 EngineCON
  • General

    change the help dialog to say 'demo.edm' instead of 'demo.dmo', change support for drag and drop demo files from '.dmo' to '.edm', and change the debughelp dialog to remove the reference to the removed '-nD' gamevars.txt dumping parameter

    Hendricks266 r1986 20 Aug, 16:28 CON
  • General

    gut and update enhance.con.sample

    Hendricks266 r1985 20 Aug, 16:28 CON
Show the other 2 commits in this build

Build 1982

20 Aug 2011 · 9 commits · 1 author SVN
Open build
  • fix external view.

    Plagman r1982 20 Aug, 14:06 FixEngine
    Show details

    Some of the ROR code was operating under the assumption that drawasks always correspond to one call of polymer_displarooms(), but that's not necessarily the case; external view draws all sectors from the top polymer_drawrooms(), which was causing crashes. Just ignore the sector mask queues in external view mode, we already don't draw masked walls.

  • propagate lights across vertical boundaries.

    Plagman r1981 20 Aug, 14:05 Engine
    Show details

    Check all the bunch siblings if we get a floor/ceiling hit and walk them if their own planes hit.

  • add preliminary support for sector masks.

    Plagman r1980 20 Aug, 14:05 Engine
    Show details

    When walking the sectors in displayrooms, detect floor/sector masks to place them in a mask queue. The queues are allocated on the heap, but a stack pointer is maintained by the displayrooms to allow it to play nice with mirror recursion. Right now the masks are drawn after all of drawmasks is finished; that means you can see sprites and wall masks through sector masks, but not the opposite. There is a slight attempt at blending far to near, but nothing too conclusive yet; that means that in some cases some sector masks won't be visible through other sector masks, but it should work for trivial cases. The next step would be to copy all the drawmasks logic into Polymer and have it (attempt to) properly interleave sector masks where they belong in the blending order.

  • Don't draw 1-way walls twice.

    Plagman r1979 20 Aug, 14:05 Engine
    Show details

    Previously they would get counted both as 1-way walls for immediate drawing and as mask walls for delayed drawing.

  • Don't bother fogcalc()ing invisible planes.

    Plagman r1978 20 Aug, 14:05 Engine
    Show details

    Doesn't actually matter that much.

Show the other 4 commits in this build

Build 1971

18 Aug 2011 · 2 commits · 1 author SVN
Open build
  • General

    slight tweak for software renderer sprite picking: don't pick them if they're behind a TROR portal from the current position.

    Helixhorned r1971 18 Aug, 15:01 Engine
  • General

    Make Ctrl-Alt-A also remove gray walls in the side-view mode. This makes TROR-heavy maps look much less cramped when used in conjunction with Ctrl-A.

    Helixhorned r1970 18 Aug, 15:01 Engine