Commit graph

1,609 commits

Author SHA1 Message Date
Christoph Oelckers
d1abc3eb8c renamed things in file system to reduce Doom specific terminology. 2024-11-24 18:05:11 +01:00
Christoph Oelckers
a3475d3973 FileSystem cleanup.
* split off the Doom specific lookup with short 8 character names into its own class and cleaned up the interface a bit.
* get rid of all short name aliasing 'optimization' - modern compilers are capable of optimizing memcmp and memcpy to use equally efficient code so none of these hacks are needed anymore.
* added reader for Descent 3's HOG2 format - yet another of these endless uncompressed formats with just a different directory structure...
2024-11-24 17:59:16 +01:00
Christoph Oelckers
634a646c2d take namespace enum out of namespace and added CheckNumForAnyName and CheckNumForFullNameInFile to clarify the meaning of CheckNumForFullName.
This is to take some renaming noise out of the upcoming refactoring.
2024-11-24 17:59:16 +01:00
Christoph Oelckers
ba2800d698 renamed GetFileFullName to GetFileName 2024-11-24 17:59:15 +01:00
Christoph Oelckers
9b62379645 removed -hashfiles after finding out it had been broken for an extended time period.
this is a strong indicator that nobody was using it - and I do not feel like fixing such an invasive feature with little utility.
2024-11-23 21:10:11 +01:00
Christoph Oelckers
e0778e23eb M_SaveDefaults is also not part of the common engine backend. 2024-11-23 20:39:23 +01:00
Christoph Oelckers
ca3b0737ea contain the statnum hack for visual thinkers on the game side.
This got used from precisely one place, which can easily handle it itself.
2024-11-23 20:39:23 +01:00
Christoph Oelckers
2dcd0fcda4 moved another declaration out of a global header. 2024-11-23 20:39:23 +01:00
Christoph Oelckers
f2b52f620b move game-specific CVAR out of low level system code. 2024-11-23 20:39:22 +01:00
Boondorl
3ea5be1ea7 Reworked FRandom constructors
Removes ambiguity while keeping old constructor syntax in check for better overall portability.
2024-11-15 23:56:23 -03:00
Boondorl
a1a4a97dcd Added RNG snapshotting for predicting
Allows RNG seeds to be played back in a predictive way paving the road for predictive behaviors that rely on RNG.
2024-11-15 23:56:23 -03:00
Boondorl
597b06ae52 Added CRandom functions
Unique RNG namespace for client-side effects and HUDs. Identifiers for these cannot clash with identifiers that affect the playsim making them completely safe to use in HUD elements. They also won't be saved.
2024-11-15 23:56:23 -03:00
Boondorl
4c140224a2 Removed network message entirely
Header needs to include more data to properly filter someone trying to connect
2024-11-15 23:54:04 -03:00
Boondorl
8a14497d8c Port NCMD_EXIT to i_net file 2024-11-15 23:54:04 -03:00
Boondorl
b6fd65988b Added stubs for NetClose on other platforms
These will need someone with much better experience to implement correctly to abort the net window
2024-11-15 23:54:04 -03:00
Boondorl
e898139690 Fixed static error for SendConAck 2024-11-15 23:54:04 -03:00
Boondorl
3f4513c571 Updated packet handling
Added "game in progress" message for players trying to join late.  Improved "unknown host" packet logging to only log when truly unknown. Correctly abort network window so game can process fatal errors instead of hanging on waiting to connect. Unexpected disconnects in lobby now correctly update the state of the game.
2024-11-15 23:54:04 -03:00
Ricardo Luís Vaz Silva
925b62b8c5 serialize animData, update subsector on deserialize 2024-11-13 15:47:22 -03:00
Ricardo Luís Vaz Silva
174344ddf1 move visual thinker definition into its own header 2024-11-13 15:47:22 -03:00
Rachael Alexanderson
220200d836
Revert "- error out if destroying a canvas object"
This reverts commit 8e16822ef9.
2024-11-08 14:26:51 -05:00
Boondorl
d85d04f421 Fixed crash on functions with missing return values 2024-11-05 01:02:19 -05:00
Christoph Oelckers
a899571d8c got rid of strlwr.
The 3 remaining uses were completely redundant.
2024-11-02 09:07:07 +01:00
Christoph Oelckers
a14bba3561 Check array size for overflow.
Since ZScript is a 32 bit VM, the largest safe value for an array's physical size is 2GB. Any larger value will be destroyed by the compiler which relies on signed 32 bit values too much.
2024-10-25 08:47:19 +02:00
Christoph Oelckers
ee6991e6d8 Do a check if a local variable exceeds the available stack space.
Windows stack is 1 MB so play it safe and allow 512 kb as max. stack space for a single function.
2024-10-25 07:55:17 +02:00
Rachael Alexanderson
8e16822ef9
- error out if destroying a canvas object 2024-10-22 20:51:56 -04:00
Ricardo Luís Vaz Silva
d0e6bce4e6 add CVar to control footstep volume 2024-10-21 14:53:53 -03:00
nashmuhandes
12c6d1361a Move no-mipmapping from actor renderflag/particle flag, to a material property in GLDEFS, where it makes more sense. The feature was introduced in the short-lived engine version of 4.13 which was deemed too broken and needed to be replaced with a newer version anyway, so might as well perform an API-breaking change at this point in time. Note that this currently only works for sprites (its primary targeted use case) -- walls, flats and models can be patched in later. 2024-10-19 18:35:54 -04:00
Christoph Oelckers
e81d563cf4 made FCommandLine::operator[] return a const char * and fixed two places where this triggered a compile error. 2024-10-19 13:22:30 +02:00
Christoph Oelckers
c0bd024094 do not open resource files from non-open file readers. 2024-10-19 13:11:48 +02:00
Christoph Oelckers
261881e0d7 do not set console mode from an uninitialized variable. 2024-10-16 16:54:15 +02:00
Rachael Alexanderson
2a8b629a12
- keep ENABLE_VIRTUAL_TERMINAL_PROCESSING mode in isolated console mode 2024-10-16 06:05:15 -04:00
Rachael Alexanderson
fcf65bee27
- we don't need these includes anymore 2024-10-16 06:01:34 -04:00
Rachael Alexanderson
0a9eb474cd
- fix isolated console mode (i.e. launching from explorer.exe) 2024-10-16 05:59:59 -04:00
Kaelan
81f2bef4ac Further cleanup as per recommendations 2024-10-16 00:39:32 -03:00
Kaelan
b4d214a0cf add PARAM_PROLOGUE 2024-10-16 00:39:32 -03:00
Kaelan
9d725276ac Add manual config saving to CVar struct
Allows for calling to save custom cvars manually to ensure they're reliably stored. As is, the only way to ensure that cvars are saved is to safely/manually close out GZDoom, meaning if a crash occurs, that data is lost.

THis is very detrimental to mods/standalone projects that rely on CVars for storing custom data, and or data that transcends save games.
2024-10-16 00:39:32 -03:00
Rachael Alexanderson
70eb4b974d
- enable console subsystem processing for Windows, enable runtime detection 2024-10-15 10:50:24 -04:00
Cacodemon345
c603494057
Interpolate non-Burn screen wipes 2024-10-14 03:47:41 -04:00
Jan Engelhardt
8e4080f8d1 Resolve compiler warning about destructor syntax
gcc-14 warns:

tarray.h:927:9: warning: template-id not allowed for destructor in C++20 [-Wtemplate-id-cdtor]
  927 |         ~TDeletingArray<T, TT> ()
2024-10-12 12:00:32 -03:00
Rachael Alexanderson
24792913ca
- don't spam the console log if there's math errors - mostly affects Linux/MacOS because there is no distinction from console apps or GUI apps so they put all the data in the console which can cause lag 2024-10-10 07:28:29 -04:00
Christoph Oelckers
d90de3a8a1
avoid floats in integer math. 2024-10-09 09:15:29 -04:00
Christoph Oelckers
413aefb0ab added CVAR to select the preferred MOD player and SNDINFO option to set it per song. 2024-10-05 12:37:55 +02:00
Christoph Oelckers
f0676cdf01 fixed a few memory leaks 2024-10-05 10:22:05 +02:00
Christoph Oelckers
3798fd815f the MISSILE(EVEN)MORE flags still need to be accessible by ZScript for backwards compatibility.
Since these do not exist anymore an internal interface to Handle/CheckDeprecatedFlags was added.
2024-10-03 12:32:09 +02:00
Cacodemon345
e88d912892 ID24 interlevel lumps implementation 2024-10-01 16:48:07 +02:00
Rachael Alexanderson
0b3ee04025
- bail out if shape is null in F2DDrawer::AddShape 2024-09-30 02:09:52 -04:00
Boondorl
1e96ed31aa Exported DPrintf
Allows for custom debug message handling using the built-in
2024-09-29 17:56:16 -04:00
Rachael Alexanderson
3524d06813 - export FFont::GetChar() to ZScript 2024-09-20 20:00:01 +02:00
Ricardo Luís Vaz Silva
79dacdf1b7 Properly fix double interpolation for IQM models 2024-09-13 17:05:22 -03:00
Ricardo Luís Vaz Silva
1429e22441 rework interpolation to allow for precalculated frames 2024-09-13 17:05:22 -03:00