Commit graph

1465 commits

Author SHA1 Message Date
Shpoike
9119c1d546 Merge branch 'master' of https://git.code.sf.net/p/quakespasm/quakespasm into HEAD 2021-09-03 06:27:09 +01:00
Andrei Drexler
401aa52d45 Compensate viewmodel distortion at fov > 90
See: https://github.com/Novum/vkQuake/issues/281

Controlled by new cvar cl_gun_fovscale (defaults to 1).
Based on code from Qrack:
3bc2862b1a/gl_rmain.c (L2384-L2392)
2021-09-02 20:50:50 +03:00
Guillaume Plourde
b796e366db q64 rerelease 2021 bsp support
see https://github.com/Novum/vkQuake/pull/356
2021-09-02 20:50:50 +03:00
Ozkan Sezer
3af9ad4e04 2021 rerelease support: read the localization file from QuakeEX.kpf
uses a customized and highly stripped down miniz version. also move
localization file reads to SDL_RWops, and update the documentation.
2021-09-01 14:00:00 +03:00
Ozkan Sezer
4e1d132f31 Raised MAX_GLTEXTURES limit from 2048 to 4096 for now per Eric's request 2021-08-31 15:50:28 +03:00
Andrei Drexler
9d7f9eac6f Fix bogus extra localization entries on Windows
Due to CRLF translation the value returned by fread in text mode can be less than the size of the file, leaving bogus data at the end of the buffer. Since the parser can already handle CRLF-terminated lines, and when reading directly from QuakeEX.kpf there would be no CRLF translation anyway, we can just open the file in binary mode.
2021-08-31 15:50:02 +03:00
Shpoike
7ba6c4474b Merge Quakespasm's post-fork changes into QSS (rebased to make them compatible) 2021-08-31 06:43:13 +01:00
Shpoike
085ff518fa Add rcon command, let csqc handle some relevant console commands. 2021-08-31 04:59:13 +01:00
Shpoike
c6ecb243d6 Try to mimic vanilla's allsolid behaviour a bit better, for rogue's lavamen. 2021-08-31 04:59:13 +01:00
Shpoike
03435446b4 Don't bug out when a bmodel is late cached (just rebuild all the things to deal with it). 2021-08-31 04:59:13 +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
clickdevin
fa5c83b079 Fix a macro that creates a syntax error on MSVC 2021-08-31 04:59:13 +01:00
Shpoike
069319ca99 Fix server stack corruption crashes. 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
3fae242613 Small tweaks to make builds more deterministic. 2021-08-31 04:59:13 +01:00
Shpoike
f675ce9b95 Mask off sky depth after drawing skyrooms, to avoid nasty surprises. Also don't get confused by the viewmodel's depthhack. 2021-08-31 04:59:13 +01:00
Shpoike
4e3ac66f63 Fix skyrooms when using csqc. 2021-08-31 04:59:13 +01:00
Shpoike
49878a92a3 Undo a debug change to limit unreliable packet sizes by implementing protocol-specific limits according to what that protocol's primary client actually accepts. This should fix missing sound events. 2021-08-31 04:59:13 +01:00
Shpoike
734234c5db Handle our spanned snapshots a bit better by not messing up interpolation. 2021-08-31 04:59:13 +01:00
Shpoike
d6fd6076b8 Tweak qsextensions.qc slightly to try to work around DP-defined weirdness. 2021-08-31 04:59:13 +01:00
Shpoike
fdb19a1dac Allow users to block specific named qc extensions. 2021-08-31 04:59:13 +01:00
Shpoike
bfb0f04708 Fix r_scale with csqc active. 2021-08-31 04:59:13 +01:00
Shpoike
c59f3e56f6 Add input_cursor_* fields to csqc and ssqc for use as custom csqc->ssqc data. 2021-08-31 04:59:13 +01:00
Shpoike
b186ba61cb Add missing localsound builtin for menuqc. 2021-08-31 04:59:13 +01:00
Shpoike
49d0390828 Fix protocol-based qc extensions not getting reported properly. 2021-08-31 04:59:13 +01:00
Shpoike
52bb3299b7 Another day, another bug found by Polo - this time in sendevent with entity references. 2021-08-31 04:59:13 +01:00
Shpoike
27f20b277e Fix copyentity builtin. 2021-08-31 04:59:13 +01:00
Shpoike
98c6ddd80d Give a more helpful warning when mods try to play empty sound names. 2021-08-31 04:59:13 +01:00
Shpoike
32e6191f3f QS might crash in a couple of places if a func_t is negative. Lets prevent that from ever being true. 2021-08-31 04:59:13 +01:00
Shpoike
4e0dcb2f8d Don't confuse ourselves when datagrams get full. This fixes 'new entity without reset' messages. 2021-08-31 04:59:13 +01:00
Shpoike
8bf2fd636f o.O less sounds allowed than precaches?.. no longer! 2021-08-31 04:59:13 +01:00
Shpoike
2d75f02326 Try to fix signon buffer size limitation that Qmaster reported. 2021-08-31 04:59:13 +01:00
Shpoike
d6ccf1a9ae Add some notes about quirky symbols. 2021-08-31 04:59:13 +01:00
Shpoike
9803358379 Fix issue with hipnotic's cutscene's svc_fastupdate overwriting entity delta state. 2021-08-31 04:59:13 +01:00
Shpoike
f35cb691a4 Fix bug with SendEntity+Packetloss. 2021-08-31 04:59:13 +01:00
Shpoike
29cc8a3183 Fix view matrix skew bug. 2021-08-31 04:59:13 +01:00
Shpoike
3f6c3a9da5 And fix eg playdemo arg completion too. 2021-08-31 04:59:13 +01:00
Shpoike
d6a25b37bc Fix 'maps' command not listing files in paks/pk3s. 2021-08-31 04:59:13 +01:00
Shpoike
b6df94c807 irrelevant comment updates. 2021-08-31 04:59:13 +01:00
Shpoike
ec2123f042 Add project+unproject csqc builtins, for converting between 2d and 3d space (eg cursor interactions). 2021-08-31 04:59:13 +01:00
Shpoike
43bf160e0c Fix csqc's view_angles global. 2021-08-31 04:59:13 +01:00
Shpoike
521bc5aab4 Add a 'dir' command, to help people with figuring out which files are where. 2021-08-31 04:59:13 +01:00
Shpoike
343ee56c1d Sythesize extension fields for mods that don't define them. This allows scale+colormod to be used, even for classic. 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
5695ffe2d5 gl_info will no longer truncate the extensions list. 2021-08-31 04:59:13 +01:00
Shpoike
4b1133efc3 Grr, quakespasm's makefile doesn't do dependancies properly. 2021-08-31 04:59:13 +01:00
Shpoike
6ebdec2f1e Accidentilly changed the default texture filtering mode. oops. 2021-08-31 04:59:13 +01:00
Shpoike
2bb1c8c96f Make sure runes get saved to saved games, instead of getting lost or corrupted on map restart. 2021-08-31 04:59:13 +01:00
Shpoike
074c31e414 Refrain from reporting qc extensions that depend upon disabled protocol extensions. 2021-08-31 04:59:13 +01:00
Shpoike
fe6f65306c Try to improve robustness when playing nehahra. 2021-08-31 04:59:13 +01:00
Shpoike
e0cc588ca3 Forgot to actually check the hitcontents. 2021-08-31 04:59:13 +01:00
Shpoike
58261f7580 Stop monsters from being able to step into the lower part of solid pushers (fixing bug from content-overridees feature). 2021-08-31 04:59:13 +01:00
Shpoike
4b36084023 If it stops dumptruck_ds from complaining, we'll make these prints more annoying, just not fatal. 2021-08-31 04:59:13 +01:00
Shpoike
43b704a54c Make sure startmap_sp alias is created even if menuqc init crashes out. Also fix another missing Cbuf_AddText \n. 2021-08-31 04:59:13 +01:00
Shpoike
afdb605130 Make sure configs are \n terminated, so can't merge with whatever command came after the exec command. 2021-08-31 04:59:13 +01:00
Shpoike
34a87f4034 Someone forgot a \n on some intel-specific Cbuf_AddText hack. 2021-08-31 04:59:13 +01:00
Shpoike
0ca6d9ad77 Fix host_errors with csqc+r_showbboxes. 2021-08-31 04:59:13 +01:00
Shpoike
69aa507143 Fix polyblend not working with full csqc. 2021-08-31 04:59:13 +01:00
Shpoike
1d9e73a36f Add support for loading 24bit replacements for the original content. Add PRECACHE_PIC_WRAP(from dp, disables npot padding+scrap, we already don't otherwise clamp), and PRECACHE_PIC_TEST(from fte, for consistency). 2021-08-31 04:59:13 +01:00
Shpoike
4decec980e Fix lightning beams missing with full csqc. 2021-08-31 04:59:13 +01:00
Shpoike
317df647ac Make v_gunkick 1 behave all juddery like QS did with its lame protocols. v_gunkick 2 (lerp) no longer makes assumptions about update intervals so no longer acts all weird as a result of getting smaller-but-more-frequent changes. 2021-08-31 04:59:13 +01:00
Shpoike
6d78e39efe (simple)csqc wasn't seeing the right stat values with old protocols. 2021-08-31 04:59:13 +01:00
Shpoike
35aa21f27c Switch to showing commit dates for version numbers instead of borrowing the QS version we're forked from. 2021-08-31 04:59:12 +01:00
Shpoike
e83edff77b Fix csqc not receiving +showscores console commands. 2021-08-31 04:59:12 +01:00
Shpoike
7aca9e0b87 Mute not-watervised messages for maps with no fluids on them (eg AD's rubble models). Sock doesn't like developer prints. 2021-08-31 04:59:12 +01:00
Shpoike
a0d2c8a4db Force interpolation resets on new entities (to fix weird lerp glitches common in Copper) 2021-08-31 04:59:12 +01:00
Shpoike
bc768f33bc cl_warncmd wasn't getting re-enabled properly. 2021-08-31 04:59:12 +01:00
Shpoike
11ba91eed7 Clarify skyroom arg usage. 2021-08-31 04:59:12 +01:00
Shpoike
d00c9b2ec4 This should have been in one of the earlier commits. 2021-08-31 04:59:12 +01:00
Shpoike
ec7b4fcadb Minor behavioural correction. 2021-08-31 04:59:12 +01:00
Shpoike
ee51277ed8 For parity with fte's particle system. 2021-08-31 04:59:12 +01:00
Shpoike
2631235d31 Allow findchain builtins to accept a chain field for feature parity with DP and FTE. 2021-08-31 04:59:12 +01:00
Shpoike
f232be4f77 Allow search_begin to filter by package names. 2021-08-31 04:59:12 +01:00
Shpoike
8915c41e0c Add writetofile, getentitytoken, and checkpvs builtins. Fix parseentitydata to detect end-of-string more easily. 2021-08-31 04:59:12 +01:00
Shpoike
8435cfc7fa Make the generated qsextensions.qc more complete (and somewhat more formulaic). 2021-08-31 04:59:12 +01:00
Shpoike
f28dee8b72 Add DP_CSQC_QUERYRENDERENTITY extension. 2021-08-31 04:59:12 +01:00
Shpoike
e8cd3bd846 Finally give the SSQC the ability to send entity updates to the CSQC itself (as well as detect when a client is running CSQC). 2021-08-31 04:59:12 +01:00
Shpoike
227db32137 Allow SSQC to make use of SV_RunClientCommand, to match the custom player prediction in CSQC. 2021-08-31 04:59:12 +01:00
Shpoike
fc48474030 Give csqc access to the lightstyle+particle+makestatic+ambientsound builtins instead of depending on the server for them. 2021-08-31 04:59:12 +01:00
Shpoike
fc391f4ba5 Allow csqc to intercept temp-entities, as well as generate clientside ones. 2021-08-31 04:59:12 +01:00
Shpoike
a5e0cb1a52 Allow csqc to set physics_mode for support for engine movetypes in csqc. Also provide support for .customphysics too. 2021-08-31 04:59:12 +01:00
Shpoike
d18b907e43 Maintain an input journal so that CSQC can implement custom player prediction, if it wants. 2021-08-31 04:59:12 +01:00
Shpoike
d4094cbaa0 Add the stuff for listener things. 2021-08-31 04:59:12 +01:00
Shpoike
03ec27b5f0 Allow csqc to implement CSQC_UpdateView for full control over the 3d scene. 2021-08-31 04:59:12 +01:00
Shpoike
03b02fe52a Allow csqc to trace against deltaed entities. 2021-08-31 04:59:12 +01:00
Shpoike
ec82ca0448 Allow csqc to read csqc entity updates, prints, and centerprints. 2021-08-31 04:59:12 +01:00
Shpoike
3c848f993e Fix use of potentially-unrelated global instead of local with MOVETYPE_WALK. 2021-08-31 04:59:12 +01:00
Shpoike
277f833ef7 Allow csqc to draw proper 3d scenes. 2021-08-31 04:59:12 +01:00
Shpoike
929dd85164 Implement csqc validation, we can start on giving more capabilities now that we can distinguish between modified and unmodified csprogs. 2021-08-31 04:59:12 +01:00
Shpoike
e04c097eb8 More formulaic registration of various qc extension fields+funcs, including some that are still unused in this revision. 2021-08-31 04:59:12 +01:00
Shpoike
2e92fbf1d4 Strip residual sw-specific colormap stuff. 2021-08-31 04:59:12 +01:00
Shpoike
b1f93c7f3d Add md4 support to digest_hex (will be needed to validate csqc) 2021-08-31 04:59:12 +01:00
Shpoike
78758f0868 Enable PEXT1 handshakes as well as just PEXT2. 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
367b799998 r_fastsky should skip skyroom drawing too, for people with really slow computers. 2021-08-31 04:59:12 +01:00
Shpoike
17f5210a14 world.angles should be ignored for compat reasons (fixes e3m3 and a few custom maps). 2021-08-31 04:59:12 +01:00
Shpoike
2885bcae83 Fix a couple of stupid bugs. 2021-08-31 04:59:12 +01:00
Shpoike
e39c88a58b Add alternative model lerping mode for proper compat with csqc/menuqc. 2021-08-31 04:59:12 +01:00
Shpoike
e63dae5f49 Fix more key_lines masks from 31 to CMDLINES-1. 2021-08-31 04:59:12 +01:00