Commit Graph

5752 Commits

Author SHA1 Message Date
Spoike 3008072807 Fix some stupid bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5781 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-10-26 11:48:50 +00:00
Spoike 4d25c073ec big commit. :(
fix crash from qwplayers with invalid modelindexes
rework allow_skybox a little. now applies immediately.
try to fix the appears-outside-of-map bug, again.
dir *.wav now shows a little extra info on mouse-over.
try loading music file extensions that we expect to be able to play via ffmpeg, not just the ones that are directly supported.
rework the hidden fps_presets, show them with tab completion.
fix a possible crash with r_temporalscenecache
fix lightmap updates on submodels not happening properly with the scenecache.
fix the serious memory leak with scenecache.
add r_glsl_pbr cvar to force use of pbr pathways in our glsl.
fix bug in alsa output not supporting float output properly.
preliminary work to have the mixer use floating point mixing. disabled for now.
try to update sys_register_file_associations on linux, still needs work though.
try to work around nquake's config quirks, so config files don't get overwritten.
repackage quake's conchars in order to add padding. this should avoid extra junk on the outside of glyphs.
give fteqcc(commandline version) some extra package extration/creation support. our paks should be more end-user-friendly, and our spanned pk3s are awesome.
write rune state to legacy saved games, so we don't ever have the missing-runes bug ever again...



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5780 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-10-26 06:30:35 +00:00
Eukara 0ceff5a31d Fix QC adddecal() calls from crashing the engine when the affected model hasn't fully loaded.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5779 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-10-23 02:50:11 +00:00
Spoike 697edaac76 Optimise lightmap updates with threaded world rendering.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5778 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-10-15 00:17:37 +00:00
Eukara 34ff2cd788 Added fteqw_readme.txt, a README file for binary releases.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5777 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-10-13 13:00:16 +00:00
Spoike 899c54223e Some build fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5776 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-10-06 04:30:48 +00:00
Spoike 432bc96456 Add r_meshroll, like r_meshpitch (hexen2 requires it set to -1 - they made the bug worse).
HTTP client code now tracks the reason for failure better (so we can distinguish between dns, no response, disconnects, and tls cert issues).
Downloads menu shows reasons for failure for its various sources.
make hexen2's +infoplaque button work even when tab isn't held! Yes! usability! who'd a thought it?
Try to clean up some client-only build issues.
Added 'librequake' as a recognised game name (mostly so that we can reuse the quake-specific engine compat settings.
.map support now supports patches enough to query+create(+network)+select them. Collisions are basically defective though.
qcc: Remove char as default keyword.
qcc: Fix some recent regressions.
sv: Add 'sv_protocol csqc' setting to force csqc protocols on clients that disabled handshakes, for mods that NEED csqc support. other options include 'fte1' and 'fte2', if you want to force extra stuff. Engines that don't support the selected protocols will crash out so only set these if your mod/map always requires it.
sv: default to qw physics whenever a mod defines the SV_RunClientCommand, even if its an nq mod.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5775 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-10-06 03:17:28 +00:00
Spoike 524fdb3dfd Fix unintended rounding issue with hexen2's movechain stuff that was preventing origin changes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5774 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-10-01 01:27:00 +00:00
Spoike 155ef1f460 better compat with hexen2's intermissions
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5773 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-30 21:03:59 +00:00
Spoike 069433abc1 Rework how fte clients handle serverinfo watervis a little. Server's setting (if set) overrides client's ruleset_allow_watervis.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5772 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-30 14:54:52 +00:00
Spoike 4cead675f6 Try to fix fteqccgui not parsing its ini file properly.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5771 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-30 00:10:22 +00:00
Spoike f3049f1b85 fix a couple of bugs in the updates junk.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5770 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-29 11:43:09 +00:00
Spoike 4de49e06d1 Try to fix some stuff that was wrong in the last commit.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5769 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-29 09:34:38 +00:00
Spoike e3fdbfcdbd qcc: Add unsigned int, long/__int64, unsigned long/__uint64, and double datatypes to qcc+qcvm.
qcc: Add '#pragma opcode enable|disable NAME' to override whether an individual opcode may be generated for the current target.
nq: Fix smartjump on nq servers.
nq: Fix enemyskin/teamskin stuff on nq servers.
Rework show_fps cvar to give a greater focus on the timings graph.
Update updates menu to allow enabling/disabling specific sources.
Add separate settings for ef_red+ef_green+ef_blue.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5768 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-29 07:09:01 +00:00
Spoike 24a9634ccc Fix pvs issue on maps with far too many leafs (was still using 16bit leaf indexes, whoops).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5767 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-28 17:13:51 +00:00
Spoike e5f358ee5e Fix tokenizebyseparator with ',,,,' returning 3 tokens instead of 5.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5766 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-21 10:34:00 +00:00
Spoike b040358b54 capturedemo wasn't respecting -nosound arg properly.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5765 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-15 09:58:29 +00:00
Spoike 378570256c Make sure -homedir arg ends with a slash, to avoid messy surprises.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5764 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-15 08:55:53 +00:00
Spoike 6094fc6ab3 '+set vid_renderer egl_headless' will now give a headless client that's able to take screenshots and video captures without creating any kind of window. Because we can.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5763 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-15 08:54:10 +00:00
Spoike 98809d99ec The ffmpeg plugin was failing due to audio format issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5762 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-15 08:51:32 +00:00
Eukara 2b21ab1164 basedir on UNIX should not be "" as the fallback.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5761 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-14 16:32:29 +00:00
Spoike b095410ce6 Make sizeof into an actual operator instead of a mere intrinsic
Char immediates now support a greater range of escapes for parity with string immediates.
Don't misparse triple field parameters as variable args+junk.
Recognise octal immediates, but warn in case it was unintended.
Fix a bug with initialised const locals.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5760 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-11 01:18:32 +00:00
Spoike ebc28bf3ef Yup, looks like we are actually using that path now...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5759 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-08 10:40:21 +00:00
Spoike 7d970f78f8 Change r_shadow_realtime_world_importlightentitiesfrommap to default to 0. This will prevent the engine from using rtlights on maps that don't have any rtlights defined. Can still be forced on a per-map basis with 'r_editlights_reload bsp', or by just changing this cvar back to 1, if you're the kind of person who MUST have rtlights. makestatic+pflags stuff can still be used if a mod wants to define its own light conversions. This should make FTE a little more palettable to the mapping community.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5758 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-08 10:38:26 +00:00
Spoike b380421e42 Lets try using _LARGEFILE64_SOURCE in 32bit linux builds. Not that anyone will notice.
Clarify the 'too many alternate clients' messages.
Gamepad movement should respond to +speed.
favour fte's nq protocols over dp ones when both are supported by the client, to boost compat with qss.
try to generate proper utf-8 filenames from player/team names when recording mvds, instead of bad char encodings.
Fix loading saved games with splitscreen enabled.
pr_dumpplatform can now optionally filter symbols via some specific external files, adding deprecated tags for any symbol not also supported by DP and QSS.
Rework CSQC globals to use macros, to ensure completeness and consistency.
rework sv_csqcdebug to use special svcs. This should make it more robust.
Fix some scary warnings when vid_reloading the vulkan renderer.
Fix a possible segfault from opengl+rtlights.
Mousewheel will now interact better with engine menus.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5757 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-08 05:11:09 +00:00
Spoike a5371f0027 Add 'using' keyword (for muting deprecation warnings), eg __using(foo) {codethatuses(foo);};
Make checkbuiltin also mute deprecation warnings for the referenced builtin within the current scope (read: usually entire containing function).
Move crc-based module-type prints to after any warnings about missing symbols.
Fix load-game bug that was causing strings to be forgotten (reported by Orl).
Add (virtual) mod+pow opcode variants that accept int types.
Add compiler flags to dump symbol lists, field lists, autocvar lists, and file lists. This replaces similar functionality from multiple -v args.
Add a little colour to a few more warnings.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5756 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-08 04:44:07 +00:00
Spoike 2ce617ce7a Update the qclib-only makefile. linux's gcc didn't like the -l ordering.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5755 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-08 03:21:27 +00:00
Eukara 42d810b320 Support for HL SPR's INDEXALPHA blend type.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5754 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-09-05 18:58:12 +00:00
Spoike 64fb49e908 Fix crash from DNS resolution failures.
Additionally attempt to work around ISPs with dodgy DNS services.
Add tls_provider cvar, for builds using both gnutls and openssl.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5753 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-26 09:30:51 +00:00
Spoike 79d851d6ea Fix some crashes with rtworld enabled.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5752 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-26 09:25:48 +00:00
Spoike 8651ff62d8 fix 24bit skins to work again
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5751 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-24 07:52:55 +00:00
Spoike 244b0681ed dont use CLOCK_MONOTONIC when not defined (should fix compile-time issue on non-posix macos, reported by rhoenie).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5750 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-24 07:50:15 +00:00
Spoike 78c88547da Update csqctest a little (trying to flesh out qss's csqc support).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5749 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-24 07:45:18 +00:00
Spoike 8dcf4db927 Fix support for extended mips.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5748 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-18 01:59:55 +00:00
Spoike da6b6c3e6c qcc: Avoid crashing from trying to warn about uninlinable inlines.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5747 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-16 04:41:11 +00:00
Spoike 0c0b6c3ed0 Try to explicitly opt in/out to windows's ASLR in release/debug builds.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5746 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-16 04:40:13 +00:00
Spoike ac4e7c396c Only try to autoupdate the fmf file if we know which file to actually update... (should fix a crash).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5745 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-16 04:00:46 +00:00
Spoike 22ea0b87d7 Try to fix up some qcc inline logic to no longer result in so many offset_0 values.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5744 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-15 04:31:27 +00:00
Spoike 51ef92fa52 Add map selection list to menusys. Some other minor tweaks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5743 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-13 10:09:39 +00:00
Spoike 744b9a25db try to fix common-symbol conflicts in windows builds.
attempt to provide some better gettext support for engine strings (especially cvar/command descriptions). still no translations available though.
try to optimise hldml rendering a little.
fix issue with menuqc models rendering as black when fog is active.
use threads to try to reduce stalls from player-skin switches.
add sys_clocktype cvar to linux builds too, with CLOCK_MONOTONIC by default.
enable dtls certificate pinning log stuff.
fix r_viewmodel_fov being used instead of fov cvar.
fix possible segfault when egl driver fails.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5742 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-13 08:39:48 +00:00
Spoike f7d46b7878 Fix clientside sv_cheats overriding server settings. Don't pointlessly stall for 5 secs when connecting via dtls.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5741 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-10 18:34:10 +00:00
Spoike 437a3091e4 Fix some recent bugs in fteqcc.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5740 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-03 10:34:44 +00:00
Spoike 48d4e97515 Try to make the readcmd builtin more robust (by erroring out if some command destroyed the qcvm during execution). Stop forceinfokey from spamming when the new value is unchanged.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5739 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-01 06:33:05 +00:00
Spoike 1d4535f5a1 Add sys_clocktype cvar for windows, for people on older versions of windows that need to work around windows timer bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5738 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-08-01 06:28:22 +00:00
Spoike b005d9fdcd Try to fix missing impulses bug.
Fix skybox fog glsl compile error.
Implement DP_QC_FS_SEARCH_PACKFILE, search_getpackagename, and search_fopen.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5737 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-21 07:58:54 +00:00
Spoike a3a0e1eae1 Do the _xyz thing for vectors in structs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5736 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-19 22:39:10 +00:00
Spoike 8a20cb3a70 Annonymous union/struct fields were not initialising their symbol data properly for vector types.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5735 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-19 16:00:31 +00:00
Spoike 4d1a45109c Fix msvc compile issue reported by ericw. Tighten some syntax checks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5734 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-19 01:38:42 +00:00
Eukara 00dc8aad4f Makefile: Force PKGCONFIG on OpenBSD
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5733 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-17 16:19:35 +00:00
Spoike 1ff329062f Fix 'enum int {};' syntax.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5732 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-16 19:23:00 +00:00