Commit graph

73 commits

Author SHA1 Message Date
Shpoike
49822069a3 Fix stupid zip decompression error. 2023-07-07 12:10:53 +01:00
Shpoike
3cb679f310 Give QSS some basic support for extended qc data types. 2023-07-06 05:16:32 +01:00
Shpoike
2c38d5b3e3 Merge remote-tracking branch 'sf/master' into qss 2023-03-18 12:38:25 +00:00
Ozkan Sezer
c3ef90eb36 replaced Sys_FileTime() with Sys_FileType() from uhexen2 project. 2022-10-25 10:35:20 +03:00
Shpoike
1b911ae1f8 Merge tag 'quakespasm-0.94.6' into qss 2022-07-15 14:56:57 +01:00
Shpoike
7a97911ff4 Merge tag 'quakespasm-0.94.5' into qss 2022-07-15 14:11:03 +01:00
Ozkan Sezer
3581ff989d can't use C11 _Generic macros with C++ 2022-06-22 05:50:00 +03:00
Ozkan Sezer
02b953e993 use C11 _Generic macros for q_min, q_max and CLAMP, if available.
.. if not, then use GCC expression macros for them, if available.
2022-06-12 14:32:28 +03:00
Shpoike
26f0bc4682 Merge remote-tracking branch 'sf/master' into qss
(cl_startdemos stripped in favour of QSS's existing cl_demoreel cvar. osx project files ignored.)
2022-04-27 22:32:40 +01:00
Andrei Drexler
9582f6c7b6 Change STRUCT_FROM_LINK to avoid potential undefined behavior 2022-03-01 11:20:10 +03:00
Shpoike
9119c1d546 Merge branch 'master' of https://git.code.sf.net/p/quakespasm/quakespasm into HEAD 2021-09-03 06:27:09 +01:00
Shpoike
3ac910c32d Try to make use of win32/posix LFS for larger pk3s. Use a couple of other unsigned types for larger bsps too, now that we're supposedly able to exceed the 2gb limit on file sizes. 2021-08-31 04:59:13 +01:00
Shpoike
7bdf911d3a Handle sound flags, providing reliable+unicast flags. Also handle other sound flags+networking that only fte clients will benefit from right now. 2021-08-31 04:59:13 +01:00
Shpoike
2735d0f960 Add fte's sounds=-1,noise=filename for named music tracks instead of just numbers. 2021-08-31 04:59:13 +01:00
Shpoike
f232be4f77 Allow search_begin to filter by package names. 2021-08-31 04:59:12 +01:00
Shpoike
4aee746efa Reduce duplicate code a little. 2021-08-31 04:59:12 +01:00
Shpoike
bec4f4c0c5 Implement serverinfo and userinfo. Both can be read in ssqc via infokey, and via serverkey/getplayerkeyvalue in csqc. Can be changed/viewed via serverinfo/setinfo/user console commands 2021-08-31 04:59:12 +01:00
Shpoike
5842eb70e8 Added search_getpackagename builtin to query which package a file is inside (flags&2 to get the gamedir of the package/gamedir too), also let the 'cvar' pseudo-cvar be queried via cvar_string. 2021-08-31 04:59:12 +01:00
Shpoike
54538a054a Menuqc support. Only tested against menusys so far. 2021-08-31 04:59:12 +01:00
Shpoike
402fedb147 Try to fix compiling in msvc, and try to avoid the issue in future too. 2021-08-31 04:59:12 +01:00
Shpoike
85e9399f2f Fix support for replacementdeltas with ent counts above 32767 (in case other engines use qss as their reference for support, or if it gets bumped later). 2021-08-31 04:59:12 +01:00
Spike
fe4b224c7d Added support for simple csqc.
This is a subset of csqc, with alternative entry points that can be invoked by compat wrappers.

Also added sv_gameplayfix_setmodelrealbox cvar. Default value of 1 matches QuakeSpasm, whereas a value of 0 matches vanilla quake's behaviour.
2021-08-31 04:59:11 +01:00
Spike
d76ca606bf All changes present in QSS-R7, plus
md3 support
quoth/etc bug fix
strzone bug fix
png/jpg replacement wall textures
rewrote mdl rendering to always use arrays, relaxing vertex+tri limits.
removed static ents limit
fixed ambient_level not working at high framerates.
2021-08-31 04:59:11 +01:00
Andrei Drexler
83af8d060f Add basic localized strings support for 2021 re-release
See https://github.com/Novum/vkQuake/pull/345
2021-08-29 17:11:28 +03:00
Ozkan Sezer
3cf6946ebd revise the function attributes usage: do not use the gcc __attribute__
directly, but define proper macros for each attribute we do or may use.
also support MSC along the way for example with the noreturn attribute.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1440 af15c1b1-3010-417e-b628-4374ebc0bcbd
2017-07-28 12:50:10 +00:00
Eric Wasylishen
c827ccaa66 Host_Loadgame_f: fix for arrow characters appearing in multiline messages
on Windows, a regression introduced in the Host_Loadgame_f rewrite r1398

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1405 af15c1b1-3010-417e-b628-4374ebc0bcbd
2017-05-09 00:01:41 +00:00
Eric Wasylishen
8011b3f9fd Host_Loadgame_f: rewritten version loads the whole .sav into memory
+ avoids "Loadgame buffer overflow" when loading saves from QS-Spike/DarkPlaces containing large comments
+ removes ugly } hack
+ should be a bit faster as we avoid calling fgetc for every byte

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1398 af15c1b1-3010-417e-b628-4374ebc0bcbd
2017-04-16 02:53:06 +00:00
Eric Wasylishen
43b509ba4f Add "apropos" command from QS-Spike
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1393 af15c1b1-3010-417e-b628-4374ebc0bcbd
2017-04-02 18:18:57 +00:00
Eric Wasylishen
5b21d5935f RMQ protocol (999) support, adapted from RMQEngine
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1313 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-06-24 06:15:41 +00:00
Ozkan Sezer
b9032b7815 copyright years, general tidy-up, remove unused d_ifacea.h.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1059 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-09-22 08:55:46 +00:00
Ozkan Sezer
717b452da0 moved Host_Game_f to common.c, made it to use COM_AddGameDirectory(). moved in-memory pak structures, searchpatch structure and searchpath global declarations to common.h. adjusted affected extra patches.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1003 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-09-08 21:10:33 +00:00
Ozkan Sezer
65cd7e75e0 ditch fmin/fmax and use plain q_min/q_max
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@922 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-06-22 05:50:39 +00:00
Ozkan Sezer
66d6fc077a revert r907 (fmin()/fmax() is available with vs2012 and newer. patch from Eric Wasylishen.)
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@921 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-06-21 20:29:11 +00:00
Ozkan Sezer
58b3577721 fmin()/fmax() is available with vs2012 and newer. patch from Eric Wasylishen.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@907 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-04-28 05:50:58 +00:00
Ozkan Sezer
5ad7885e70 comment out COM_DefaultExtension
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@905 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-04-27 08:33:05 +00:00
Ozkan Sezer
d941ee83db revert r903 and the old conback hack commits. change the engine
to load id1/quakespasm.pak for content customizations.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@904 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-04-27 08:28:16 +00:00
Steven
66764cfd6f Overide some old fashioned default bindings (from Eric - https://sourceforge.net/p/quakespasm/patches/17/).
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@903 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-04-26 10:28:13 +00:00
Ozkan Sezer
53e10c7098 Avoid using COM_DefaultExtension() whenever possible: it may lead
to unpredictable results. Use a new procedure COM_AddExtension()
which appends the given extension to the path if the one it has,
if any, doesn't match. In Host_Game_f(), reject "." as the path.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@902 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-04-26 07:50:54 +00:00
Ozkan Sezer
a95bb25134 add new stdio replacement FS_fgetc() and use it in snd_mikmod.c.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@869 af15c1b1-3010-417e-b628-4374ebc0bcbd
2013-09-27 19:51:26 +00:00
Ozkan Sezer
5e4849c61f replace all ctype.h functions/macros and strcasecmp/strncasecmp()
by locale-insensitive versions, new header q_ctype.h.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@868 af15c1b1-3010-417e-b628-4374ebc0bcbd
2013-09-25 17:01:40 +00:00
Ozkan Sezer
ffa3bf4413 Merge several FS_* and snd_codec* layer updates from uhexen2 tree:
tidy-ups in FS* stdio replacement functions. add new FS_filelength.
snd codec layer updates: changed codec_open() to operate only on a
stream pointer and moved all file open/close stuff to snd_codec.c.
codec_open now only returns true or false upon success or failure
instead of a stream pointer. added new snd_codec.c toplevel helper
S_CodecForwardStream(), which allows one codec to hand over its
stream from its codec_open() to another codec. Support for tracker
(mod) music, including support for Unreal umx containers. (might
be useful if we ever make a Nehahra version of the engine some day.
edit the makefiles to enable when compiling.)


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@867 af15c1b1-3010-417e-b628-4374ebc0bcbd
2013-09-25 11:01:12 +00:00
Ozkan Sezer
c96c275334 some common.c cleanup: Made COM_InitFilesystem() public through common.h,
moved its calling from COM_Init() to Host_Init() just after COM_Init().
Moved registration of registered and cmdline cvars and COM_Path_f command
and the calling of COM_CheckRegistered() to COM_InitFilesystem(). Removed
unused memsearch(). Fixed the stupidity in leading space elimination from
com_cmdline.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@573 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-12-29 15:10:18 +00:00
Ozkan Sezer
ef0062741c added COM_ExtractExtension() helper.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@561 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-12-27 14:00:33 +00:00
Ozkan Sezer
5e6212ad02 added strlcat.c and strlcpy.c: will use them later.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@558 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-12-27 11:03:39 +00:00
Ozkan Sezer
07b572b642 better buffer size safety with COM_StripExtension, COM_FileBase and COM_DefaultExtension
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@554 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-12-27 08:04:02 +00:00
Ozkan Sezer
573f49d920 added FS_fgets(). From Sander van Dijk.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@541 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-12-24 12:03:29 +00:00
Ozkan Sezer
162f18573e removed the LoadBufFile method
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@475 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-08-03 19:22:29 +00:00
Ozkan Sezer
701ae6882c a little syncing with uhexen2.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@460 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-06-12 12:25:22 +00:00
Ozkan Sezer
45498a99a4 replaced COM_FileExtension by a slightly better version from uhexen2,
renamed it to COM_FileGetExtension, added a prototype to common.h.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@454 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-05-20 20:38:11 +00:00
Ozkan Sezer
a85d8dcd6a made global host_parms a pointer, set in main(). adjusted places where
host_parms is used. made COM_Init() and Host_Init() to take no arguments.
made Sys_Init() to set host_parms->userdir: at present, it is set to
host_parms->basedir, to be changed properly when user directories are
implemented.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@443 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-04-19 16:41:45 +00:00