November 2015
-
General
Don't implicitly define GAMEFLAG_NAM for WWII GI. Instead, implement a new macro NAM_WW2GI synonymous with (NAM || WW2GI).
-
General
Restrict the right-edge widescreen clamping of the Pistol reload and Freezer to Duke Nukem 3D only: NAM and WWII GI don't need it.
-
General
Duke3D/Startup: Instead of adding Megaton's music paths, don't remove the gameroot path and let my new S_OpenAudio take care of the SC-55 soundtrack.
-
General
Duke3D/Startup: Clean up the Windows registry reading code.
Show details
There is no need to cache the result of a function called only once for each input.
-
General
Duke3D/Sound: Add a hack to the previous commit so that Megaton's grabbag.voc will still upgrade to music/grabbag_voc.ogg, but its subway.voc will no longer upgrade to music/subway.ogg.
-
General
Duke3D/Sound: Restructure S_OpenAudio to check in more paths. For each path, it performs the filename transformations and checks it does currently.
Show details
First, it will try the local path (as previously). Second, it will check to see if the filename originally requested exists inside a GRP or SSI file (its parent), and if it does, it will check in "music/<parent's name sans extension>/". Third, it will check in "music/". Do not rely on this when distributing mods: These checks are hacks and may potentially be removed.
-
General
Duke3D/Sound: Make kopen4loadfrommod a tail-call from S_UpgradeFormat, rename the function to S_OpenAudio, and replace 4x calls to one and then the other. No functional changes.
-
Add kfileparent().
-
Bikeshed some formatting in kopen_internal().
-
Save the filenames of GRP and SSI files that are opened.
-
Don't test (!usemodels || md_tilehasmodel(picnum, pal) < 0) in eligible_for_tileshades (called only from getshadefactor) because getshadefactor is only called when a model is *not* being drawn, and therefore results in incorrect shading when drawing a tile with a model defined and models enabled to the screen or as a skybox.
-
Slight optimizations in getshadefactor.
-
Bookend the recursive call to polymost_drawpoly as part of the fullbright pass with bglDepthFunc(GL_EQUAL) and bglDepthFunc(GL_LEQUAL) to ensure that the fullbright overlay is always visible and never fights with the sprite itself.
-
Remove "indrawroomsandmasks" variable and its only use in polymost_drawpoly as a condition for the fullbright pass.
-
Connect spriteext[].x/ypanning to model UVs (range 0-255).
-
General
player.c: factor out large A_ShootWithZvel() block into A_ShootHardcoded()
Show details
The block is taken over verbatim; 'vec3_t srcvect' is passed by value. The primary purpose of this is that it's easier to compare custom projectile behavior in A_ShootCustom() with the hardcoded one by reading the code of these two functions. For example, this may be of use to modders wishing to emulate a hardcoded projectile. DONT_BUILD.
-
in drawspritelabel(), use fixed background color.
Show details
Make it always one of the colors that the 2D color cycles to (base color + offset in [0 .. 4]) instead of <base color>-3, as that one might be in a different color ramp.
-
add byte array editorcolors[256] to m32script variables.
Show details
This makes it possible to set up editor colors at startup (from m32_autoexec.cfg). For example: script_expertmode 1 do for i range 256 ifge i 33 { set editorcolors[i] i } script_expertmode 0 Use this method in the description of how to get old-style 2D colors in tiles.cfg and suggest an alternative color index pair.
-
make 'script_expertmode' require an argument (0 or 1) to toggle.
Show details
Without an argument, it prints the current state.
-
General
In package/sdk/tiles.cfg, use the right word for "remove commenting".
Show details
DONT_BUILD.
-
changes to aid getting the old color scheme (by customizing).
Show details
- bump MAX_TILE_GROUP_ENTRIES to MAXUSERTILES - in loadtilegroups(), only assign a tile color if it wasn't already assigned - allow "hidden" tile groups by omitting the hotkey - Tweak the description added to tiles.cfg
-
honor "blocking color" declared with DEF 'spritecol' et al.
Show details
Meaning tilegroup's 'colors' directive. Also, to the packaged tiles.cfg, add a description of how to emulate the earlier Mapster32 sprite coloring for one tile group.
-
in a.m32, draw color info ("set showpal 1") more informatively.
Show details
- draw ticks above the palette "ruler" - draw all editor colors (colors in editorcolor[])
-
introduce DEF command "2dcolidxrange <col> <idx> <idxend>".
Show details
<col> is the editorcolor[] starting index <idx> is the actual color index start <idxend> is the actual color index end So, editor colors from <col> onward will be mapped to [<idx> .. min(<idxend>, 255)]. Takes precedence over '2dcol'.
-
in drawscreen_drawsprite(), "sprite[j]." -> "spr->".
Show details
Also a similar stylistic tweak in parsetilegroups().
-
formatting changes around 2D sprite/wall color code.
-
General
Fix POLYMER=0 build. DONT_BUILD.
-
fix variable that is used uninitialized.
-
General
premap.c: on prelevel(), clear bits 16 and 32 of effector sprites.
-
remove "Ludicrous Zoom!" message when reaching max 2D zoom.
Show details
The problem is that it stays a few seconds afterwards, obscuring information on the status line.
-
add var 'corruptcheck_game_duke3d' and enable by default.
Show details
Currently, this checks for effector sprites that are not face-aligned. See https://forums.duke4.net/topic/8324-icestation-colossus-map-broken
-
General
baselayer.c: Remove nested "#ifdef USE_OPENGL"s left over from the removal of the POLYMOST macro. DONT_BUILD.
-
General
astub.c: Fix typos in console function definitions. DONT_BUILD.
-
Clean up formatting of parallax sky code and comments, in part so that the floor and ceiling sections are line-for-line consistent. DONT_BUILD.
-
General
Build tools/arttool: Port commit f874a10ef136f4de3c9a9cccf3eacd886bae0d2d from JFBuild: improved with info dumping and tile export
-
General
Build tools/arttool: long --> int
-
General
Use the script parser for names files instead of custom parsing. This allows names files to define labels as other labels.
-
various stylistic tweaks, no functional changes. DONT_BUILD.
October 2015
-
in TROR-join sectors [Ctrl+J], print z difference hint.
Show details
At the very least, this makes it easier to decide for one option ("Connect yellow ceiling w/ blue floor (1) or (v)ice versa?") when one of the differences is zero, which might have occurred from temporarily breaking TROR links.
-
fix fillsector() calls before fade_editor_screen().
Show details
The latter allows one to specify a color to keep, but with r5302 the fillsector() highlights are drawn with transparency, thus making it ineffective. Add an argument to toggle transparency to fillsector() (now fillsector_maybetrans()) and two wrapper functions.
-
don't offer to "Insert outer loop and make red walls" w/ RAlt+RCtrl.
Show details
This feature only makes sense with the complete de-selection of a set of sectors, i.e. when pressing RAlt to do this, not adding or removing sectors to/from the set of already highlighted ones.
-
General
Oops, forgot one. ;)
-
General
Menu options to control Polymer light and shadow counts
-
General
Fix cstat 1024 with Polymer
-
General
Add r_pr_lighting 2, which disables the hard-coded lights while leaving lights added in maps enabled.
Show details
This also adds a menu option to control r_pr_lighting.
-
General
Check whether the sprite is a wall, floor, or face sprite when deciding whether to bump it ahead of another entry based on position and owner.
-
General
Disable Polymer lights attached to hidden switches.
-
General
Improve depth fighting mitigation for floor aligned sprites.
-
General
Don't spawn BLOODPOOL 256 units above the ground.
-
General
Fix errant use of tsprite extra field to check an enemy's health.