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.769 build

Esporta CSV
Opzioni di visualizzazione
Dettagli dei commit:

Febbraio 2013 18 build · 90 commit

Build 3492

16 feb 2013 · 8 commit · 1 autore SVN
Apri la build
Mostra gli altri 3 commit di questa build

Build 3484

14 feb 2013 · 4 commit · 1 autore SVN
Apri la build
  • Generale

    Fix build without Ken's ZIP library (WITHKPLIB not #define'd in compat.h).

    Helixhorned r3484 14 feb, 08:02 Fix
  • Generale

    Classic renderer: high-precision sprite drawing, preventing stray lines on top.

    Helixhorned r3483 14 feb, 08:02 FixEngine
    Mostra dettagli

    Face- and wall-aligned sprites are drawn using the wall routines in BUILD. However, the per-x-screen-coordinate distance (swall[]) is calculated in a way that potentially incurs great precision loss (for example 5 bits for xdimen=1280, yxaspect=65536). This leads to the starting (top) vertical texture coordinate possibly wrapping to large values, leaving an unsightly "stray line" on top of the sprite from certain viewing angles/horiz values. The approach to fix it has two parts: first, the distance is calculated using float values, preventing the precision loss. Because this doesn't fully prevent the unwanted lines, the texture coords are clamped to the mininum and maximum (0 and UINT32_MAX respectively) when calculating them for sprites. Note that stray lines may still appear at the *bottom* of sprites under certain circumstances, for example when viewing at a y-flipped sprite from above. These should be less noticable in real-world usage though. The feature is guarded by a macro HIGH_PRECISION_SPRITE in case using floating point or 64-bit integers is undesirable/impossible on some platforms.

  • Generale

    engine.c: factor out calculation of texture coords / addresses in wall drawing.

    Helixhorned r3482 14 feb, 08:02 Engine
  • Generale

    engine.c: don't pass [udls]wal to maskwallscan(), use *wall globals instead.

    Helixhorned r3481 14 feb, 08:01 Engine

Build 3480

11 feb 2013 · 3 commit · 1 autore SVN
Apri la build
  • Generale

    Lunatic translator: more of everything...

    Helixhorned r3480 11 feb, 09:16
  • Generale

    CON myosx*: move masking orientation with user-bits-mask to G_DrawTileGeneric().

    Helixhorned r3479 11 feb, 09:16 CON
  • Generale

    Make g_earthquakeTime into a uint16_t, remove DukePlayer_t's name[] member.

    Helixhorned r3478 11 feb, 09:16
    Mostra dettagli

    Bump BYTEVERSION.

Build 3477

10 feb 2013 · 10 commit · 1 autore SVN
Apri la build
  • input access.

    Helixhorned r3477 10 feb, 08:24
  • Generale

    Factor out player[].* allocation into G_MaybeAllocPlayer(), rename 2 functions.

    Helixhorned r3476 10 feb, 08:24
  • sprite.change{sect,stat}, access to more members, member read test.

    Helixhorned r3475 10 feb, 08:24 Engine
  • Generale

    engine.c: in changesprite{sect,stat}, swap second and third early-out tests.

    Helixhorned r3474 10 feb, 08:24 Engine
    Mostra dettagli

    That is, first check if the sprite is in the game world and then if it already has the desired sector or status number. This doesn't change anything in our codebase, since the return values of these functions are never examined.

  • Generale

    Lunatic translator: userdef access.

    Helixhorned r3473 10 feb, 08:24
Mostra gli altri 5 commit di questa build

Build 3467

7 feb 2013 · 9 commit · 1 autore SVN
Apri la build
  • Generale

    Fix POLYMER=0 build, cleaning up #include discipline on the way.

    Helixhorned r3467 7 feb, 13:01 FixEngine
    Mostra dettagli

    Also taking care that the USE_OPENGL=0 build builds.

  • Generale

    Lunatic (translator): thisprojectile, *shoot.

    Helixhorned r3466 7 feb, 13:01
  • Generale

    Rework how the z velocity is passed from *zshoot to A_Shoot().

    Helixhorned r3465 7 feb, 13:01 CON
    Mostra dettagli

    Previously, actor[].shootzvel (implementation detail, not available to CON) was checked, and if it was !=0, that was the overridden velocity. The value 0 meant "hardcoded, projectile-dependent velocity". But that neccesiated a hack where if zvel 0 was passed and really meant, it needed to be set to 1 instead. Now we have A_ShootWithZvel() taking an additional last argument plus a macro SHOOT_HARDCODED_ZVEL permissible for that argument.

  • Generale

    player.c: factor out more identical code into Proj_DoHitscan().

    Helixhorned r3464 7 feb, 13:01
    Mostra dettagli

    Also, simplify a couple of other lines.

  • projectiles...

    Helixhorned r3463 7 feb, 13:01
Mostra gli altri 4 commit di questa build

Build 3458

3 feb 2013 · 5 commit · 1 autore SVN
Apri la build
  • Generale

    Lose the packed attribute on / rearrange some game struct types.

    Helixhorned r3458 3 feb, 04:48
    Mostra dettagli

    actors.h: remove 'packed' from projectile_t, tiledata_t. In tiledata_t, make .cacherange member an int32_t so that the following member "projectile_t defproj" is aligned on a 4-byte boundary. player.h: remove 'packed' from playerspawn_t, DukeStatus_t, input_t. In Lunatic, correct packing attribute of the base type of the unrestricted actor_t and DukePlayer_t pointer types (the declaration was used without Bump BYTEVERSION.

  • Generale

    player.c: remove a couple of unnecessary casts.

    Helixhorned r3457 3 feb, 04:48
  • conditionally compile out more legacy code, remove old mixed mode code.

    Helixhorned r3456 3 feb, 04:48
  • Generale

    Lose the 'packed' attribute for types declared in build.h.

    Helixhorned r3455 3 feb, 04:48
    Mostra dettagli

    Most of them are already aligned to their natural boundaries, so lowering the alignment to 1 byte can only worsen things by making the C compiler generate poorer (unaligned access) code for some platforms. The layout of structures is not specified by the C Standard, but is rather given by a particular platform + toolchain's ABI (application binary interface). Most ABIs follow the expected pattern "alignment of scalars is their size, alignment of arrays is that of its element type, alignment of structs is the maximum alignment of its members". A couple of links to particular ABIs are given in build.h. Problems are expected with archs that care about unaligned access when a pointer to a non-packed struct is taken that resides in a packed aggregate, but these uses should be weeded out (I'm not sure if there are any in our codebase). The following types are affected, only hitdata_t changes its size: sectortype, walltype, spritetype, spriteext_t, spritesmooth_t, struct validmode_t, picanm_t, palette_t, vec2_t, vec3_t, hitdata_t.

  • Generale

    Lunatic translator: codegen for actor-tsprite accesses, sync some RO members.

    Helixhorned r3454 3 feb, 04:48 Engine

Build 3453

1 feb 2013 · 1 commit · 1 autore SVN
Apri la build
  • Generale

    Fix all hitscan weapons (not only pistol) wrongly fire without spread at enemies.

    Helixhorned r3453 1 feb, 11:56 Fix
    Mostra dettagli

    Introduced in r3358, where I missed a condition inside an 'if'.

Build 3452

1 feb 2013 · 6 commit · 1 autore SVN
Apri la build
  • provide access to actor-tsprite.

    Helixhorned r3452 1 feb, 05:05 Engine
  • Generale

    game.c: In G_DoSpriteAnimations, put t, i and s locals into their blocks.

    Helixhorned r3451 1 feb, 05:05
    Mostra dettagli

    And const them appropriately. Also remove #if 0'ed code related to an MSVC pragma.

  • Generale

    NULL spriteext[].tpsr after each running EVENT_ANIMATESPRITES for a tsprite.

    Helixhorned r3450 1 feb, 05:05 EngineCON
    Mostra dettagli

    Meaning that only *ettsprite[THISACTOR] makes sense from CON. It did before too, because .tspr was set before each event run (and not before all runs), only that it was never nulled, which was kind of untidy.

  • remove unused tsprite access via spriteext[].tspr.

    Helixhorned r3449 1 feb, 05:05 EngineCON
  • Generale

    Don't set spriteext[].tspr when creating tsprites from the engine.

    Helixhorned r3448 1 feb, 05:05 EngineCON
    Mostra dettagli

    Its only use is to have a actor -> tsprite mapping for the EVENT_ANIMATESPRITE event and .tspr will be set before it is run.

Mostra l’altro commit di questa build

Gennaio 2013 20 build · 92 commit

Build 3443

28 gen 2013 · 1 commit · 1 autore SVN
Apri la build
  • Generale

    Additional networking patch from Jasper Foreman, sadly sitting untested for almost a month because everyone here has been too sick to do anything with it. :(

    TerminX r3443 28 gen, 14:00

Build 3442

27 gen 2013 · 3 commit · 1 autore SVN
Apri la build
  • Generale

    Fix MinGW/GCC build. Oops!

    TerminX r3442 27 gen, 13:37 Fix
  • Generale

    Use nearbyintf() to when calculating g_frameDelay (when r_maxfps is changed) to get closer to the target framerate by bypassing float -> int truncation

    TerminX r3441 27 gen, 09:06
  • Generale

    Fix knuckle cracking animation broken in r3436

    TerminX r3440 27 gen, 09:06 Fix

Build 3439

26 gen 2013 · 6 commit · 1 autore SVN
Apri la build
  • Generale

    Lunatic translator: a couple of set-struct commands, "-I" option for default dir.

    Helixhorned r3439 26 gen, 09:08
  • Generale

    Don't apply GL fogging to wall lines drawn in game's "light" overhead view.

    Helixhorned r3438 26 gen, 09:07 Engine
  • prefer to use ctype objects instead of C type strings.

    Helixhorned r3437 26 gen, 09:07
    Mostra dettagli

    Pass types via ffi.typeof() instead of declaring them in the global namespace when possible.

  • Generale

    player.c: return early from various P_Display*() if player's *incs are oob.

    Helixhorned r3436 26 gen, 09:07
  • use bcarray types to guard accesses to arrays inside structs.

    Helixhorned r3435 26 gen, 09:07
Mostra l’altro commit di questa build

Build 3433

24 gen 2013 · 5 commit · 1 autore SVN
Apri la build
  • Generale

    Lunatic translator: struct read access.

    Helixhorned r3433 24 gen, 12:03
  • Generale

    Lunatic translator: prototypical array/struct access, for reference only.

    Helixhorned r3432 24 gen, 12:03
  • a little bit of everything.

    Helixhorned r3431 24 gen, 12:03
  • sync with preceding change, complete two commands.

    Helixhorned r3430 24 gen, 12:02
  • Generale

    CON parser: don't accept read-only gamevars for 1st arg of *sprite{sect,stat}.

    Helixhorned r3429 24 gen, 12:02 EngineCON

Build 3428

23 gen 2013 · 5 commit · 1 autore SVN
Apri la build
  • Generale

    game.c: replace one missed instance of inline code with calc_smoothratio().

    Helixhorned r3428 23 gen, 11:36
  • sync with preceding change, fix r3419.

    Helixhorned r3427 23 gen, 11:36 Fix
  • Generale

    Rework hardcoded BADGUY sprite flag initialization (i.e. amend r3257).

    Helixhorned r3426 23 gen, 11:36 FixEngine
    Mostra dettagli

    Use a new flag to mark hard-coded enemies, not SPRITE_BADGUY. This fixes an issue where in E1L4, a pigcop would appear in the area you have to crawl under shrunk. Thanks to LLCoolDave1 for pinpointing the range of relevant revisions.

  • Generale

    Fix USE_OPENGL=0 build.

    Helixhorned r3425 23 gen, 11:36 Fix
  • fix cycling to the next link sprite with LShift+"]", tweak message.

    Helixhorned r3424 23 gen, 11:36 FixEngine

Build 3422

20 gen 2013 · 11 commit · 1 autore SVN
Apri la build
  • simplify how to determine whether the final binary is stripped.

    Helixhorned r3422 20 gen, 13:17 Fix
    Mostra dettagli

    Whenever it should be not, STRIP is set to the empty string. This fixes the Lunatic RELEASE=1 build.

  • Generale

    Reimplement pixel doubling by drawing scene at 1/(2*2) resolution and expanding.

    Helixhorned r3421 20 gen, 13:17
    Mostra dettagli

    The pixel doubling now only applies to the area where the world scene is drawn, i.e. it may be smaller than the physical screen / WM window size. The optimized version is slightly faster than for non-doubled pixels for me (optimized build), but see code for caveats. Some other minor issues: - won't work when the world is drawn from demo cameras (and offscreen, but that matters less) - will leave a few pixels empty when running with x resolutions not evenly divisible by 4

  • Generale

    game.c: pull out two G_DrawRooms blocks into G_OROR_DupSprite and G_ReadGLFrame.

    Helixhorned r3420 20 gen, 13:17
    Mostra dettagli

    ... to have a little moew overview.

  • Generale

    Lunatic translator: handle overriding system GVs.

    Helixhorned r3419 20 gen, 13:17
  • Generale

    player.c: make four functions file-local.

    Helixhorned r3418 20 gen, 13:17
Mostra gli altri 6 commit di questa build

Build 3410

19 gen 2013 · 6 commit · 1 autore SVN
Apri la build
  • Generale

    Remove mixed Lunatic/legacy build option.

    Helixhorned r3410 19 gen, 10:29
  • Generale

    Lunatic translator: more of the same.

    Helixhorned r3409 19 gen, 10:28 Fix
    Mostra dettagli

    - more predefined vars - fix recursive states and ones with a stray "else" before the end

  • Generale

    Consolidate badly named HUD weapon globals ("g_looking_angSR1") into struct.

    Helixhorned r3408 19 gen, 10:28
  • more convenient weapon data access.

    Helixhorned r3407 19 gen, 10:28
  • various.

    Helixhorned r3406 19 gen, 10:28 Fix
    Mostra dettagli

    - Fix "gv" access. - camera - translator: comparison predicates, predefs...

Mostra l’altro commit di questa build

Build 3404

17 gen 2013 · 6 commit · 1 autore SVN
Apri la build
  • in texel-hitscan wall-aligned sprites, consider engine-side animation.

    Helixhorned r3404 17 gen, 13:59 Engine
    Mostra dettagli

    Whether a sprite is considered for texel-hitscan is determined on the base tile number, not the individual animated tile numbers.

  • Generale

    Make r_shadescale 1.0 by default.

    Helixhorned r3403 17 gen, 13:59
  • Generale

    Simplify HUD scale and viewport size logic and clean up related code.

    Helixhorned r3402 17 gen, 13:59 CON
    Mostra dettagli

    * Make the "classic status bar fullscreen viewport" mode accessible in classic too. * Make range of status bar scale 36..100 * Update ud.statusbarmode when executing OSD command r_size (ud.screen_size). NOTE: ud.statusbarmode is considered internal. Don't use from CON! * Make sure 1) loading any configuration and 2) menu bars work correctly. (The "classic status bar fullscreen viewport" mode will never be restored though because ud.statusbarmode isn't handled by the OSD var system).

  • Generale

    polymost.c: factor out 2x dup'd code into get_projhack_ratio().

    Helixhorned r3401 17 gen, 13:59 FixEngine
    Mostra dettagli

    One use was in determining the ray vector for the mouse-aiming hitscan in the editor. Unfortunately, the change doesn't make it any less broken in Polymost, even if the two instances were out of sync.

  • Generale

    Various cleanup of status bar drawing code, remove some old commented out code.

    Helixhorned r3400 17 gen, 13:59
Mostra l’altro commit di questa build

Build 3398

16 gen 2013 · 5 commit · 1 autore SVN
Apri la build
  • add cvar/mapster32.cfg option "keeptexturestretch".

    Helixhorned r3398 16 gen, 12:38 Engine
    Mostra dettagli

    If enabled, dragging wall vertices will correct the xrepeat after the mouse button is released, so that the pre-drag absolute stretching is restored.

  • slightly rework code for setting/querying some cvars.

    Helixhorned r3397 16 gen, 12:38 Engine
  • more or less fix the auto wall-alignment feature ([.]/[,]).

    Helixhorned r3396 16 gen, 12:38 FixEngine
    Mostra dettagli

    - Run it twice, since the first one is wrong. - Warn when attempting to align based on a top-oriented wall. When the sequence of walls to align has "windows", only the bottom parts will be correct. - Make the modifiers actually useful: * Pressing SHIFT aligns at most one wall, remove the old CTRL modifier. * The rest is as before: ALT makes the walls have (approximately) equal texture stretching, ['] (quote) aligns the immediate TROR-nextwalls.

  • don't show wall length of *line* highlight when dragging points.

    Helixhorned r3395 16 gen, 12:38 Engine
    Mostra dettagli

    Also, factor out 2x dup'd code of insertsprite() into do_insertsprite() and add searchwall-displaying code into package/samples/a.m32.

  • Generale

    Replace dragpoint()'s "dragpoint_noreset" global with a "flags" argument.

    Helixhorned r3394 16 gen, 12:38 Engine
    Mostra dettagli

    Also, add another flag, signifying that from the editor, also the "lastwall"s (i.e. the CCW-linked points) should get collected. This is to signal the editor that their wall lengths should be displayed, too.