EDuke32 Changelog Archivio non ufficiale

Cosa è cambiato in EDuke32, build per build

2.117 build · 8.866 commit · 25 autori · Ottobre 2009 – Agosto 2026

Commit per anno

Seleziona un anno per vederne le build
Era SVN · r1519 – r8798 Era Git · voidpoint.io, da aprile 2020
Filtri · 1 attivi

Visualizzate 1.043 build · 2.174 commit

Esporta CSV
Opzioni di visualizzazione
Dettagli dei commit:

Novembre 2012 19 build · 32 commit

Build 3231

25 nov 2012 · 8 commit · 1 autore SVN
Apri la build
  • Generale

    Misc. engine cleanups, no functional changes.

    Helixhorned r3229 25 nov, 05:19 Engine
  • Generale

    engine.c: factor out 2 pract. ident. pieces of code into try_facespr_intersect.

    Helixhorned r3228 25 nov, 05:18 Engine
    Mostra dettagli

    The two uses are from hitscan and neartag. The functionality is reproduced exactly (assuming I made no mistake), down to different distance checking (<= vs. <).

Apri la build per vedere tutti i 8 commit

Build 3223

25 nov 2012 · 4 commit · 1 autore SVN
Apri la build
  • Generale

    RENDERTYPE=SDL on Windows, part 2.

    Hendricks266 r3221 scritto il 24 nov 2012 Engine
    Mostra dettagli

    This introduces winbits.[ch] in the engine, containing layer-independent code migrated from winlayer, including nedmalloc, ebacktrace1, OS version detection, and high-resolution profiling timers. sdlayer has been expanded to include the code from winbits under _WIN32. All uses of RENDERTYPEWIN in the source have been examined and changed to _WIN32 (or removed) where the block in question is layer-independent.

Apri la build per vedere tutti i 4 commit

Build 3212

18 nov 2012 · 3 commit · 1 autore SVN
Apri la build
  • Generale

    Remove many redundant (int16_t) casts and one now incorrect one.

    Helixhorned r3211 18 nov, 11:01 FixEngine
    Mostra dettagli

    The redundant ones are in code like this: s->cstat = (int16_t)32768; Because the value is eventually converted to the type of "s->cstat", any casts to integral types having at least as many bits are no-ops, signedness being irrelevant due to (probably any two's complement arch targeting compiler's) bit-pattern preserving semantics of these conversions. The now incorrect one is: if (lotag == (int16_t) 65535), "int32_t lotag" being read from a wall or sprite struct directly earlier. Now, with these members being unsigned, and (int16_t)65535 equalling -1, the check always fails. The correction fixes normal switches having such a lotag ending the level immediately. In short: integer casts before assignments are unnecessary, those in reads highly relevant!

Apri la build per vedere tutti i 3 commit

Build 3207

17 nov 2012 · 7 commit · 1 autore SVN
Apri la build
  • Generale

    Engine cleanup: factor out code getting bounds of sprites.

    Helixhorned r3207 17 nov, 11:46 Engine
  • Generale

    Clean up base engine functions: tighten scope of locals declarations.

    Helixhorned r3206 17 nov, 11:46 Engine
  • Generale

    Clean up engine code by factoring repeated 3-liners into spriteheightofs().

    Helixhorned r3205 17 nov, 11:46 Engine
    Mostra dettagli

    This function also changed: it doesn't handle floor-aligned sprites now, and the z offset is returned instead of set by pointer.

  • fix cycling picnum in 3D mode.

    Helixhorned r3203 17 nov, 11:46 FixEngine
    Mostra dettagli

    Using non-keypad [-]/[+] or LMB + mousewheel, it was broken when a void tile was in between.

Apri la build per vedere tutti i 7 commit

Build 3192

15 nov 2012 · 1 commit · 1 autore SVN
Apri la build
  • Generale

    Add "ulotag" and "uhitag" to get/setactor/wall/sector, which exposes the tags unsigned, without the typecast to int16_t. This might be useful to someone.

    TerminX r3192 15 nov, 16:54 EngineCON

Build 3189

15 nov 2012 · 5 commit · 1 autore SVN
Apri la build
Apri la build per vedere tutti i 5 commit

Build 3183

15 nov 2012 · 19 commit · 1 autore SVN
Apri la build
  • Fix clipboard tile display in 3D mode.

    Helixhorned r3183 15 nov, 06:28 FixEngine
  • Generale

    Split r3159..r3161, part 13: Poly{mer,most}, engine changes.

    Helixhorned r3179 15 nov, 06:28 Engine
  • Generale

    Split r3159..r3161, part 6: code conditional on __cplusplus.

    Helixhorned r3172 15 nov, 06:28 Engine
    Mostra dettagli

    Note the type change of vplce[] in engine.c: int32_t -> uint32_t.

Apri la build per vedere tutti i 19 commit

Build 3164

14 nov 2012 · 3 commit · 1 autore SVN
Apri la build
  • Generale

    Tools updates:

    Hendricks266 r3163 14 nov, 22:42 FixEngine
    Mostra dettagli

    - Eliminate use of the C++ standard library from arttool. I improved some of the program's workings but it continues to corrupt my art files in certain circumstances. (Note: Not a regression; it happens with previous revisions.) - Construct "make utils" for the game side following the pattern of the engine. - Move ivfrate to this new distinction. - Minor Makefile cleanup and tweaks, mainly to facilitate CLANG=1 and to formalize text output in special cases.

Apri la build per vedere tutti i 3 commit

Build 3161

14 nov 2012 · 3 commit · 1 autore SVN
Apri la build
  • Generale

    Fix the warnings when building with C++, add MSVC C++ build support. This also changes the internal type of lotags, hitags and cstat type fields to uint16_t instead of int16_t to clean up some dubious behavior wherein the code was using a value of 32768 as a flag in these fields for certain types of things, like invisible sprites (using the value as if it was uint16_t) where it was elsewhere checking if the value was < 0 (using the value as if it was int16_t). This change may break a few specific effects if any part of the relevant code was missed when looking for areas that needed to be addressed.

    TerminX r3159 14 nov, 15:32 FixEngineCON
    Mostra dettagli

    I think there's also a fix for the CON precache system breakage in here (lost it in my local tree when I started getting the C++ build working in MSVC, sorry!)

Apri la build per vedere tutti i 3 commit

Build 3148

10 nov 2012 · 2 commit · 1 autore SVN
Apri la build
  • Generale

    Lunatic reorganization part 2: split into engine and editor/game parts.

    Helixhorned r3148 10 nov, 12:59 Engine
    Mostra dettagli

    On the engine side (functions starting with L_), there are now the basic parts like state creation and running code from strings and files. The game and editor can add to that by e.g. loading whatever they please into the state. Their functions start with El_ and Em_, respectively. The Lua scripts still reside in source/lunatic, even for the common ones. This is because they will be embedded into the binaries as bytecode or compressed source eventually, so their location on disk will be irrelevant.

Apri la build per vedere tutti i 2 commit

Build 3146

10 nov 2012 · 5 commit · 1 autore SVN
Apri la build
  • Generale

    Clean up texture loading code etc. in polymost.c, no functional changes.

    Helixhorned r3146 10 nov, 06:11 Engine
  • fix rotatesprite with no screen scaling and non-widescreen aspects.

    Helixhorned r3144 10 nov, 06:11 FixEngine
    Mostra dettagli

    Also, enable showing sprites in Mapster32's overhead view again, since that was one (the only?) use of that code path. The uninitialized read was introduced in r2927.

  • Generale

    When found a camera sprite for viewscreen, set position etc. immediately.

    Helixhorned r3142 10 nov, 06:11 FixEngine
    Mostra dettagli

    Instead of later in P_ProcessInput(). This fixes one drawrooms() call in between where the sectnum is the camera's, but the position the player's, which can lead to a slow "outer view" render in Polymer.

Apri la build per vedere tutti i 5 commit

Build 3138

9 nov 2012 · 1 commit · 1 autore SVN
Apri la build
  • Generale

    Add automatic tracking to the sector[], wall[], sprite[] and tsprite[]

    Plagman r3138 9 nov, 14:31 FixEngine
    Mostra dettagli

    arrays; any write access to them will run the corresponding hook and write to the [sector/wall/sprite/tsprite]clean array. Note: tsprite and sprite use the same hook and require running a few more instructions per access in order to disambiguiate; this could be made more optimal (like the other arrays) by clearly separating the types in the game code. Note #2: taking a member's address currently marks it dirty because of tons of helper functions across the editor code. I don't know how many read-only accesses we have after taking a member address, but it could also be fixed with some finessing of the code.

Build 3118

4 nov 2012 · 3 commit · 1 autore SVN
Apri la build
  • Generale

    Work-in-progress adjustment to the C code to compile under C++. It builds for me without errors using Win32 MinGW-GCC, but it still generates warning soup. No guarantees about MSVC or anything using SDL. Enable C++ by building with CPLUSPLUS=1. C remains the default and should compile with no change in setup.

    Hendricks266 r3116 4 nov, 18:49 Engine
    Mostra dettagli

    Credit to Plagman for the idea and doing the work on the game side, which is included in this commit. (Building as C++ will give us features with which we can make improvements and optimizations on the multiplayer code and Polymer.)

Apri la build per vedere tutti i 3 commit

Build 3114

4 nov 2012 · 3 commit · 1 autore SVN
Apri la build
  • Generale

    engine.c: add bound-check assert failing for sprites in m32's textured 2D mode.

    Helixhorned r3114 4 nov, 15:03 Engine
    Mostra dettagli

    Also, disable drawing sprites in that mode for now.

  • functionality to rotate or scale RShift-highlighted stuff smoothly.

    Helixhorned r3113 4 nov, 15:03 Engine
    Mostra dettagli

    This is done by pressing LShift and - holding down the left mouse button for scaling, or - the right mouse button for rotating the highlighted walls/sprites with respect to a pivot point determined as the center of the bounding box of all highlighted points. Note that scaling sectors isn't that easy and the current functionality is very rudimentary: there's no z scaling, no xrepeat correction, and sprites aren't touched expect for their position. The user is responsible to maintain map consistency, for example to prevent wall-lines of the same sector crossing each other.

  • when looking for matching wall in 2nd pt. ins., don't skip gray nextwalls.

    Helixhorned r3112 4 nov, 15:03 FixEngine
    Mostra dettagli

    This fixes a bug where it's not possible to split a sector under certain circumstances, reported by Micky C here: http://forums.duke4.net/topic/1348-mapster32-problems-and-bugs/page__view__findpost__p__138380 Also, don't allow zero in various 'F functions: Resize selection and Global {shade, visibility} divide.

Build 3111

3 nov 2012 · 6 commit · 1 autore SVN
Apri la build
  • Generale

    Work around the transparent line with on-screen chaingun and linear filtering.

    Helixhorned r3111 3 nov, 12:32 Engine
    Mostra dettagli

    We do this by messing with the GL texture that gets uploaded for CHAINGUN. Since this is implemented on the engine side, the static value for CHAINGUN (2536) is used, and the tile dimensions are compared to 211x55 to have a little confidence that the tile wasn't overridden by a mod. Hack indeed.

  • draw lines to linking sprites with LShift, jump to them with +[ or +]

    Helixhorned r3108 3 nov, 12:32 FixEngine
    Mostra dettagli

    When LShift is pressed and the mouse is over a linking sprite (as determined by the tag labeling system), lines are drawn to all other sprites, and pressing [ or ] will cycle these then. False positives and missed sprites are possible. Additional changes: - consider SE 31 and 32's lotag to NOT be linking, since the ACTIVATOR is what matters. The original maps are inconsistent there. - When pressing Alt+[ or Alt+] and there are no corruptions, say so instead of doing [ or ].

  • when punching loop, fade screen; tweak two messages.

    Helixhorned r3106 3 nov, 12:32 Engine
Apri la build per vedere tutti i 6 commit

Ottobre 2012 9 build · 19 commit

Build 3101

28 ott 2012 · 6 commit · 1 autore SVN
Apri la build
  • Generale

    Two new player structure members: "autostep" and "autostep_sbw".

    Hendricks266 r3100 28 ott, 21:29 Engine
    Mostra dettagli

    These control the maximum difference in height between two sectors that the player will automatically traverse without needing to jump. The latter controls the special case when the player's sector's lotag is ST_1_ABOVE_WATER or p->spritebridge == 1. BYTEVERSION bumped.

  • Generale

    Slight makefile reorganization and cleanup.

    Hendricks266 r3096 28 ott, 21:26 Engine
    Mostra dettagli

    * Centralize optimization strategies in Makefile.common. This required moving detection of $(PLATFORM), which makes sense if we work on the paradigm that Makefile.common is for generic compiler setup and Makefile.shared works with libraries and things closer to the engine and game code itself. * New Makefile variables OPTOPT (Optimization Options) and CUSTOMOPT (Custom Optimizations). OPTOPT by default contains -march, -mtune, etc. Setting this variable from Make invocation will blank these. CUSTOMOPT (Custom Optimizations) works the same but in an additive fashion, overwriting nothing. Technically CUSTOMOPT could stand for (Custom Options) and include any additional parameters sent to both linker and compiler. * Factor out literal names of the main executables. * The build process now prints assembler (if NOASM=0) and linker settings in addition to compiler settings.

Apri la build per vedere tutti i 6 commit

Build 3094

24 ott 2012 · 1 commit · 1 autore SVN
Apri la build
  • Generale

    Comment out the A_GetZLimits() call right before the Bassert() in A_MoveSprite(). This call is a problem because the assertion expects "dasectnum" and spr->sectnum to match, but A_GetZLimits() can itself call A_SetSprite() which results in another call to A_MoveSprite() and can potentially change the sectnum again.

    TerminX r3094 24 ott, 06:21 Engine
    Mostra dettagli

    This commit also adds the NOTELEPORT sprite flag, which of course prevents sprites from teleporting.