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:

Febbraio 2015 9 build · 16 commit

Gennaio 2015 10 build · 20 commit

Build 4938

18 gen 2015 · 3 commit · 1 autore SVN
Apri la build
  • Generale

    engine.c: in qsetmodeany(), call initsmost() after setting xdim and ydim.

    Helixhorned r4938 18 gen, 17:54 Engine
    Mostra dettagli

    This makes sure that the engine arrays have sufficient space allocated for usage in Mapster32's 2D mode, for example from drawmapview().

  • fix build and linking. DONT_BUILD.

    Helixhorned r4937 18 gen, 16:11 FixEngine
    Mostra dettagli

    - t{sector,wall}type are simply typedef'd to the non-t versions - make FORCE_INLINE unconditional of DISABLE_INLINING (otherwise there are multiple definitions of these functions) - update lunatic/doc/lpeg-lunatic.patch to apply against the LPeg 0.12 I just downloaded

Apri la build per vedere tutti i 3 commit

Build 4935

18 gen 2015 · 7 commit · 2 autori SVN
Apri la build
  • remove unused key* options in mapster32.cfg and corresponding BK_* macros. DONT_BUILD.

    Helixhorned r4934 18 gen, 14:11 Engine
  • Generale

    polymost.c: fix possible access of wallchanged[-1]. DONT_BUILD.

    Helixhorned r4932 18 gen, 12:28 FixEngine
  • Generale

    engine.c: fix memory leak. DONT_BUILD.

    Helixhorned r4931 18 gen, 12:22 FixEngine
  • Generale

    polymost.c: fix C build. DONT_BUILD.

    Helixhorned r4930 18 gen, 12:21 FixEngine
Apri la build per vedere tutti i 7 commit

Build 4904

10 gen 2015 · 7 commit · 1 autore SVN
Apri la build
  • fix wall and floor sprites clipping into or z-fighting with surfaces (replaces glDepthRange() hacks for sprites), add r_nofog cvar for debugging, reduce the total number of OpenGL calls by only calling glFogi() to set the fog mode when initializing the renderer or changing r_usenewshading.

    TerminX r4904 10 gen, 20:56 FixEngine
  • Generale

    Introduce "twalltype" for temporary uses of walltype where using wall_tracker_hook() would be invalid. This is similar to "tspritetype" and fixes a bunch of problems in the editor that cropped up when changing the tracker sanity checks to an assert that only exists in debug builds (branching upon any write to a sprite, sector or wall had an unacceptable impact on performance).

    TerminX r4903 10 gen, 20:56 FixEngine
  • Generale

    Fix Mapster32 bug where pressing "O" on a sprite twice would corrupt your map due to unchecked use of hitscan results.

    TerminX r4901 10 gen, 20:55 FixEngine
  • Generale

    Revise C++ structure trackers for performance and introduce "tspritetype", for temporary sprites or other usages where using the trackers would be invalid or undesired. DONT_BUILD.

    TerminX r4898 10 gen, 20:55 Engine
Apri la build per vedere tutti i 7 commit

Build 4881

6 gen 2015 · 2 commit · 1 autore SVN
Apri la build
  • Generale

    engine.c: on non-touch devices, roughly double maximum voxel drawing distance.

    Helixhorned r4881 6 gen, 11:56 Engine
    Mostra dettagli

    By setting DISTRECIPSIZ to 131072, as far as I can see the absolute maximum that's possible with the integer scaling convention of the voxel drawing code. BUILD_LUNATIC.

  • make sprite duplication examples in m32script_ex.map work again.

    Helixhorned r4880 6 gen, 11:56 Engine
    Mostra dettagli

    - Work around a sequencing issue (assignment of searchstat) in M32_DrawRoomsAndMasks() - When having sprites highlighted and changing shade, since r1943 change every highlighted sprite's shade if one of them is aimed at. With this revision, if SHIFT is pressed while doing that, only change the aimed at sprite's shade - a.m32: Use 'break' from a state instead of 'return'. The former may be "sticky" in a way that is not intended. Needs to be debugged later. - Update instructions in m32script_ex.map DONT_BUILD.

Build 4877

4 gen 2015 · 2 commit · 1 autore SVN
Apri la build
  • Generale

    engine.c: prevent multiple collection of same sector in scansector().

    Helixhorned r4877 4 gen, 10:45 Engine
    Mostra dettagli

    Also for polymost_scansector(). These were likely of little consequence because collection in scansector() is the exception than the rule (see added comments), and because the redundant drawwalls() would find the x range done the second and following times. Also, add a bound check for sectorborder[] (the limit was probably rarely hit in practice, but the check is mandatory nontheless) and add functions printscans() and printbunches() in the DEBUGGINGAIDS=2 build.

  • Generale

    engine.c: in drawmasks(), remove sorting sprites by statnum.

    Helixhorned r4876 4 gen, 10:45 Engine
    Mostra dettagli

    There were various issues with that code. - It does not seem to be very meaningful to do so. - It was carried out on the same range as the sprites sorted by z coordinate (those with equal x/y) just a few lines away, effectively overriding it. The former is very meaningful, though. - It led to inconsistencies between editor and game, see http://forums.duke4.net/topic/775-eduke32-20-and-polymer/page__view__findpost__p__214873

Build 4875

4 gen 2015 · 2 commit · 1 autore SVN
Apri la build
  • Generale

    Cleanup of various engine functions.

    Helixhorned r4875 4 gen, 10:45 Engine
    Mostra dettagli

    - factor out calculation of player-relative and screen+clipped-player-relative coordinates into get_rel_coords() and get_screen_coords(), respectively - the usual beautification stuff, especially since we're now on C99

  • CON

    always return non-negative values from 'clipmove' and related.

    Helixhorned r4874 4 gen, 10:44 FixEngineCON
    Mostra dettagli

    Previously, the C function clipmove() returned negative values when hit a wall (32768+wallnum) or sprite (49152+spritenum) because internally, these values were encoded into a *signed* 16-bit integer. This made no difference to C code using it, since it always proceeded by bit checks, but was inconsistent with documentation on CON 'clipmove' on the wiki. The following commands are affected too, since they use the value returned by clipmove(): 'clipmovenoslide', 'movesprite'. Also, the value of actor[].movflag ('htmovflag' from CON). Also, fix 'clipmove*' in LunaCON and add lunatic/test/checknearwall.con as an example of how to implement a being-close-to-a-wall checker as requested in http://forums.duke4.net/topic/7869-determining-closeness-to-a-wall/

Dicembre 2014 7 build · 19 commit

Build 4873

30 dic 2014 · 2 commit · 1 autore SVN
Apri la build
  • Generale

    engine.c: fix clipmove() against floor-aligned sprites.

    Helixhorned r4873 30 dic, 12:05 FixEngine
    Mostra dettagli

    Introduced in r3207. Oops.

  • Generale

    engine.c: prevent an oob read of spriteext[] in drawsprite_classic().

    Helixhorned r4872 30 dic, 12:05 Engine

Build 4857

27 dic 2014 · 13 commit · 2 autori SVN
Apri la build
  • disable all loop checks as they spam the log too much. DONT_BUILD.

    Helixhorned r4848 27 dic, 09:17 Engine
    Mostra dettagli

    The one introduced with r4569.

  • Generale

    Propagate 'smoothratio' to scenes drawn from the position of a camera.

    Helixhorned r4847 27 dic, 09:17 Engine
    Mostra dettagli

    That is, make interpolation work properly there -- both when 'using' a VIEWSCREEN and when rendering the scene onto a TILE_VIEWSCR. This makes a difference only if the camera is in a moving sector.

  • Generale

    Minor cleanup, mostly in engine.c:drawalls().

    Helixhorned r4846 27 dic, 09:17 Engine
Apri la build per vedere tutti i 13 commit

Build 4844

26 dic 2014 · 11 commit · 1 autore SVN
Apri la build
  • Generale

    Tweak the behavior of viewscreens to what is more logical IMO.

    Helixhorned r4843 26 dic, 09:30 FixEngine
    Mostra dettagli

    - At a given time, at most one viewscreen may display TILE_VIEWSCR, namely that one which is g_curViewscreen - sync kinds of distance to compare against VIEWSCREEN_ACTIVE_DISTANCE (was Manhattan vs. dist(), now both the latter) - fix resetting to VIEWSCREEN tile when player is greater from it than that distance. When the player is closer to it again, it is *not* reset to TILE_VIEWSCR. - more sync'd g_curViewscreen and sprite[i].yvel (for 'i' being the viewscreen sprite) Note: in a multiplayer context, this needs to be thought about once more.

  • Generale

    engine.c: clamp all indices for distrecip[] access, as more OOBs were observed.

    Helixhorned r4842 26 dic, 09:29 Engine
  • Generale

    Convert voxels to models only when starting or changing to Polymost.

    Helixhorned r4836 26 dic, 09:29 Engine
    Mostra dettagli

    Analogously to the way models are processed in a deferred manner for Polymer.

  • Generale

    A couple of miscellaneous cleanups.

    Helixhorned r4835 26 dic, 09:29 Engine
    Mostra dettagli

    defs.c: sync some dup'd code for 'definevoxel' and 'voxel' DEF tokens. engine.c: factor out PolymerProcessModels().

  • Generale

    engine.c: style-cleanup drawvox(). Also clean up ALL of voxmodel.c.

    Helixhorned r4834 26 dic, 09:29 Engine
    Mostra dettagli

    No deliberate semantic changes here.

Apri la build per vedere tutti i 11 commit

Build 4833

21 dic 2014 · 5 commit · 1 autore SVN
Apri la build
  • include wall[].ypanning in wall invalidation logic.

    Helixhorned r4833 21 dic, 07:51 FixEngine
    Mostra dettagli
  • Generale

    Minor cleanup around security cameras / viewscreens. DONT_BUILD.

    Helixhorned r4831 21 dic, 07:51 Engine
    Mostra dettagli

    The only semantic change is that an out-of-sync instance of a distance to check (viewscreen sprite <-> player sprite) is changed in actors.c:G_MoveStandables(), from 2048 (as in Duke3D 1.5) to 8192, now represented by the define VIEWSCREEN_ACTIVE_DISTANCE. I have not yet observed any change in behavior regarding this change (but there ought to be one). Also, in DNCOORDS display, print 'totalclock' count, too.

  • don't draw masked walls with void tile. DONT_BUILD.

    Helixhorned r4830 scritto il 20 dic 2014 Engine
    Mostra dettagli

    This prevents displaying W_FORCEFIELD+1 masks (as e.g. in front of viewscreens) completely black with ART mapping. The old behavior, which is inconsistent with classic, is kept for one-sided masked walls, though.

Apri la build per vedere tutti i 5 commit

Build 4814

13 dic 2014 · 14 commit · 2 autori SVN
Apri la build
  • Generale

    Pull setting g_noFloorPal[] further down, into makepalookup().

    Helixhorned r4812 13 dic, 14:33 Engine
    Mostra dettagli

    Now passed as last arg 'noFloorPal' to makepalookup(). Used as follows: - from loadlookups(): *false*, i.e. do take over floor pal. - from generatefogpals() [default fog pals] and fillemptylookups(): *true*, i.e. don't take over floor pal - from DEF 'fogpal': true - from DEF 'makepalookup': take over flag from pal from which we are remapping, or set to true if remapping from pal 0 - (CROSSHAIR_PAL: true) This should make the issue reported in http://forums.duke4.net/topic/775-eduke32-20-and-polymer/page__view__findpost__p__197583 resolve in a natural manner.

  • Generale

    Move g_noFloorPal[] to the engine side and adapt other stuff accordingly.

    Helixhorned r4811 13 dic, 14:33 Engine
    Mostra dettagli

    - 'nofloorpalrange' DEF token: now handled for both game and editor (for the latter, it's effective only for "shade preview" mode, [']+[X]). - in generatefogpals(), assign g_noFloorPal[] = 1 for every generated (default) fog pal; get rid of its return value / g_firstFogPal

  • Generale

    engine.c: prevent an oob access of uwall[] in ceilspritescan().

    Helixhorned r4810 13 dic, 14:33 Engine
  • Generale

    engine.c: style tweaks (tighter var. declaration) in sprite drawing functions.

    Helixhorned r4809 13 dic, 14:32 Engine
Apri la build per vedere tutti i 14 commit

Build 4800

6 dic 2014 · 1 commit · 1 autore SVN
Apri la build
  • Generale

    voxmodel.c: fix Polymost rendering of voxels.

    Helixhorned r4800 6 dic, 13:05 FixEngine
    Mostra dettagli

    This reverts/corrects two semantic changes of r4639 as far as what is now voxmodel.c (formerly part of mdsprite.c) is concerned. One correction ends up having no effect (m->bscale is always 1.f for voxel models, as far as I can see), but is the proper rewrite. Also, in osdcmds.c:registerosdcommands(), tweak two help strings.

Novembre 2014 2 build · 13 commit

Build 4777

28 nov 2014 · 81 commit · 3 autori SVN
Apri la build
  • Generale

    Fix POLYMER=0 GTK C++ build. DONT_BUILD.

    Hendricks266 r4773 28 nov, 18:29 FixEngine
  • Generale

    Fix POLYMER=0 build and a couple of unused-variable warnings with it. DONT_BUILD.

    Helixhorned r4764 scritto il 25 nov 2014 FixEngine
  • Generale

    engine.c: in wallscan(), fix oob of umost[] and dmost[] when x2 == xdim-1.

    Helixhorned r4757 scritto il 22 nov 2014 FixEngine
    Mostra dettagli

    Analogously treat maskwallscan() and transmaskwallscan(), although I could not get the respective accesses to be oob, too.

  • Generale

    Fix Mapster32 fullscreen video modes. DONT_BUILD.

    TerminX r4740 scritto il 22 nov 2014 FixEngine
  • Generale

    Fix voxels in classic -- my error, confusing divscale() and mulscale() in r4576.

    Helixhorned r4728 scritto il 6 nov 2014 FixEngine
    Mostra dettagli

    Optimizations are left to the reader :P. I would prefer to look for ways of giving the compilers hints about loops to unroll instead of having to read the resulting mess of manual unrolling, though.

Apri la build per vedere tutti i 81 commit