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

Showing 670 builds · 2,334 commits

Export CSV
Display options
Commit details:

April 2013 15 builds · 60 commits

Build 3712

25 Apr 2013 · 4 commits · 1 author SVN
Open build
  • General

    In G_LoadAddon(), remove inner 'struct grpfile *grp', fixing uninited access.

    Helixhorned r3712 25 Apr, 14:10 Fix
    Show details

    ... four lines later. I don't know if that is the intended semantics for this function, but nasal demons is clearly not what we want. Please review!

  • General

    Fix two harmless warnings and reindent one switch block.

    Helixhorned r3711 25 Apr, 14:10 Fix
    Show details

    Also, make G_LoadAddon() local to game.c.

  • General

    Lunatic (map-int VX) build: implement loading <V7 maps.

    Helixhorned r3710 25 Apr, 14:10
  • auto-detect LameDuke's PALETTE.DAT and read tables accordingly.

    Helixhorned r3709 25 Apr, 14:10 Engine
    Show details

    LameDuke's shade table has 32 gradients of shade, like Duke3D. For the translucency table though, only the diagonal + one half is stored because it's symmetric (50/50 translucency).

Build 3704

22 Apr 2013 · 3 commits · 1 author SVN
Open build
  • General

    a.m32: add user variable 'override_basepal'.

    Helixhorned r3704 22 Apr, 03:35 Engine
    Show details

    Set it to >=0 to override the base palette (water, slime, ...) in 3D mode. This can be useful to navigate Lameduke's underwater sections, since its LOOKUP.DAT only contains 8 lookup tables, but no other *base* palettes. Consequently, base palettes >=1 will make the whole screen black when Lameduke's LOOKUP.DAT is loaded into EDuke32 or Mapster32.

  • General

    Revert an awful stupidity I committed in r3700.

    Helixhorned r3703 22 Apr, 03:35 Fix
  • General

    Remove 'cl_angleinterpolation' cvar because it had no effect for a while.

    Helixhorned r3702 22 Apr, 03:35 CON
    Show details

    Also remove the two instances of commented out code, but not the respective CON structure access code.

Build 3701

21 Apr 2013 · 8 commits · 1 author SVN
Open build
  • General

    Classic drawmasks(): if sprite is on other side of maskwall, always draw it first.

    Helixhorned r3701 21 Apr, 12:55 FixEngine
    Show details

    This fixes the bug reported here: http://forums.duke4.net/topic/5340-bug-with-masked-walls/page__view__findpost__p__123233 But I haven't checked the change for any adverse effects.

  • General

    engine.c: stylistic tweaks of drawmasks().

    Helixhorned r3700 21 Apr, 12:55 Engine
  • in tsprite access, fix checking min/max/RO; tweak RESPAWN preview.

    Helixhorned r3699 21 Apr, 12:55 FixEngineCON
    Show details

    This fixes RESPAWN preview wrongly clamping the previewed tsprite z coords to [-524288 .. 524288] (x/y limits). Also, make the previewed tsprites be 33% translucent with the option of 66% translucency by setting 'showrespawn_fulltrans' to 1 in a.m32.

  • in quick tile selection [G], if tile is nonexistent, revert it.

    Helixhorned r3698 21 Apr, 12:55 FixEngine
  • tweak the 'loaded map' message a bit.

    Helixhorned r3697 21 Apr, 12:55 FixEngine
    Show details

    - colorize the trailing part if there is corruption or (new) if sprites were removed - also corrupt-check when loading <V7 map - move start{pos,ang,sectnum} to build.c - remove pointless ...[].extra = -1 before loading map, scantoasc*[] comment

Open the build to see all 8 commits

Build 3693

17 Apr 2013 · 5 commits · 1 author SVN
Open build
  • General

    Lunatic/OS X: generate bytecode in object files from LuaJIT.

    Helixhorned r3693 17 Apr, 13:34
  • General

    osxbuild.sh: Add 'clean' preset, deleting files missed by 'make veryclean'.

    Helixhorned r3692 17 Apr, 13:34
  • General

    OS X: Pass -Wno-narrowing only with GCC 4.3+, fixing arttool build on my setup.

    Helixhorned r3691 17 Apr, 13:34 Fix
  • General

    osxbuild.sh: new option --lastrev, 'dummyhelix' preset.

    Helixhorned r3690 17 Apr, 13:34
  • General

    OS X: Write eduke32.log to ~/Library/Logs unless -usecwd is given.

    Helixhorned r3689 17 Apr, 13:34

Build 3684

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

    gameexec.c: in VM_Fall(), comment out dead code, small indentation change.

    Helixhorned r3684 15 Apr, 03:48
  • General

    TROR no-SE7 water: spawn splash, reuse calculated other sector number.

    Helixhorned r3683 15 Apr, 03:48 Engine
  • General

    Improve on the code that handles changing sectors of projectiles.

    Helixhorned r3682 15 Apr, 03:48 Engine
    Show details

    - In the A_MoveSprite() code that transports projectiles due to an SE7 (introduced in r1450 / legacy ROR), only report "success" if the transportation succeeded. - Clear newly introduced internal SPRITE_DIDNOSE7WATER flag after checking it.

  • General

    In G_MoveStandables() CRACKx handling, fix oob access of DynamicTileMap[].

    Helixhorned r3681 15 Apr, 03:48 Fix
    Show details

    Also, in two cases, don't assign A_IncurDamage() result to a variable if it's not needed.

  • General

    Fix a couple of issues identified in the preceding commit.

    Helixhorned r3680 15 Apr, 03:48 Fix
    Show details

    - In S_PlaySound(), move the sound index bound check above an indexing. - For A_CheckHitSprite(), and A_FindPlayer(), allow NULL second arg. - In A_ShootWithZvel(), make some one-letter vars be int32_t, making storing safeldist() results in them meaningful. - In MaybeTrainKillEnemies(), remove two redundant checks and move another one further up. - Comment that SIDEBOLT1 will never be translucent as was probably intended. - In G_MoveFX(), fix an always-true comparison.

Open the build to see all 8 commits

Build 3666

12 Apr 2013 · 5 commits · 1 author SVN
Open build
  • General

    In upward moving enemy code of VM_Move(), consider TROR boundaries.

    Helixhorned r3666 12 Apr, 04:59 Fix
    Show details

    This fixes liztroops not passing TROR layers when on the jetpack, as well as other enemies capable of moving upward, and also COMMANDER and DRONE (for which the code is special-cased).

  • General

    build.lua: add .sectsperbunch to map table, useful for TROR stats w/ findmaps.sh

    Helixhorned r3665 12 Apr, 04:59
    Show details

    Also, sync MAXBUNCHES to new limit in lunatic/defs_common.lua.

  • fix test.elua after map-int VX and one rename, add one microbenchmark.

    Helixhorned r3664 12 Apr, 04:59 Fix
  • General

    Mostly engine and some gameexec.c stylistic changes.

    Helixhorned r3663 12 Apr, 04:59 Engine
  • in hitscan and getzrange, skip sprites if sprite part of clipmask is 0.

    Helixhorned r3662 12 Apr, 04:59 Engine
    Show details

    ... like was done with clipmove() previously. Also, do some code clean up. There are no changes of functionality.

Build 3660

9 Apr 2013 · 4 commits · 1 author SVN
Open build
  • General

    Silence "may be used uninitialized" warning, use Batoi() for user input.

    Helixhorned r3660 9 Apr, 10:35
    Show details

    Nag: The behavoir of atoi() is *undefined* if "the value of the result cannot be represented" (C99 7.20.1). Note: my nagging about undefined behaviors will *not* get less over time. :P

  • print the "Saved board" message more persistently.

    Helixhorned r3659 9 Apr, 10:35 Engine
  • new-generation map format, in-memory representation ("map-int VX").

    Helixhorned r3658 9 Apr, 10:35 Engine
    Show details

    The Lunatic build compiles with new structures for sector and wall types. They have separate members for TROR {up,down}{bunch,nextwall}, so there are no conflicts with other uses of members into which they were previously shoehorned. Also, the maximum bunch limit is bumped to 512 in that build. Currently, loading from V7/8/9 and saving to V7 and V8 are supported.

  • move utility scripts to util/, bittest.lua -> test/test_bitar.lua.

    Helixhorned r3657 9 Apr, 10:35

Build 3656

9 Apr 2013 · 1 commit · 1 author SVN
Open build
  • fix stuff after last commits; translator: clean up -f parsing code.

    Helixhorned r3656 9 Apr, 10:34 FixCON
    Show details

    Also, implement 'cmenu' in LunaCON, make 'definequote' also allowed as inner command.

Build 3653

7 Apr 2013 · 5 commits · 1 author SVN
Open build
  • replace DukePlayer_t set-member methods with metatable magic.

    Helixhorned r3653 7 Apr, 08:20 Engine
    Show details

    So that members needing it are checked when they're assigned to using the usual syntax. What kind of check to perform (sector, player, ... x whether negative values are allowed) is written in a declarative fashion inside the C declaration. Also, make Lunatic's MAXQUOTES be C's OBITQUOTEINDEX and bound-check an access of sprite[p->wackedbyplayer] in the C code.

  • get rid of some now unneeded set-member methods, add others.

    Helixhorned r3652 7 Apr, 08:20
  • General

    a.m32: Don't reposition head light if in void space, fixing crash.

    Helixhorned r3651 7 Apr, 08:20 FixEngine
  • access to show2dsector[], fix some permit-negative bound checks.

    Helixhorned r3650 7 Apr, 08:20 Fix
  • General

    Remove useless code setting show2dwall[] or show2dsprite[], as they're unused.

    Helixhorned r3649 7 Apr, 08:20

Build 3648

5 Apr 2013 · 10 commits · 1 author SVN
Open build
  • General

    a.m32: Implement a Polymer "head light" emanating from your position in 3D mode.

    Helixhorned r3648 5 Apr, 10:53 EngineCON
    Show details

    Toggled with Ctrl+Shift+[KP-]. Variable 'headlight_range' controls its range. For the implementation, a new event EVENT_PREDRAW3DSCREEN was added.

  • General

    Factor out displaying episode ending cutscenes into G_BonusCutscenes().

    Helixhorned r3647 5 Apr, 10:53 Fix
    Show details

    Also, - retire IFWITHIN() macro, preferring expanding it - fix _endofgame() in control.lua

  • gen. cleaner code, make actor[].movflag internal, update listglobals.sh

    Helixhorned r3646 5 Apr, 10:53 CON
  • General

    Define a macro LUNATIC_EXTERN that expands to 'static' in non-Lunatic builds.

    Helixhorned r3645 5 Apr, 10:53
  • General

    Take over and use static assertion macro found in LuaJIT sources.

    Helixhorned r3644 5 Apr, 10:53
Open the build to see all 10 commits

March 2013 12 builds · 62 commits

Build 3631

31 Mar 2013 · 4 commits · 1 author SVN
Open build
  • General

    Fix playing ambient sounds at max volume for split sec on entering their range.

    Helixhorned r3631 31 Mar, 11:58 Fix
    Show details

    This is done by always calling FX_PlayAuto3D() to play such sounds. It now additionally takes a third argument 'loophow', permissible values being FX_ONESHOT and FX_LOOP.

  • General

    In 'tip' display code, extrapolate four more values of the y coord table.

    Helixhorned r3630 31 Mar, 11:58
    Show details

    Also, for tip_incs values greater or equal than the number of elements in this table, return early reporting that the hand has been drawn, so that the otherwise selected weapon is not drawn.

  • chaining of actor callback functions.

    Helixhorned r3629 31 Mar, 11:58
    Show details

    For events and actors, a flag can be now passed whether to chain the new function at the beginning or end of an already existing one, or to replace it entirely. Also, for the translator, add option -fno-error-nostate, disabled by default.

  • General

    Add rudimentary sanity checks when playing ANM files.

    Helixhorned r3628 31 Mar, 11:57
    Show details

    - Don't attempt to play an ANM file if it is empty (warn) or too short (error). - If failing to read IVF file header or initializing VPX codec, don't play ANM. - Return early from gltexapplyprops() if not in GL modes.

Build 3627

29 Mar 2013 · 5 commits · 1 author SVN
Open build
  • General

    Add some test CON files to source/lunatic/test.

    Helixhorned r3627 29 Mar, 08:59 CON
    Show details

    The code is mostly by other people, who are credited in the CON files.

  • General

    Return early from A_IncurDamage() if actor[].picnum ("htpicnum" in CON) is < 0.

    Helixhorned r3626 29 Mar, 08:59 FixCON
    Show details

    With this change, it is impossible for negative values to be used as array indices inside this function, and I believe that it is also impossible that they escape to somewhere they might be used as such. For Lunatic, allow setting actor[].picnum to negative values and in the translator, add (commented out) code to warn whenever it is set to a constant negative value. Also, fix a _sound call in _addphealth in control.lua.

  • make the crash log file named eduke32_or_mapster32.crash.log.

    Helixhorned r3625 29 Mar, 08:59 Fix
  • General

    Don't output an empty SelectedGRP entry into the cfg, fixing bare EDuke32 build.

    Helixhorned r3624 29 Mar, 08:59 Fix
  • factor out 3x computing "alwaysshowgray", but don't change anything.

    Helixhorned r3623 29 Mar, 08:59 Engine

Build 3605

24 Mar 2013 · 4 commits · 1 author SVN
Open build
  • fix assertion failure with overlong walls in rintersect().

    Helixhorned r3605 24 Mar, 11:55 FixEngine
  • General

    Lunatic translator: proper Lua->CON line mapping for actor/event/etc. headers.

    Helixhorned r3604 24 Mar, 11:55 CON
  • return early with 0 from cansee() if either sector is >= MAXSECTORS.

    Helixhorned r3603 24 Mar, 11:55 EngineCON
    Show details

    Previously, only the <0 condition was checked. However, the passed sectnums could be >= MAXSECTORS (at least in C-CON), for example when issuing 'canseespr' on a sprite not in the game world.

  • readarrayfromfile: fail silently if file can't be opened.

    Helixhorned r3602 24 Mar, 11:55 CON

Build 3601

24 Mar 2013 · 9 commits · 1 author SVN
Open build
  • simplify RETURN handling, make its behavior across events same as C-CON.

    Helixhorned r3601 24 Mar, 11:54 CON
    Show details

    There's only one RETURN value on the C side (g_RETURN), which is also referenced from Lua. Upon entering an event, its value takes on the per-event default one, and its value when the event code finishes is passed back to the game. Independently of that, its value is always saved and restored across event calls.

  • add LuaJIT's 'dump' module, printing traced bytecode, IR and mcode.

    Helixhorned r3600 24 Mar, 11:54
  • don't wrongly report PANIC corruption with MAXSPRITES sprites present.

    Helixhorned r3599 24 Mar, 11:53 FixEngine
  • General

    Lunatic t.: don't error on changing stat/sect of sprite not in the game world.

    Helixhorned r3598 24 Mar, 11:53 Engine
  • actor usertypes from CON, set SFLAGs as 2nd gameactor() arg in Lua.

    Helixhorned r3597 24 Mar, 11:53 FixCON
    Show details

    In passing, fix a couple of omissions: gameactor() being passed nil's in the middle, more than one moveflag to CON *actor.

Open the build to see all 9 commits

Build 3592

21 Mar 2013 · 4 commits · 1 author SVN
Open build
  • General

    premap.c: fix oob access of tagbitmap[] with formerly negative lo-/hitags.

    Helixhorned r3592 21 Mar, 03:20 Fix
    Show details

    Also, allocate that array dynamically instead of on the stack.

  • make ivec3 and dvec3 types share same metatable, orthogonalize API.

    Helixhorned r3591 21 Mar, 03:20
    Show details

    Specifically, remove ivec3's blen1() method and add from/to BUILD coordinate (z scaled by 16) conversion methods.

  • slightly cleaner weapondata_t access.

    Helixhorned r3590 21 Mar, 03:20
    Show details

    Also, for the embedded translator: don't warn on unrecognized command line opt.

  • General

    Clean up mdsprite.c:voxdraw() a little.

    Helixhorned r3589 21 Mar, 03:20

Build 3588

21 Mar 2013 · 6 commits · 1 author SVN
Open build
  • General

    Clean up mdsprite.c:md3draw() by factoring out m->head.flags == 1337 check.

    Helixhorned r3588 21 Mar, 03:20
    Show details

    ... into a macro MFLAGS_NOCONV(m). Since it currently expands to (0), some dead code will be eliminated. Introduce a "compilation option" macro DO_MD2_MD3_CONV in mdsprite.c.

  • General

    Clean up mdsprite.c:md3draw() by factoring out spriteext[tspr->owner] access.

    Helixhorned r3587 21 Mar, 03:19
  • General

    Make -testlua accepted (but ignored) in non-Lunatic build.

    Helixhorned r3586 21 Mar, 03:19
    Show details

    So that it doesn't result in the -t (respawn on) command line switch.

  • General

    Clean up mdsprite.c:md3draw() by tightening locals, factoring out 2x dup code.

    Helixhorned r3585 21 Mar, 03:19
  • give sprite cstat 1024 a marco name, CSTAT_SPRITE_MDHACK.

    Helixhorned r3584 21 Mar, 03:19 Engine
Open the build to see all 6 commits