Commit graph

2485 commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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
6ffa59d684 Warn when fog rgb is specified above 2. fog rgb is supposed to be floats, not byte values. The oversaturation causes problems with skyboxes and other infinite-distance type things.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5730 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-15 23:47:04 +00:00
Spoike
457b7e5f58 Fix warnings.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5729 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-14 01:16:20 +00:00
Spoike
6bea300f30 Allow menuqc to access the clipboard. Fix some c++ish warnings. Fix SDL build linker issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5728 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-14 00:48:56 +00:00
Spoike
763888e1ff Try to fix a crash OMC had.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5724 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-07 22:05:36 +00:00
Spoike
0bda1b5c38 Add support for writing uhexen2's v7 progs files.
Try to fix issues with newer gcc not merging common symbols any more.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5720 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-07-01 05:32:21 +00:00
Spoike
856cad09cc Try to switch some types in preparation for potentially switching to 64bit types (so qc timer can use doubles for longer map uptime).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5718 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-27 19:32:49 +00:00
Spoike
ee55057f8d Make the help command easier for csqc to replace without needing to use menuqc.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5717 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-27 19:32:36 +00:00
Spoike
18b2ee695f Engine and vm changes required for tempbuffers (along with a few related builtins like findlist).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5712 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-27 19:32:08 +00:00
Spoike
7a22fb2527 Support Middle+Drag to move around in modelviewer. Fix bone orientation display. Start frametimes at the start.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5711 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-27 19:32:00 +00:00
Spoike
dfed212698 Try to handle 'r_clearcolour 1 0 0' better without getting confused by palette indexes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5707 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-20 09:17:38 +00:00
Spoike
5aa11ddbb1 makefile: attempt to fix freetype when not using makelibs (should make it slightly easier for people to compile with msys2 without needing to resort to cmake).
emenu: clean up hexen2's maplist options slightly.
emenu: modelviewer should now be slightly more friendly (click+wasd to move around).
particles: fix up randomised s coords.
csqc: try to fix issue with applycustomskin not refcounting properly.
client: [s_]precache and (new) mod_precache cvars can be set to 2 to precache the resources after load, for faster loading at the expense of some early stutter, without risking later mid-game stuttering.
gltf: add support for morphweights in a cpu-fallback path. don't expect good performance on surfaces with morphtargets for now.
gtlf: add some support for gltf1 files. far from perfect.
shaders: gltf1 semantics handling
shaders: const correctness
iqmtool: fix up mdl skin export.
iqmtool: integrate the engine's gltf2 loader. works with animated models, but unanimated ones suffer from basepose-different-from-bindpose issues.
q3bsp: hopefully fixed bih traces. still disabled for now.
qc: change default value of pr_gc_threaded to 1.
qcext: add the '__deprecated' keyword to various symbols in fteextensions.qc, now that fteqcc supports it.
ssqc: spit out a more readable error for WriteByte(MSG_CSQC,...) outside of SendEntity.
ssqc: add registercommand builtin, for consistency with menuqc and csqc (though only one can register any single command).
sv: report userinfo/serverinfo sizes (some clients still have arbitrary limits, plus its nice to see how abusive things are)
sv: try to optimise sv_cullentities_trace a little.
movechain: relink moved ents.
csqc: add spriteframe builtin, for freecs to use instead of more ugly less reliable hacks.
menuqc: fopen("tls://host:port", FILE_STREAM) should now open a tls stream. tcp:// should also work.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5703 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-12 23:29:58 +00:00
Spoike
a37f70e5f0 Add con_savehistory cvar, so the user can disable saving conhistory.txt all the time.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5702 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-01 01:41:17 +00:00
Spoike
f6874f99b8 Don't trigger link clicks from RMB while scrolling the console up/down.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5701 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-01 01:38:55 +00:00
Spoike
24267a24ae Add spriteframe csqc builtin (presumably only useful for freehl/freecs).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5700 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-01 01:31:46 +00:00
Spoike
f688882d3e Fix r_dynamic.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5699 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-01 01:30:31 +00:00
Spoike
80474cc3be Fix web+android targets. Fix some relatively recent quake2 bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5695 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-05-16 13:12:58 +00:00
Spoike
c949500da8 Implement preliminary openxr plugin. inputs are still useless (can HOPEFULLY result in some prints, but nothing else), and there's no considerations for 2d things.
Fix prediction issues with the ftenq protocol.
Fix some console image previews.
Added mod_precache cvar. set to 0 to significantly reduce memory usage in xonotic...
Prevent xonotic's random file writes from forcing full worker syncs, for faster loading.
QTV connections are now accepted only from localhost peers by default.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5694 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-05-14 15:50:26 +00:00
Spoike
31a2726f10 Fix typo on a minor builtin's number.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5691 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-05-01 11:36:20 +00:00
Spoike
08ccf2d0a8 Fix up some netquake initiak angle quirk, and related quirks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5688 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-30 14:33:58 +00:00
Spoike
813c8c54ff Some compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5687 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-29 15:07:25 +00:00
Spoike
4b8f303ca9 Some compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5686 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-29 13:16:33 +00:00
Spoike
97861a59a3 Some compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5685 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-29 12:25:24 +00:00
Spoike
6931c565df Some compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5684 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-29 11:43:33 +00:00
Spoike
4c2066601a Support connecting subnodes to servers over tcp (instead of depending on fork).
Fixed up the -netquake / -spasm / -fitz args slightly, should actually be usable now.
sv_mintic 0 is now treated as 0.013 when using nqplayerphysics, to try to make it smoother for nq clients.
Preparing for astc's volume formats. Mostly for completeness, I was bored. Disabled for now because nothing supports them anyway.
Fix broken mousewheel in SDL2 builds.
Fix configs not getting loaded following initial downloads in the web port/etc.
Make the near-cloud layer of q1 scrolling sky fully opaque by default (like vanilla).
Sky fog now ignores depth, treating it as an infinite distance.
Fix turbs not responding to fog.
r_fullbright no longer needs vid_reload to take effect (and more efficient now).
Tweaked the audio code to use an format enum instead of byte width, just with the same values still, primarily to clean up loaders that deal with S32 vs F32, or U8 vs S8.
Added a cvar to control whether to use threads for the qcgc. Still disabled by default but no longer requires engine recompiles to enable!



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5683 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-29 10:43:22 +00:00
Spoike
b332742d6f Fix the web port's numerous audio issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5681 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-26 01:32:02 +00:00
Spoike
eb277c45bd Fixes https://sourceforge.net/p/fteqw/tickets/81/
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5676 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-24 04:23:13 +00:00
Spoike
5b6b902c29 Fix music not looping.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5675 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-19 10:17:11 +00:00
Spoike
9c0c6c5cc1 Fix music not looping.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5674 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-19 08:29:58 +00:00
Spoike
843f971e2c minor compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5672 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-19 05:11:19 +00:00
Spoike
81617eaebc minor compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5669 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-19 03:44:32 +00:00
Spoike
e8aa715763 disabled some quake-only teamplay stuff in non-quake builds.
GL: r_dynamic -1 is now r_temporalscenecache 1, which makes menu options etc a little friendlier. fixed a serious memory leak.
GL: Lightmaps are now uploaded using pbos to reduce cpu stalls (especially with temporalscenecache) and the resulting periodic framerate drops. Requires gl4.4.
PM: moved manifest-downloads to the package manager. still needs some proper testing.
PM: Fixed bug with downloading updates from every known mirror for that update.
PM: Fixed bug with duplicate mirrors...
PM: menuqc is now able to query available updates.
engine's Draw_TextBox centers the text box more appropriately and easily.
SV: added sv_autooffload cvar, when set the map command will automatically create a server in a separate process to reduce the effects of stutter in inefficient ssqc mods.
Menu: menu_mods now shares data with getgamedirinfo builtin.
MenuQC: Added some extra properties to the getgamedirinfo builtin.
MenuQC: Added Menu_RendererRestarted entrypoint.
MenuQC: _vid_renderer_opts cvar now has a value that actually reflects the windowing systems in the build, rather than just renderers.
CQSC: Added getlocationname builtin.
ALSA: device names are now more consistent with other audio drivers.
SV: added unsavegame console command, to delete unwanted saved games.
SV: hashtable entries are now saved into saved games.
SV: reworked player remapping strategy when loading games. Player slots are now directly swapped serverside, not reconnected.
SV: resend all csqc entity state when a client signals that it started recording a demo.
SV: Added SOLID_BSPTRIGGER as a shapely alternative to the aabb SOLID_TRIGGER. modelindex must still be set for this to work.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5668 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-19 01:23:32 +00:00
Eukara
82f4b73a44 WAD3 inverted decals don't actually exist non-white
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5666 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-02 20:28:11 +00:00