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

Stai vedendo il 2011 · selezionalo di nuovo per vedere tutti gli anni
Era SVN · r1519 – r8798 Era Git · voidpoint.io, da aprile 2020
Filtri · 1 attivi

Visualizzati 472 commit

Esporta CSV
Opzioni di visualizzazione
Dettagli dei commit:
Filtri attivi: Anno: 2011 Azzera tutto

Dicembre 2011

  • Generale

    - Format CON crash output in VM_ScriptInfo() much more nicely.

    Hendricks266 r2229 31 dic, 20:14 Build 2229 FixCON
    Mostra dettagli

    - Execute VM_ScriptInfo() when DNDEBUG is used.

  • Generale

    Comment ldcty[12] array from kpegrend() to remove last of set-but-unused warnings. I don't see any reason to leave this alone.

    Hendricks266 r2228 31 dic, 20:12 Build 2229
  • Generale

    a.m32 light hotkeys: clamp hitag (range) to 0..32767 instead of 0..16000

    Helixhorned r2227 30 dic, 14:17 Build 2227 Engine
  • CON

    make the 'palette' player member actually return the player's palette ID

    Helixhorned r2226 29 dic, 06:26 Build 2226 CON
    Mostra dettagli

    instead of -1. Setting is still only through 'setgamepalette'.

  • Generale

    Besides the performance issues, there's another reason why changing the palette

    Helixhorned r2225 28 dic, 12:36 Build 2225 EngineCON
    Mostra dettagli

    'frequently' isn't such a good idea. Assume an actor constantly changes the palette to some value and you're attacked by a newbeast at the same time. Then the pain tinting would be reset each time the actor's code is run. This commit adds a new flag 16 to setbrightness(), meaning "don't reset the fade tinting". Its only use right now is from CON's setgamepalette command (and there, always). The change is done in the engine and thus affects all platforms.

  • Generale

    Trivial tweaks of setbrightness. Add an assertion that bits 1 and 4 are clear,

    Helixhorned r2224 28 dic, 12:35 Build 2225
    Mostra dettagli

    mainly. Also remove setvgapalette() from source.

  • Generale

    The earlier changes introduced bugs when palettes were not set correctly in

    Helixhorned r2223 28 dic, 12:35 Build 2225 Fix
    Mostra dettagli

    certain situations (mostly cutscenes etc). This commit removes bit 1 from all flags that make it to setbrightness, the meaning of which is "don't actually update the palette". I have no idea what it was for and since the corresponding P_SetGamePalette() calls were from places like the mentioned cutscenes, I don't think it matters performance-wise.

  • Generale

    SDL layer: don't call SDL_SetGammaRamp() if there would be no change.

    Helixhorned r2222 28 dic, 12:34 Build 2225 Fix
    Mostra dettagli

    This is in the similar vein as the set-palette deferring and it's this that fixes the low FPS in the radioactively contaminated area in AMC TC: Megabase (since setgamma() is called from setbrightness()). Again, update issues might be expected, but changing focus between EDuke32 and the desktop and back seems to restore the gamma settings properly on Kubuntu. Looks like X (or whatever above handles this stuff) maintains it on a per-application basis.

  • Generale

    SDL layer: in 8-bit mode, defer setting the palette until showing the next frame.

    Helixhorned r2221 28 dic, 12:34 Build 2225 CON
    Mostra dettagli

    CON code sometimes uses 'setgamepalette' from withing actors, which is a bit too frequent. Deferring the actual palette updating means that multiple requests in between two screen redraws are coalesced into one, which is desirable for performance reasons and for the reduction of 'tearing' artefacts (but not prevention, since the drawing isn't synced to the screen refresh rate with vsync off). (Did-not-)update issues might be introduced. Windows isn't touched because - I expect it to be more brittle, especially in light of the ATI HW gamma problems. - I haven't tested whether the particular performance penalty that lead to this change ('gas' in AMC TC) exists there too

  • remove the old inversion and PCX code from the source

    Helixhorned r2220 28 dic, 12:34 Build 2225
  • if compiled with USE_LIBPNG, always use PNG, even for

    Helixhorned r2219 28 dic, 12:34 Build 2225
    Mostra dettagli

    color-inversed shots. For both PNG and TGA, change the way they're done in 8-bit mode: instead of XORing every byte with 15, save the inverse palette (each component taken 255-x).

  • Generale

    savegame.c: fix compilation warnings with release build, add timing for debug

    Helixhorned r2218 28 dic, 12:33 Build 2225 Fix
  • Generale

    Factor out two nearly identical pieces of code in game.c and gameexec.c

    Helixhorned r2217 28 dic, 12:33 Build 2225
    Mostra dettagli

    into G_HandleMirror().

  • make smoststart[] (which saves starting "smostcnt"s) an array of int32's

    Helixhorned r2216 27 dic, 06:22 Build 2216 FixEngine
    Mostra dettagli

    instead of shorts. This fixes their values' overflow in AMC TC megabase and probably a couple of other large maps.

  • net

    fix bug in Net_ParseServerPacket introduced with SAMESIZE_ACTOR_T.

    Helixhorned r2215 27 dic, 06:22 Build 2216 Fix
  • Generale

    Fix sintable access with raw angle value (which might be outside [0..2047])

    Helixhorned r2214 26 dic, 07:44 Build 2214 Fix
    Mostra dettagli

    in overhead map drawing code.

  • Generale

    patch up another out-of-bounds access in the voxel drawing code, though

    Helixhorned r2213 26 dic, 07:44 Build 2214 Engine
    Mostra dettagli

    I'm not sure whether the increased array size is enough.

  • Generale

    savegame.c: fix initial setting of compression threshold on savegame load;

    Helixhorned r2212 26 dic, 06:37 Build 2212 Fix
    Mostra dettagli

    64-bit fixes

  • Generale

    start CON code at script[3] instead of script[1]. The 'move' command permits

    Helixhorned r2211 25 dic, 07:35 Build 2211 CON
    Mostra dettagli

    the constants 0 and 1, and moveptrs may reference the script up to index 2 then (though I'm not sure whether the code is reachable with moveofs either 0 or 1), so make sure it's nulled instead of whatever happened to compile at the first two positions. Move 1 is only used once in the original cons, when frozen and being shattered.

  • Generale

    fix displaying the screenshot even for old-version savegames.

    Helixhorned r2210 25 dic, 07:34 Build 2211 Fix
  • net

    send BYTEVERSION as two bytes, high byte first.

    Helixhorned r2209 25 dic, 07:34 Build 2211
    Mostra dettagli

    Now we don't need to worry about the numbers running out soon. Bump BYTEVERSION by three to celebrate this, too.

  • Generale

    Enable SAMESIZE_ACTOR_T described earlier.

    Helixhorned r2208 25 dic, 07:34 Build 2211
  • Generale

    Rewrite the savegame format in terms of the generic saving/loading system.

    Helixhorned r2207 25 dic, 07:34 Build 2211
    Mostra dettagli

    This makes savegames practically the same as the initial snapshot of a demo. Saves are now named 'dukesavX.esv' (demos: 'edemoX.edm'). Additionally, many changes that couldn't/needn't be cleanly separated are added with this commit: - make spriteext_t have the same size across 32/64 bit platforms (actor_t partially) - prevent saving/loading in MP games (it certainly didn't work and still doesn't) - it's time we start using assertions! Define NDEBUG for releasse builds. - reset savegame major and minor versions (we have a new magic string, so no conflict)

  • Generale

    Rewrite a couple of lines in clearfrags() to look more idiomatic.

    Helixhorned r2206 25 dic, 07:33 Build 2211
  • Generale

    Beauty tweaks; revert s_buildDate since we don't want windows builds to pull

    Helixhorned r2205 25 dic, 07:33 Build 2211 Fix
    Mostra dettagli

    snapshots in the current development state now.

  • Generale

    Fix non-TROR build and add a warning that such a build is only useful for

    Helixhorned r2204 25 dic, 07:33 Build 2211 Fix
    Mostra dettagli

    debugging, i.e. savegames and the like will break.

  • Generale

    Eh, fix out-of-bounds issue in clearfrags() with MAXPLAYERS players.

    Helixhorned r2203 25 dic, 07:32 Build 2211 Fix
    Mostra dettagli

    It was identified with the clearfrags rewriting, but not corrected.

  • Generale

    Factor out filename-based music setup code into G_SetupFilenameBasedMusic.

    Helixhorned r2202 25 dic, 07:32 Build 2211
    Mostra dettagli

    There were two instances of nearly identical code in premap.c and savegame.c. Also identifies a (harmless) problem with realloc'ing, we had: if (len+1 > sizeof(MapInfo[...].musicfn)) MapInfo[...].musicfn = Brealloc(MapInfo[...].musicfn, len+1) which reallocs almost all the time (since .musicfn is a pointer). Now we do realloc every time...

  • Generale

    premap.c: write out inline function clearfrags() for clarity.

    Helixhorned r2201 25 dic, 07:32 Build 2211
  • Generale

    misc. cleanup in savegame.c

    Helixhorned r2200 25 dic, 07:32 Build 2211
  • Generale

    Rewrite EDuke32's -d<demofile> option parsing code. Writing into argv[i]

    Helixhorned r2199 25 dic, 07:31 Build 2211
    Mostra dettagli

    isn't very wise. Also resize firstdemofile[] to BMAX_PATH bytes.

  • Generale

    Remove written-out savegame.c function declarations from demo.c and include

    Helixhorned r2198 25 dic, 07:31 Build 2211
    Mostra dettagli

    savegame.h instead.

  • Generale

    Remove 'projectile' field from actor_t because it was entirely unused.

    Helixhorned r2197 25 dic, 07:31 Build 2211
    Mostra dettagli

    WARNING: This silently breaks savegames on 64-bit platforms.

  • Generale

    Remove a few unused variables from global.[ch], update build date string.

    Helixhorned r2196 25 dic, 07:30 Build 2211
  • Generale

    minor cosmetic tweaks in sector.[ch] and a off-by-one limit correction there

    Helixhorned r2195 21 dic, 10:43 Build 2195 Engine
  • Generale

    Fix out-of-bounds write when passing a map filename to Mapster32.

    Helixhorned r2194 21 dic, 10:43 Build 2195 FixEngine
  • actor. (Needs SAMESIZE_ACTOR_T, which is not yet enabled)

    Helixhorned r2193 21 dic, 10:43 Build 2195
  • Generale

    misc. beautifying some game code...

    Helixhorned r2192 21 dic, 10:42 Build 2195
  • Generale

    some more clearbuf -> memset in gamedef.c plus add a forgotten keystatus

    Helixhorned r2191 21 dic, 10:42 Build 2195
    Mostra dettagli

    reset in the editor

  • Generale

    savegame.c: minor cleanup and crash prevention in doloadplayer2

    Helixhorned r2190 21 dic, 10:42 Build 2195 Fix
    Mostra dettagli

    if loading directly from file to state.

  • Generale

    CON parser cleanup: In C_Compile, initially clear three arrays with

    Helixhorned r2189 21 dic, 10:41 Build 2195 CON
    Mostra dettagli

    Bmemset(..., 0, sizeof(...)) instead of clearbuf(..., MAX..., 0), because the latter would clear only half of the data on 64-bit platforms.

  • Generale

    In EDuke32 loading/saving menus, when finding old version savegame, display

    Helixhorned r2188 21 dic, 10:41 Build 2195
    Mostra dettagli

    some information about it instead of simply omitting it. Internally, struct savegame --> struct savegame_ for easier grepping.

  • Generale

    actor t_data commoning: forgot do add a #define in duke3d.h

    Helixhorned r2187 21 dic, 10:41 Build 2195
  • Generale

    animvpx loop: do at least on input device poll each frame (i.e. even if we're

    Helixhorned r2186 21 dic, 10:41 Build 2195
    Mostra dettagli

    lagging) to be able to cancel the movie in any case.

  • Generale

    Preliminary commoning of actor[].t_data[10] to an array of int32's on both

    Helixhorned r2185 21 dic, 10:40 Build 2195
    Mostra dettagli

    32- and 64-bit platforms. Also, make struct type actor_t also have a common size of 128 bytes. New code currently disabled and #ifdef'd for comparison. This requires certain t_data[] entries ([1]: move ptr, [4]: action ptr and [5]: ai ptr with actors) to be converted to script offsets instead of pointers, breaking savegame and net packet compatibility (we could in theory try hard not to, but it would be too much trouble).

  • Generale

    Add new actor[].flags flag 2048 (SPRITE_NOCLIP), for 'spriteflags' CON usage.

    Helixhorned r2184 17 dic, 10:51 Build 2184 EngineCON
    Mostra dettagli

    Actors are always moved such that _they_ clip against blocking sprites, even if their blocking bit is clear. Setting the new bit make them not clip against anything. The promary use of this is for decorative moving sprites that are spawned in masses, such as rain or snow.

  • Generale

    engine.c, in engine_addtsprite: if we can't add more tsprites because we

    Helixhorned r2183 17 dic, 10:51 Build 2184 Engine
    Mostra dettagli

    already have MAXSPRITESONSCREEN of them, return 1 to signal that the caller should break out of the loop.

  • Generale

    Tweaks to compile the release build with clang. Now if it only would not

    Helixhorned r2182 15 dic, 14:43 Build 2182
    Mostra dettagli

    generate curious code like this one (Ubuntu 11.10's clang 2.9 on i386): 0x080a57ea <+538>: xor %al,%al 0x080a57ec <+540>: test %al,%al 0x080a57ee <+542>: jnz 0x80a57f2 <initgroupfile+546> => 0x080a57f0 <+544>: jmp 0x80a57f0 <initgroupfile+544> 0x080a57f2 <+546>: shl $0x4,%edi

  • Generale

    Patch up out-of-bounds access in some voxel drawing code.

    Helixhorned r2181 15 dic, 14:42 Build 2182 Engine
  • Generale

    Don't spawn weapon tiles (WEAPONx_SPAWN) if any such value has been set

    Helixhorned r2180 15 dic, 14:42 Build 2182 EngineCON
    Mostra dettagli

    to negative numbers. Previously, only checks for being zero were performed, but CON code in the wild also has WEAPONx_SPAWN -1, which would propagate to the sprite picnum...