Commit graph

3770 commits

Author SHA1 Message Date
Christoph Oelckers
41a81989d8 0.4.5 2020-02-16 21:38:49 +01:00
Christoph Oelckers
57a3f89105 - workaround for cl_autoaim not being set anymore.
Only for singleplayer for now, the network implementation for this flag leaves a lot to be desired.
2020-02-16 21:31:29 +01:00
Christoph Oelckers
40cbaf969c - ignore GRPINFOs without a defined game.
These can cause unpredictable behavior, including crashes.
2020-02-16 20:18:07 +01:00
Christoph Oelckers
3cd2b92dd1 - pause all game sounds while the menu or console are open and marked SW's UI sounds as such. 2020-02-16 20:08:04 +01:00
Christoph Oelckers
a873dcf6e0 - fixed the pause key.
Apparently SDL maps this to a different scan code.
Since pause is hard coded in all games the corresponding menu option has been disabled.
2020-02-16 17:22:14 +01:00
Christoph Oelckers
19f9860c11 - fixed Blood's sfxKill3DSound function checking the wrong ID. 2020-02-16 16:52:02 +01:00
Christoph Oelckers
c583318f31 - guard NNLoadSaveConstruct with #ifdef NOONE_EXTENSIONS. 2020-02-16 14:54:24 +01:00
Christoph Oelckers
26d4114566 - Blood: Fix for buried zombies losing their targeting ability when being struck down while rising from the grave.
Normally they change their type when being fully risen - but when attacked before that happens, never reach that code. To keep them functional, the change must be performed before performing the first target check in thinkChase.
2020-02-15 21:47:02 +01:00
Christoph Oelckers
cc872c79fc - removed some vertex fudging code in polymost_domost that was no longer present in upstream code.
This looks like it fixes a few render glitches.
2020-02-15 21:36:29 +01:00
Christoph Oelckers
410f5a4545 - clean out stale sprite pointers in User when a sprite gets removed.
This was the main reason for those constant crashes, the game was accessing an invalid sprite, treating its data as valid.
Also added a few checks for valid targets in two places where it still crashed.
2020-02-14 21:44:59 +01:00
Christoph Oelckers
c643aadb4b - fixed hud scaling slider value ranges 2020-02-14 00:56:23 +01:00
Christoph Oelckers
071a364d83 - SW: Stop all sound before starting a cutscene 2020-02-14 00:52:57 +01:00
Christoph Oelckers
dff86c7e38 - removed some coordinate fudging for drawing SW's automap background
The current code does not need this
2020-02-14 00:41:36 +01:00
Christoph Oelckers
84bf6ad785 - unused code removed 2020-02-14 00:38:22 +01:00
Christoph Oelckers
844dcc22ae - SW: Don't allow level change via cheat when dead. 2020-02-14 00:37:15 +01:00
Christoph Oelckers
71485fe9d0 - reverted special detection of Duke add-ons
The side effects here are worse than the benefit.
2020-02-14 00:21:09 +01:00
Christoph Oelckers
488f8b1526 - Text code for AI state saving 2020-02-14 00:00:35 +01:00
Christoph Oelckers
91b7770e84 - use a command line switch to set Duke compatibility
At this point the command line CCMD execution has not run yet, so setting the CVAR does not work as expected.
2020-02-13 16:09:27 +01:00
Christoph Oelckers
d63d9f80bb - fixed missing menu descriptor for Blood. 2020-02-12 23:41:26 +01:00
nukeykt
a604152e39 Rednukem: fix kill counter
# Conflicts:
#	source/rr/src/gameexec.cpp
2020-02-12 23:14:53 +01:00
Christoph Oelckers
1e8e5d3732 - fixed: CON_ADDKILLS in RedNukem code was performing RR-only checks even when playing Duke.
Original code looks like this:

case 88:
	insptr++;
	ps[g_p].actors_killed += *insptr;
	hittype[g_i].actorstayput = -1;
	insptr++;
	break;
2020-02-12 23:14:42 +01:00
Christoph Oelckers
1c24ae3fad - restrict cl_weaponswitch to 0 and 1 for Shadow Warrior. 2020-02-12 22:46:18 +01:00
nukeykt
f2b98f9abc Rednukem: WW2GI weapon code fixes 2020-02-12 20:28:15 +01:00
nukeykt
88eacbcc1b Rednukem: fix ifvare instruction 2020-02-12 20:28:14 +01:00
Christoph Oelckers
9c9638a765 - save version bump.
# Conflicts:
#	source/common/version.h
2020-02-12 20:28:14 +01:00
Christoph Oelckers
f3d953513b - make things compile again. 2020-02-12 20:27:43 +01:00
nukeykt
b9e9b25cc6 Rednukem: fix WW2GI events 2020-02-12 20:27:43 +01:00
nukeykt
d5e3be61c2 Rednukem: WW2GI fixes
# Conflicts:
#	source/rr/src/menus.cpp
2020-02-12 20:27:43 +01:00
nukeykt
365b7bfe79 Rednukem: implement WW2GI weapons
# Conflicts:
#	source/rr/src/actors.cpp
#	source/rr/src/gamevars.cpp
#	source/rr/src/sbar.cpp
2020-02-12 20:27:42 +01:00
nukeykt
972f2c4f0d Rednukem: WW2GI events
# Conflicts:
#	source/rr/src/events_defs.h
#	source/rr/src/game.cpp
#	source/rr/src/gameexec.h
2020-02-12 20:27:42 +01:00
nukeykt
47572cc01a Rednukem: Readd gamevars from eduke32 for WW2GI support
# Conflicts:
#	platform/Windows/rednukem.vcxproj
#	platform/Windows/rednukem.vcxproj.filters
#	source/rr/src/events_defs.h
#	source/rr/src/gamedef.h
#	source/rr/src/gamevars.cpp
#	source/rr/src/savegame.cpp
2020-02-12 20:27:42 +01:00
Christoph Oelckers
7909f29691 - allow starting Duke, NAM and WW2GI with the RedNukem-based game code for Redneck Rampage.
This mainly required some rework of the menu setup to be less explicit about the frontend's menu classes.
2020-02-12 20:25:59 +01:00
Christoph Oelckers
82939f2037 - do not reinitialize all actors in Blood when loading a savegame.
The call to actInit has been replaced with only performing the one necessary thing that needs to be done here - setting the enemy default difficulty.
2020-02-12 18:44:04 +01:00
Christoph Oelckers
1f7877823b - applied intro cutscene aspect ratio fix from NBlood. 2020-02-12 17:59:22 +01:00
Christoph Oelckers
4c682813e7 - more unused data removed 2020-02-12 01:00:47 +01:00
Christoph Oelckers
4d45117ca5 - removed pointless and non-functional null check
clipmapinfo is a static global variable, its address is never null.
2020-02-12 00:42:34 +01:00
Christoph Oelckers
9f9e59e3ba - fixed some warnings 2020-02-12 00:43:21 +01:00
Christoph Oelckers
9fdd1d9e17 - continued work on Blood save state
* save and restore the ambient sound state
* removed a few unused global variables
* removed unused code from choke.cpp
2020-02-12 00:43:13 +01:00
Christoph Oelckers
fd384a5f47 - added an indexer for Blood's AI states.
These seem to be the only pointer variables that need to be written out to a savegame, but to restore them they need to be turned into indices before saving.
2020-02-12 00:22:11 +01:00
Christoph Oelckers
29e51a677f First round of Blood Savegame fix.
- const-ify most tables in actor.cpp for documentation purposes.
- gVectorData cannot be made const because one single field in there gets modified by code. :?
- save the global data in nnexts.cpp.
2020-02-11 23:15:25 +01:00
Christoph Oelckers
2f0a31508e - added Y/N to end game message. 2020-02-11 21:33:20 +01:00
Christoph Oelckers
1aa72cfbbd - fixed: The quicksave requester did not open the menu properly
This resulted in input not reaching it.
2020-02-11 21:25:21 +01:00
Christoph Oelckers
52e12702cf - fixed Linux paths not ending with a slash. 2020-02-11 21:00:01 +01:00
Christoph Oelckers
286d53d3bf - added the missing handling for the basepal tinting. 2020-02-11 20:55:47 +01:00
Christoph Oelckers
f2043c4e3d - fixed palette in 3D Realms screen and first end-of-episode animation in Duke3D. 2020-02-11 19:29:05 +01:00
Christoph Oelckers
a67c281290 - added StopFX function for Shadow Warrior.
Needed by an upstream change.
2020-02-11 19:28:25 +01:00
Christoph Oelckers
744bd67616 - removed redundant check. 2020-02-11 18:26:58 +01:00
terminx
9bd966c77e Macros for a couple hardcoded values
git-svn-id: https://svn.eduke32.com/eduke32@8641 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:24:50 +01:00
terminx
a9e8666b07 This lets the player jump into the vents in DUKEDC3.MAP
Since this is Duke3D, I'm sure this change breaks something else.

git-svn-id: https://svn.eduke32.com/eduke32@8640 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:24:39 +01:00
terminx
ff3ec2e66b Re-enable ignoring 256 units of curb when clipping against ceilings
This fixes getting stuck on tiny lips created by sloppy slopes in the undersized vents in DUKEDC3.MAP.

git-svn-id: https://svn.eduke32.com/eduke32@8639 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:24:05 +01:00
terminx
376c29dba6 Rename ZOFFSET1 to ACTOR_FLOOR_OFFSET and use ACTOR_MAXFALLINGZVEL in several places where it should have been used
git-svn-id: https://svn.eduke32.com/eduke32@8637 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/player.cpp
2020-02-11 18:23:49 +01:00
terminx
46b62aa6aa Fix for E1L1 dumpster fire issue
git-svn-id: https://svn.eduke32.com/eduke32@8636 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:23:14 +01:00
terminx
5a13be1f7b Avoid overflow in clipmove()
git-svn-id: https://svn.eduke32.com/eduke32@8633 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:22:41 +01:00
hendricks266
9269295102 SW: Don't restart the music when loading a save playing the same track
git-svn-id: https://svn.eduke32.com/eduke32@8627 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/sw/src/game.cpp
#	source/sw/src/save.cpp
2020-02-11 18:21:58 +01:00
hendricks266
5d475c2788 SW: Add handleevents to end credits
From JFSW commit 0c651743f8371fade0231e9c3206ca25e6ae5269

git-svn-id: https://svn.eduke32.com/eduke32@8626 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:21:00 +01:00
hendricks266
0b23c14b9d SW: Fix potential blank 3DR logo
From JFSW commit 18d1c68893693e68d0ce7d41bd1eacbec5655d4f

git-svn-id: https://svn.eduke32.com/eduke32@8625 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/sw/src/game.cpp
2020-02-11 18:20:59 +01:00
hendricks266
8e0407a425 SW: Fix potential buffer overrun in colormap
From JFSW commit 18d1c68893693e68d0ce7d41bd1eacbec5655d4f

git-svn-id: https://svn.eduke32.com/eduke32@8624 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:20:22 +01:00
hendricks266
a2f507d044 CON: Add getarraysequence and setarraysequence
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@8623 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/game.h
2020-02-11 18:20:04 +01:00
hendricks266
8adb6be002 CON: Factor out implementations of setarray and resizearray commands
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@8622 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:19:12 +01:00
CommonLoon102
8d7d8cc930 Blood: Clear keys on new level, fixes #308
# Conflicts:
#	source/blood/src/player.h
2020-02-11 18:17:22 +01:00
Christoph Oelckers
37f3bb37d4 - re-added menu opening sound for Duke and RR. 2020-02-11 18:13:15 +01:00
Christoph Oelckers
f0039afa5e - fixed: INI sections for game vars were never created. 2020-02-11 00:22:56 +01:00
Christoph Oelckers
41f2c62ed1 - use the original Build engine compatibility for Shadow Warrior.
The 'modern' code causes problems with the tank in the fourth map and probably elsewhere, too.
2020-02-10 22:38:17 +01:00
Christoph Oelckers
e2457d104b - fixed: Voxels did not explicitly set their palette and took the last one set. 2020-02-10 22:05:53 +01:00
Christoph Oelckers
39a9e3cd8b - removed double detection of DN3D addons. 2020-02-10 20:38:38 +01:00
Christoph Oelckers
a32bc350f1 - allow all keys to open the menu in Blood's demo loop. 2020-02-10 20:35:21 +01:00
alexey.lysiuk
744e4161f7 - removed message about vintage build 2020-02-10 15:10:45 +02:00
alexey.lysiuk
508b019447 - removed useless call in SDL backend
Its result wasn't used, and it may invoke function of DDummyFrameBuffer during initial sound precaching
2020-02-10 15:09:59 +02:00
Christoph Oelckers
8374b9e1b4 - fixed: The menu code should not reset the global input state when trying to close a menu with none open. 2020-02-09 22:57:04 +01:00
Christoph Oelckers
e3f8fca36e - fixed two crash bugs I found while testing some mods. 2020-02-09 22:32:13 +01:00
Christoph Oelckers
4e58265d21 - disabled parts of EDuke commit 7829 because its side effects are worse than what it tries to fix.
In particular this causes backwards sliding against walls.
2020-02-09 22:18:36 +01:00
Christoph Oelckers
c53d9cfc3a - reworked voxel texture generation to use the backend's palette manager.
The original code was not able to handle changing palettes and only worked if each palette change resulted in a full texture flush - which Raze does not perform.
2020-02-09 20:14:26 +01:00
Christoph Oelckers
6257994198 - fixed validation of hud_custom CVAR. 2020-02-09 18:42:14 +01:00
Christoph Oelckers
b87ee10a0a - added missing string length check. 2020-02-09 18:37:24 +01:00
NoOneBlood
fa057282df - Fix kModernTargetChanger wrong dudeInfo 2020-02-09 16:16:02 +01:00
Christoph Oelckers
7f58e8b6ca 0.4.1 2020-02-09 16:14:36 +01:00
Christoph Oelckers
91b9ce54e4 - use a dedicated flag for defined hightile tints so that the shader can use them. 2020-02-09 15:53:08 +01:00
Christoph Oelckers
a5fc374b59 - always recalculate the projection matrix.
Trying to cache this is not useful, it barely saves time and was causing display errors.

# Conflicts:
#	source/build/src/polymost.cpp
2020-02-09 15:53:07 +01:00
alexey.lysiuk
30204d6072 - made ZMusic library required for non-MSVC targets 2020-02-09 16:48:07 +02:00
Christoph Oelckers
6231cec7c1 - sound backend update. 2020-02-09 13:26:51 +01:00
Christoph Oelckers
9310c25a7b - -addon 0 seems to be a valid parameter... 2020-02-09 09:48:55 +01:00
Christoph Oelckers
598ce8a2ef - increased amount of vertices to allow handling voxel packs.
This is merely a stopgap until the code can be properly refactored.
2020-02-09 08:32:40 +01:00
Christoph Oelckers
1054356cef - fixed CD music playback in SW on maps with no MIDI defined. 2020-02-08 21:37:32 +01:00
alexey.lysiuk
67b5cd2cb3 - disabled progress bar on Cocoa start window 2020-02-08 16:56:52 +02:00
NoOneBlood
5d6ac932d3 Removed IsItemSprite, IsWeaponSprite, IsAmmoSprite function duplicates 2020-02-08 12:01:24 +01:00
Christoph Oelckers
681155de65 - fixed GOG path lookup.
I was unable to verify the Steam paths so they may or may not work.
2020-02-07 22:23:33 +01:00
NoOneBlood
e79a693313 Refactor of NOONE_EXTESNIONS:
All functions and definitions was moved to nnexts.h and nnexts.cpp files
to minimize ifdefs and generally make code more clear

# Conflicts:
#	GNUmakefile
#	platform/Windows/nblood.vcxproj
#	platform/Windows/nblood.vcxproj.filters
#	platform/Windows/props/build_common.props
#	source/blood/src/actor.cpp
#	source/blood/src/ai.h
#	source/blood/src/aiunicult.cpp
#	source/blood/src/blood.cpp
#	source/blood/src/db.cpp
#	source/blood/src/eventq.cpp
#	source/blood/src/gameutil.cpp
#	source/blood/src/gameutil.h
#	source/blood/src/loadsave.cpp
#	source/blood/src/player.cpp
#	source/blood/src/player.h
#	source/blood/src/triggers.h
#	source/blood/src/view.cpp
2020-02-07 22:23:33 +01:00
alexey.lysiuk
8ee516086b - added default soundfont
Using SC-55 Presets from https://www.vogons.org/viewtopic.php?f=9&t=45600

https://forum.zdoom.org/viewtopic.php?t=67284
2020-02-07 22:36:37 +02:00
terminx
b214a67853 Minor clipping fix
git-svn-id: https://svn.eduke32.com/eduke32@8608 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-07 18:55:56 +01:00
terminx
ba7de01d7f This should be ifndef NETCODE_DISABLE
git-svn-id: https://svn.eduke32.com/eduke32@8604 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-07 18:55:56 +01:00
alexey.lysiuk
c54f813ea9 - fixed shifting of the current item in save/load menus
Virtual <New save game> item wasn't taken into account
2020-02-07 08:06:09 +01:00
nukeykt
438fa1b267 Blood: prevent player struct OOB issues
# Conflicts:
#	source/blood/src/view.cpp
2020-02-06 18:48:23 +01:00
nukeykt
389ac695de oops #2 2020-02-06 18:48:02 +01:00
nukeykt
8d99df7dec oops
# Conflicts:
#	source/blood/src/demo.cpp
2020-02-06 18:48:02 +01:00
nukeykt
9cc4d9f432 Blood: workaround dudeInfo OOB issue
# Conflicts:
#	source/blood/src/actor.cpp
#	source/blood/src/demo.cpp
#	source/blood/src/dude.cpp
#	source/blood/src/dude.h
2020-02-06 18:47:26 +01:00
Christoph Oelckers
215cb14401 - use a non-0 depth bias for sprites.
Hopefully this helps fixing the z-fighting issue with wall sprites in some Blood maps.
2020-02-06 18:44:06 +01:00
alexey.lysiuk
1479e1feae - unified demo path handling for all platforms
The current game subdirectory is now created on all platforms
2020-02-06 12:04:51 +01:00
alexey.lysiuk
787211c9dc - unified saved games path handling for all platforms
The current game subdirectory is now created on all platforms
Added support for -savedir command line switch for all platforms
Removed save_dir CVAR in favor of cl_savedir which was available on Windows only
Made cl_savedir CVAR global instead of different value per each game
2020-02-06 12:04:51 +01:00
Christoph Oelckers
67a2952ead - fixed RR's music. 2020-02-05 22:03:42 +01:00
Christoph Oelckers
803e57c3b3 - fixed: Reverb must be fully disabled when starting the SW intermission. 2020-02-05 20:25:18 +01:00