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

Visualizzati 8.866 commit

Esporta CSV
Opzioni di visualizzazione
Dettagli dei commit:

Maggio 2012

  • Generale

    Alternate implementation of EVENT_SOUND that better covers all hard coded sounds (menus, boss recognition sounds, etc)

    TerminX r2659 17 mag, 10:33 Build 2659 CON
  • Generale

    Fix breakage of EVENT_WEAPKEYx after r2656

    TerminX r2658 17 mag, 10:23 Build 2659 FixCON
  • Generale

    "Band-aid" fix for the issue with EDuke32 and Mapster32 visually locking up but continuing to run and play sounds after alt+tabbing away for a few seconds on Windows Vista/7. This may screw something else up, so please test thoroughly.

    TerminX r2657 17 mag, 10:19 Build 2657 FixEngine
  • Generale

    This should hopefully fix the disaster with events caused by my last couple of commits ;)

    TerminX r2656 15 mag, 17:45 Build 2656 Fix
  • Generale

    Fix a potential issue with nested event execution

    TerminX r2655 15 mag, 16:39 Build 2655 Fix
  • Generale

    Another one line DynamicTileMap[x] -> DYNAMICTILEMAP(x) change from Helix that got obliterated during svn change merging. Fixing this changes nothing in builds with DYNTILEREMAP_ENABLE defined, so this change isn't meaningful to anyone who isn't recompiling the game to work on a low memory device or something of that nature.

    TerminX r2654 15 mag, 07:12 Build 2654 Fix
  • Generale

    1 line fix for a change that accidentally got reverted when merging newer svn updates into an older local branch

    TerminX r2653 14 mag, 15:45 Build 2653 Fix
  • Generale

    Addition of 3 events:

    TerminX r2652 14 mag, 11:12 Build 2652 FixEngineCON
    Mostra dettagli

    EVENT_SOUND: triggered upon playback of any sound, this allows the "hard coded" sounds to be altered in a context-aware fashion instead of having to resort to clunky hacks like replacing them with a blank sound effect. RETURN var iable is set to the sound effect # of the sound to be played, or -1 to cancel playback. EVENT_CHECKTOUCHDAMAGE: triggered in P_CheckTouchDamage() whenever the player collides with anything. Value of RET URN is set to the result provided by clipmove() and so can be decoded in the same way. Value of RETURN when the event is over can also be manipulated to control some of the hard coded damage effects. EVENT_CHECKFLOORDAMAGE: triggered in P_CheckFloorDamage(), RETURN is simply the picnum of the floor of the sector t he player is in. Can be used to cancel hard coded floor damage effects or to make other tiles exhibit the same eff ects Other misc fixes and cleanups, including a possible workaround for Duke Plus SECTOREFFECTOR light issues wherein all SE49 and SE50 that have a statnum of STAT_EFFECTOR are simply changed to STAT_LIGHT during the STAT_EFFECTOR loop now.

  • Generale

    Add tilenum bound check to CON *actor blocks when parsing, fix the other ones.

    Helixhorned r2651 13 mag, 09:05 Build 2651 FixCON
    Mostra dettagli

    The remaining checks now "continue;" when an oob tilenum is found where an oob access would ensue else. Also, it's now checked for negative numbers (the message remains the same though).

  • embed lpeg and the translator into the binary

    Helixhorned r2650 13 mag, 09:05 Build 2651
  • Generale

    Lunatic translator: better line numbering

    Helixhorned r2649 13 mag, 09:04 Build 2651
  • better initial environment setup, preventing textual repetitions

    Helixhorned r2648 13 mag, 09:04 Build 2651
  • Generale

    Take care of fullscreen tinting not being stuck on the least-intense value.

  • Generale

    Assign light SEs (lotags 49 and 50) to an exclusive status number. EXPERIMENTAL!

    Helixhorned r2646 6 mag, 14:01 Build 2646 FixEngineCON
    Mostra dettagli

    The primary reason for doing this is that handing of moving sectors is significantly simplified. Because moving sectors usually don't move containing SEs/effector-statnum sprites, no special handing code is needed to move light SEs with them. Thus, this commit sets light SEs to a new statnum when they're spawned *from premap*, and a new G_Move*-like function (called G_DoPolymerLights) is added to process every sprite in that status list. This should "fix" light SEs moving together with a variety of moving sectors, but CON programs expecting the old behavior may break, therefore this commit is marked as experimental. Additionally, a problem with the old implementation is identified: it seems like the correct functioning is dependent upon the order of processing between the sector movement effector and the light SE, so this makes it another good reason for the change. (A third one is that all lights can be processed with a per- statnum loop, but CON coders should not do this until the change is considered final).

  • Generale

    A couple of misc. Wii changes.

    Helixhorned r2645 6 mag, 13:23 Build 2645 FixEngine
    Mostra dettagli

    - Make MAXXDIM and MAXYDIM macros be 860 and 490, respectively. tueidj says max. screen size is 848x480, but there are oob access bugs in the classic renderer when running with the maximum possible resolution - don't allocate additional sector/wall storage for Mapster (saves ~16k) - Add ud.config.UseJoystick = 1 in config.c, but make it conditional on Wii - remove one comment I no longer believe true, add one TODO comment

  • Generale

    Lunatic translator: a bit more syntax

  • Generale

    Factor out almost all instances of setting ...->pals.[rgbf] into P_PalFrom.

    Helixhorned r2643 5 mag, 15:24 Build 2643 CON
    Mostra dettagli

    This is so that it may be intercepted in the future. The only code that's not replaced by the function call is with the CON interface to g_player[].ps->pals via player[].pals X and .pals_time. Also, comment out one instance because it's overwritten by a succeeding one.

  • Generale

    In game code, replace remaining literal status numbers by their defines.

  • Generale

    Prevent an (unlikely) integer overflow in neartag with huge switch sprites.

    Helixhorned r2641 5 mag, 15:24 Build 2643 FixEngine
  • Generale

    Remove the 'inline' qualifier of some (not-so) short functions.

    Mostra dettagli

    Besides being the compiler's job nowadays, they significantly inflate the size of the debugging builds.

  • Generale

    Accumulated trivia, mostly "the usual".

    Helixhorned r2639 5 mag, 15:23 Build 2643 Engine
    Mostra dettagli

    Among other things, comment out very seldomly (or not at all) used sprite member macros: SV, ZV, RX, RY, CX, CY, CD, PL.

  • Generale

    Make the GAMMA_CALC macro use double instead of float and use it in menus.c.

  • Generale

    Add bit 16 to the two main setbrightness() users, add bit 2 to one of them.

    Helixhorned r2637 5 mag, 15:22 Build 2643 EngineCON
    Mostra dettagli

    (I.e. also restore r2232 again.) The first one is the palette restore logic in G_DisplayRest, the second is CON setgamepalette, to which the "don't gltexinvalidateall()" bit is added to mimic the first. Hightile invalidations aren't really useful for anything other than reloading them after a video mode change, IMO. These changes mean that 1) active full screen tints should (almost) always be kept with a basepal change. The only exceptions to this are when tints really have to be cleared, e.g. when changing the player view in co-op play. 2) there should be no performance issues with simultaneously changing basepals while a tint is applied

  • Generale

    Tweak the conditions under which setbrightness() invalidates GL textures.

    Helixhorned r2636 5 mag, 15:22 Build 2643 FixEngineCON
    Mostra dettagli

    Previously, we checked whether the faded palette has changed (by way of CRC) and invalidated the textures then unless the preserve flags were set. This however could lead to wrongly invalidating them under unfortunate circumstances, e.g. basepal change from CON + tints at the same time before r2620 which reverted r2232. Now, only invalidate them if the corresponding preserve flags are clear AND * the base palette has really changed OR * the palette CRC changed and we were running on software gamma The latter means that performance-killing invalidations may still happen on GL platforms lacking HW gamma (for ATI, it's currently only disabled in 8-bit fullscreen). Also have a new global 'basepalreset' to fake a basepal change for setbrightness(), currently used when changing renderers so that going from Polymer to Polymost and back again will invalidate the Polymer textures on the second change, potentially re-applying a basepal highpal. (Still with me?)

  • Generale

    Gray out CONTRAST and BRIGHTNESS sliders if no hardware gamma is available.

    Mostra dettagli

    The sliders themselves still permit changing values, but are drawn with a 'disabled' shade because they're non-functional with software gamma.

  • Remove code that worked around a (wrongly) not set have_ATI variable.

    Helixhorned r2634 5 mag, 15:22 Build 2643 Fix
    Mostra dettagli

    This was fixed with the preceding change; software mode will now always use software gamma if an ATI/AMD card is detected.

  • Generale

    On Windows, determine if we're running on a ATI card at startup even in classic.

    Helixhorned r2633 5 mag, 15:21 Build 2643 Engine
    Mostra dettagli

    Previously, I knew no way of querying for graphics adapter vendors/names from anything other than OpenGL. Googling revealed a way to do this with the Windows API.

  • Generale

    Some leftover stuff from the Wii patch.

    Mostra dettagli

    - in actors.c, make a static array const (the original patch removed the staticness) - remove one comment and change some compiled-out code - remove commented out pre-Makefile.common stuff Some changes were not adopted from tueidj's patch: - whitespace cleanup - ud.config.UseJoystick = 1 in config.c - Makefile.common, as mentioned before - proper read-in of g_numRealPalettes, because it was done with r2503

  • Generale

    Patch adding Wii support by tueidj, part 11: miscellaneous changes

    Mostra dettagli

    - BIGX -> BIGX_, likely again because of a name clash - make a loop in animlib.c iterate in forward direction

  • Generale

    Patch adding Wii support by tueidj, part 10: sound and endianness changes

    Helixhorned r2630 1 mag, 05:40 Build 2632 Fix
    Mostra dettagli

    This part is a mixture of the original patch and my changes. It seems like tueidj had some trouble 1) getting OGG to work, which is why it's conditionally compiled out 2) struggling with endianness with the mixing routines? This may be also due to him missing to define two others BIGENDIAN macros (our code is in need of cleanup there). Note the change in jaudiolib/src/mix.c! Because I added my share to this part, I might have actually broken sound mixing on big-endian platforms.

  • Generale

    Patch adding Wii support by tueidj, part 9: build.h sector/wall/spr/... limits

    Helixhorned r2629 1 mag, 05:40 Build 2632 Engine
    Mostra dettagli

    On the Wii, V7 (i.e. original) map limits are used and the maximum screen size is 1600x1200.

  • Generale

    Patch adding Wii support by tueidj, part 8: system-specific changes

    Mostra dettagli

    - conditionally compiles out some code intended for the PC platforms - compat.c: get home directory routine, access() implementation - game.c: don't use ioctl(), lower cache1d size to 8 MiB, Wii-specific initialization code and application directory ("apps/eduke32")

  • Generale

    Patch adding Wii support by tueidj, part 7: networking

    Mostra dettagli

    This simply macro-defines various low-level networking functions.

  • Generale

    Patch adding Wii support by tueidj, part 6: mutexes

    Helixhorned r2626 1 mag, 05:39 Build 2627 Fix
    Mostra dettagli

    For the Wii, SDL's mutex functionality is used. The implementation in the original patch was wrong though, so this part required non-trivial changes.

  • Generale

    Patch adding Wii support by tueidj, part 5: game-side input device changes

    Mostra dettagli

    - the crosshair is displayed at the position read from the absolute pointing device - in the menus, use the hat input (that was mapped to mouse buttons in part 4) for navigation

  • Generale

    Patch adding Wii support by tueidj, part 4: joystick support

    Helixhorned r2624 1 mag, 05:38 Build 2627 Fix
    Mostra dettagli

    - sdlayer.c: custom "get joystick button names" routine - jmact/mouse.c: packs some joystick events into the value returned by MOUSE_GetButtons(): bits used are 256, 512, 4096, 8192 - MOUSE_Init() --> Mouse_Init(), presumably because of a name clash? - comments out right-shift of joystick analog values by 5, maybe this fixes the scale problems with the joystick on the PC too?

  • Generale

    Patch adding Wii support by tueidj, part 3: SDL-level mouse changes

    Mostra dettagli

    This part adds support for an absolute pointing device.

  • Generale

    Patch adding Wii support by tueidj, part 2: Makefile changes

    Mostra dettagli

    I didn't add Makefile.common, because it needs to be made conditional.

  • Generale

    Patch adding Wii support by tueidj, part 1: assembly pragmas

    Mostra dettagli

    The original patch was communicated to me by Hendricks, but since it didn't apply cleanly (it's based on r2182) I took the liberty of slightly messing with it for inclusion into EDuke32. Info: http://wiibrew.org/wiki/User:Tueidj/Duke3D This first part (which wasn't changed from the original patch) implements scaling arithmetic and miscellaneous pragmas, some in PPC assembly and a part of them in C. Of some interest is the fact that the Wii processor apparently lacks support for 64-bit integers, so divscale() uses floating-point math.

Aprile 2012

  • Generale

    Revert r2232, "don't reset full-screen tint on basepal change" in CON setgamepalette.

    Helixhorned r2620 29 apr, 13:55 Build 2620 FixCON
    Mostra dettagli

    Because gltexinvalidate*() could be called too often when setgamepalette is used while having a tint overlaid else. Pending thorough analysis/reworking of the 32-bit mode base palette handling / texture invalidation.

  • Generale

    When deleting GL skin textures, handle the case where they are aliased.

    Helixhorned r2619 29 apr, 13:54 Build 2620
    Mostra dettagli

    That is, have a second loop over all models run for each deleted tex and null the texname. This is ugly, sure, but it's better than calling glDeleteTextures on stale names.

  • Generale

    Fix 'realloc' routine of GL texture name (id) debugging code.

    Helixhorned r2618 29 apr, 13:54 Build 2620 Fix
  • Generale

    Prettify some code in mdsprite.c.

    Helixhorned r2617 29 apr, 13:54 Build 2620
    Mostra dettagli

    - factor out a longish expression - whitespace, move a var down - remove unneeded casts (recall: "usual arithmetic conversions") - strcat -> Bstrcat, strcpy -> Bstrcpy

  • Generale

    Lunatic translator: nearing syntax completion while treading in murky waters.

    Helixhorned r2616 29 apr, 13:54 Build 2620 Fix
    Mostra dettagli

    - bump lpeg stack limit to 1024 (hack) for long if/if/if...else chains - lexical: newline, EOF and whitespace; "bad" identifiers; hex literals, newline terminated strings (allow empty string) - syntax: allow nesting of array expressions, it's easier than special-casing; handle issues with structs expecting parm2 (hackish); userdef; switch/case/default - fix parsing some commands; mind prefixes! - frontend: if failing match, print last keyword and its position; warn on "bad" identifiers (one per such); batch processing from command line - Files that locate finds from my linux box now pass (except where there are really syntax errors).

  • Generale

    CON palfrom: sanity-check current player and maybe print error message.

    Helixhorned r2615 28 apr, 14:56 Build 2615 CON
  • Generale

    Make two-way trains capable of carrying SE49 or SE50 sprites.

    Helixhorned r2614 28 apr, 14:56 Build 2615 Engine
  • Generale

    Fix 'mulscale' accepting defines or constants where writable var expected.

    Helixhorned r2613 22 apr, 12:11 Build 2613 Fix
  • Generale

    Lunatic translator improvements.

    Helixhorned r2612 22 apr, 12:10 Build 2613
  • preliminaries for persistence

    Helixhorned r2611 22 apr, 12:10 Build 2613
  • Generale

    Fix a null pointer access in Polymer mouse picking.

    Helixhorned r2610 14 apr, 06:04 Build 2610 FixEngine
    Mostra dettagli

    Specifically, it was in the "determine searchwall when aiming at floor or ceiling" part. Now, if prsectors[]->ceil.plane (or ->floor.plane) is NULL, we set the searchwall to the sector's firstwall and return.