Commit Graph

1531 Commits

Author SHA1 Message Date
Eukara a322a175de Add support for the FIRSTPERSON renderflag from Q3
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5794 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-12-25 03:07:07 +00:00
Spoike 29cb22af8e try to fix vulkan validation warnings (and maybe some crashes on amd gpus)
fix sdl1 not compiling.
fix temporalscenecache with q3bsp
add the net_wm_ping protocol to fte's native x11 stuff, allowing our process to be killed if we lock up (usually due to vulkan drivers...).
qccguiqt: actually save the config.
try to fix hl fonts


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5785 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-11-04 10:19:30 +00:00
Spoike e649f6ebdb Add SB_NAMESORT for search_begin to ensure files are sorted by name instead of filesystem precedence.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5783 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-10-27 04:10:51 +00:00
Spoike 5d4f66cffd Add SB_MULTISEARCH flag for search_begin.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5782 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-10-27 02:56:18 +00:00
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 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 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 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 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 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 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 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 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 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 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 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 27cf81cde7 Attempt to make clang happier.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5713 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-27 19:32:16 +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 08f8cb2d35 Fix double-free crash on TLS failure.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5709 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-27 19:31:48 +00:00
Spoike dfc44e5d36 Print a warning message when we try to make sense of an invalid/corrupt infostring.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5708 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-06-20 09:19:18 +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 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 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 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 a92778fdbe Fix the web port's decals.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5680 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-26 01:31:00 +00:00
Spoike 0e8d1acb05 Try to fix load times with certain q3bsps, by deferring phs calcs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5679 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-24 12:11:29 +00:00
Spoike 9c348a4bc8 Fix underflow bug in Base64_EncodeBlock
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5673 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-04-19 05:13:51 +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 cd21e68e3b Fixed frameduration() for HL MDL
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5662 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-03-29 09:49:12 +00:00
Spoike 11e41f1e7d Fix some Q2 issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5659 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-03-28 01:46:25 +00:00
Spoike b63dc8b880 prepare for proper binary auth instead of depending upon tls certs (using sha2(512) to ensure no modification). probably buggy on windows so not fully enabled yet.
allow for binary updates on linux as on windows (-allowupdate for modified/nonsvn builds).
dlightmask is now size_t, because we might as well allow that on 64bit cpus, this allows for 64 lightmaphack lights instead of 32.
fix potential openal issue with source=0.
added q3bsp_ignorestyles cvar to ignore rbsp styles (and reduce needed batch counts), should only be used on maps with subtle lighting changes (ones that are properly lit without toggling any lightswitches).
add support for directly loading foo.bsp.gz
Added prints to clarify why servers might be listed under the 'UNKNOWN' category in the master server. Attempt to show hostnames anyway, to make it a little more obvious who's responsible for those badly configured servers.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5656 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-03-25 21:29:30 +00:00
Eukara 7d0014bf34 Fix RBSP fixed-patch loading.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5654 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-03-20 11:37:18 +00:00
Spoike 9a88730ba8 Properly fix TW dedicated servers.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5646 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-03-08 17:56:34 +00:00
Spoike 7f8b081b8c Make sure fte servers get listed under quakeworld and not netquake.
Fix some wastes dedicated server compile error.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5645 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-03-08 07:02:37 +00:00
Spoike 062cdf6b21 Q3TA: Added snd_ignorecueloops cvar to ignore auto-looping sounds.
Q3TA: Fixed script parsing, so the menus are not so broken.
Q3TA: added the UI_CIN_* and CG_CIN_* builtins for 2d cinematic playbacks.
Q3TA: backspace should work for gamecode text entry now.
Q3TA: map_restart now directly restarts without needing loading screens.
Fixed multiple envmap generation bugs.
Fixed envmaps getting flushed with r_keepimages 0.
Console image previews can now display cubemaps (although their orientation is probably a little off).
Made a 'remapshader' csqc builtin. Depending on the r_remapshader console command was stupid.
Fixed packet command to create a udp socket, if needed.
sv_public can now be set to a non-numeric name for custom names (instead of needing to poke sv_port too).
Support extended data on the end of miptex entries in bsps. Requires a qbsp (like vanilla) that doesn't rewrite the miptex entries.
Updated imgtool to generate/read our new extended miptex data.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5644 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-03-07 09:00:40 +00:00
Eukara ec58c94e03 Updated TW build config.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5640 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-02-28 20:39:40 +00:00
Spoike fe28099e68 Switch to using epoll on linux, because we can.
Rework q3bsp_mergedlightmaps as q3bsp_mergelightmaps. Now a boolean filling to the gpu's limit. Now also fills horizontally too.
ftemaster now provides needpass info for sv_public 2 servers.
fix (most?) ftemaster crashes.
ftemaster now supports protocol name aliases (allowing for more friendly game names in its html).
ftemaster now pings the servers from a different port. This should highlight/exclude servers that are unreachable for nat/firewall reasons.
Fix memory leak from mvd recording.
Servers should now cope better with ctrl-z and related fg/bg unix shell commands.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5638 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-02-26 00:37:52 +00:00
Eukara fa62cd2678 TW config changes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5636 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-02-23 22:02:51 +00:00
Eukara 430c87ebe1 Added logos subdir to TW. Needed for the sprays...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5635 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-02-21 23:14:18 +00:00
Eukara 48cbd50217 Make sure TW builds with static FreeType.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5634 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-02-20 21:19:41 +00:00
Spoike a5c1adc630 Fix bug with host-less rtc:// schemes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5630 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-02-16 19:27:31 +00:00
Spoike 006b074f2b Reformat output of 'dir' command, and allow 'ls' as a synonym.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5628 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-02-16 19:18:31 +00:00
Spoike bfa5cef4d3 Fix misc obscure builds.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5620 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-02-12 12:15:56 +00:00
Eukara 7dfdd68dd5 Updated TW's engine config.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5617 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-02-11 23:13:53 +00:00
Spoike 9033f7b237 fixed eztv md4 incompatibility.
reimplemented qtvreverse command.
fixed some stuffcmds being handled by the wrong splitscreen seats (was noticable in TF).
rework smartjump to try to be more predictable...
rework relighting to try to be more robust (and more self-contained).
allow the csqc to actually use VF_PROJECTIONOFFSET.
jump now moves upwards instead of trying to lock on to a nearby player when spectating.
assume 32 fullbright pixels when running with a palette.lmp yet no colormap.lmp (happens with some total conversions).
tweaked scoreboard for fainter backgrounds.
rearranged autoid, to be smaller etc.
hacked around dodgy conchars.lmp - don't treat 128*128 qpics as qpics to work around workarounds for buggy wad tools (with a warning).
fixed missing fullbrights on h2holey models.
avoided warning about mod_h2holey_bugged on dedicated servers.
added net_ice_exchangeprivateips, for people worried about exposing lan IPs when using ICE.
sv_public 2: implemented client support for our webrtc broker in order to use our own ICE implementation without needing to faff around with irc accounts or plugins etc.
TODO: ensure at least one ephemerial udp port when using ice or come up with some better sv_port handling
fixed multiple tls bugs (one could cause server problems). change net_enable_tls to disabled by default anyway (reenable for the server to be able to respond to https/wss/tls schemes again).
don't colourmap when there appears to be a highres diffusemap on q1 models.
imgtool now understands exporting from qpics in wads, as well as just mips.
implemented speed-o-meter in ezhud.
added removeinstant builtin to avoid the half-second rule.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5614 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-02-11 18:06:10 +00:00
Spoike 1c2026c055 Fix wastes builds.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5606 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-01-20 18:38:50 +00:00
Spoike ffda35fae4 Integrate gltf2 support without external plugin.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5605 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-01-20 18:36:45 +00:00
Spoike 67b5041ec8 Added VF_PROJECTIONOFFSET to offset the projection (for GoaLitiuM).
Added mod_h2holey_bugged cvar for better compat with quakespasm's bugs (for xaGe et al).
Some minor compiler warning/error fixes.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5600 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-01-13 07:03:28 +00:00
Spoike 73f92fb799 Fix problems with last commit.
Fix rbsp not responding to lightstyle0 consistently.
Fix q2 not responding to any lightstyles.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5599 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-01-10 12:23:25 +00:00
Spoike bfea433dff Attempt to fix some nondeterministic build variations.
fix GPD_LIMIT_PITCH not properly limiting +lookdown.
fix plugins not auto-loading properly (when previously enabled, obviously).
engine updates now try to replace the 'launcher' binary, instead of chaining from it. this should make firewalls (and other shady special-case gldriver hacks) more consistent at the cost of not being able to revert to your initial revision.
imgtool can now extract from wads.
imgtool now compiles+works on windows (GoaLitiuM's code).
update ffmpeg plugin to handle more recent ffmpeg versions properly.
fix somewhat recent audio streaming bug with openal output.
fix sleep+abort qc builtins.
gltf2 plugin will now work better with blenders no-material files.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5598 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-01-09 15:35:40 +00:00
Spoike 246f24bafd Fix fs_cache getting outdated after file renames/removes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5597 fc73d0e0-1445-4013-8a0c-d673dee63da5
2020-01-02 05:48:05 +00:00
Spoike d16c6646b7 GoaLitiuM's changes to fix msvc2015's cmake support.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5594 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-12-17 17:41:12 +00:00
Spoike 630678f6e3 Add ReadInt+WriteInt qc builtins in csqc+ssqc respectively, add some extra docs for some other builtins.
Try to mimic dp's console background cvars, so we don't need to add so many files to run xonotic properly.
Don't bother trying to recognised xonotic automatically for now, it won't work well without extra fmf stuff anyway.
Try to fix up rotated 'wrbrushes' stuff. Untested.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5592 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-12-16 17:36:00 +00:00
Spoike 0cf6128ffe Remove void* pointer arithmatic to make msvc happy.
Change openal usage to try to be more conformant to spec (should only be an issue for less mature openal implementations though).
Added a developer warning if fog is oversaturated.
Fix crash when loading a game with an animated texture in view... yes, weird.
Support big-endian ktx files.
Added some wrath builtins.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5588 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-12-10 14:50:47 +00:00
Spoike 0884f32ddb Fix some problems in my recent commit.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5583 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-11-20 05:27:43 +00:00
Spoike 2c07bbac7d Fix some problems in my last commit.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5582 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-11-20 04:53:22 +00:00
Spoike 811bce25f1 Too many changes, sorry.
Change revision displays, use the SVN commit date instead of using __DATE__ (when there's no local changes). This should allow reproducible builds.
Added s_al_disable cvar, to block openal and all the various problems people have had with it, without having to name an explicit fallback (which would vary by system).
Add mastervolume cvar (for ss).
Add r_shadows 2 (aka fake shadows - for ss).
Add scr_loadingscreen_aspect -1 setting, to disable levelshots entirely, also disables the progress bar (for ss).
Better support for some effectinfo hacks (for ss).
Added dpcompat_nocsqcwarnings (because of lazy+buggy mods like ss).
Rework the dpcsqc versions of project+unproject builtins for better compat (for ss).
Added dpcompat_csqcinputeventtypes to block unexpected csqc input events (for ss).
Better compat with DP's loadfont console command (for ss).
Added dpcompat_smallerfonts cvar to replicate a DP bug (for ss).
Detect dp's m_draw extension, to work around it (for ss).
Cvar dpcompat_ignoremodificationtimes added. A value of 0 favour the most recently modified file, 1 will use DP-like alphabetically sorted preferences (for ss).
loadfont builtin can now accept outline=1 in the sizes arg for slightly more readable fonts.
Fix bbox calcs for rotated entities, fix needed for r_ignorenetpvs 0.
Hackily parse emoji.json to provide 💩 etc suggestions.
Skip prediction entirely when there's no local entity info. This fixes stair-smoothing in xonotic.
screenshot_cubemap will now capture half-float images when saving to ktx or dds files.
Fix support for xcf files larger than 4gb, mostly to avoid compiler warnings.
Fixed size of gfx/loading.lmp when replacement textures are used.
Added mipmap support for rg8 and l8a8 textures.
r_hdr_framebuffer cvar updated to support format names instead of random negative numbers. Description updated to name some interesting ones.
Perform autoupdate _checks_ ONLY with explicit user confirmation (actual updating already needed user confirmation, but this extra step should reduce the chances of us getting wrongly accused of exfiltrating user data if we're run in a sandbox - we ONLY ever included the updating engine's version in the checks, though there's nothing we can do to avoid sending the user's router's IP).
Removed the 'summon satan all over your harddrive' quit message, in case paranoid security researchers are idiots and don't bother doing actual research.
Removed the triptohell.info and fte.triptohell.info certificates, they really need to stop being self-signed. The updates domain is still self-signed for autoupdates.
Video drivers are now able to report supported video resolutions, visible to menuqc. Currently only works with SDL2 builds.
Added setmousepos builtin. Should work with glx+win32 build.
VF_SKYROOM_CAMERA can now accept an extra two args, setviewprop(VF_SKYROOM_CAMERA, org, axis, degrees).
Removed v_skyroom_origin+v_skyroom_orientation cvars in favour just v_skyroom, which should make it behave more like the 'fog' command (used when csqc isn't overriding).
Added R_EndPolygonRibbon builtin to make it faster+easier to generate textured ribbon/cable/etc wide lines (for TW).
sdl: Fix up sys_sdl.c's file enumeration to support wildcards in directories.
edit command now displays end1.bin/end2.bin correctly, because we can.
Finally add support for f_modified - though ruleset_allow_larger_models and ruleset_allow_overlong_sounds generally make it redundant.
Fix threading race condition in sha1 lookups.
Updated f_ruleset to include the same extra flags reported by ezquake.
A mod's default.fmf file can now contain an eg 'mainconfig config.cfg' line (to explicitly set the main config saved with cfg_save_auto 1 etc).
fmf: basegame steam:GameName/GameDir can be used to try to load a mod directory from an installed steam game. The resulting gamedir will be read-only.
HOMEDIR CHANGE: use homedirs only if the basedir cannot be written or a homedir already exists, which should further reduce the probability of microsoft randomly uploading our data to their cloud (but mostly because its annoying to never know where your data is written).
Fixed buf_cvarlist, should work in xonotic now, and without segfaults.
Added an extra arg to URI_Get_Callback calls - the response size, also changed the tempstring to contain all bytes of the response, you need to be careful about nulls though.
Try to work around nvidia's forced-panning bug on x11 when changing video modes. This might screw with other programs.
sdl: support custom icons.
sdl: support choosing a specific display.
Added some documentation to menuqc builtins.
menusys: use outlines for slightly more readable fonts.
menusys: switch vid_width and vid_height combos into a single video mode combo to set both according to reported video modes.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5581 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-11-20 03:09:50 +00:00
Spoike 3e376f4cb2 Fix ktx compat issue.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5580 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-11-14 16:27:03 +00:00
Spoike ff5237f066 Try harder to block ezquake's buggy extensions.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5576 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-30 14:03:59 +00:00
Spoike 6a7f1d5eff Build fixup: separate BUILD_WINDOWS into BUILD_WIN32 and BUILD_WIN64.
Don't use outdated header versions (png versions were conflicting, causing errors).


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5572 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-20 05:02:37 +00:00
Spoike 11e6214daf Add explicit skyroom fog.
Changed how cubemaps are held in memory, making all images basically just 3d textures.
Don't start up at all if no game data is found.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5570 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-18 08:37:38 +00:00
Spoike 76f1f0ef66 Better compat with quakespasm's demos.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5566 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-14 02:36:57 +00:00
Spoike 1d56c1443e Optimise env_cubemap. Fix some compile warnings.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5564 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-07 04:51:17 +00:00
Spoike a524692e4f Fixes from ericw.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5563 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-06 22:41:02 +00:00
Spoike 1c1f04370f preliminary .xcf support.
imgtool tweaks.
some build system fixups.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5560 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-06 01:59:13 +00:00
Spoike 48c3c27793 Fix 'jerky spectators' bug, reported by Zel.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5558 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-02 06:07:40 +00:00
Spoike 0558ec638b Make sure freetype doesn't use the system/wrong png/zlib headers when compiled statically.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5557 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-02 04:33:36 +00:00
Spoike f3a779639c Fix build issue with bullet plugin.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5555 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-01 22:19:09 +00:00
Spoike df3fca5bc0 Make sure libjpeg links properly.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5554 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-29 03:27:44 +00:00
Spoike b227fc2374 Make sure libjpeg links properly.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5553 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-29 03:27:24 +00:00
Spoike be5466c9fd Some image fixups.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5551 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-29 02:16:34 +00:00
Spoike a09a8ebcc3 Some compile fixes and remove some dead code.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5549 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-26 02:31:56 +00:00
Spoike cfd20f4f06 Update prediction code to propagate some values properly with certain protocol combinations that I'd overlooked.
Try to fix problems caused by (auto)save's screenshots
Added code to allow falling back on stbi for when libpng/libjpeg are not compiled it, at eukara's request.
Handle .exr image files as suggested by eukara, when the appropriate library is available.
Fix mipmaps etc for half-float files.
Enable support for stbi's special gif loader, loading gifs as an 2darray texture.
Add code for threading the qcvm's tempstring recycling, disabled due to paranoia but does otherwise help xonotic perf (at the cost of extra ram).



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5548 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-25 20:23:24 +00:00
Spoike 131a6be4bc Fix ignore command.
Add cl_lerp_driftbias and cl_lerp_driftfrac cvars, to tweak drifting. changed defaults to try to reduce clamping.
Implement ladders with nq player physics.
Fix submodel contents with nq player physics.
Implemented drawrotpic_dp for compat (incompatible with fte's earlier implementation)
Added con_textfont cvar to set fonts without uglifying menuqc/csqc drawstrings that don't specify explicit fonts.
Enemycolor and teamcolor are now true cvars, which means they now work with seta.
Move the homedir from CSIDL_PERSONAL to CSIDL_LOCAL_APPDATA, because microsoft apparently scrape all CSIDL_PERSONAL data for upload to their servers, because they don't understand 'personal'. Will still use the old homedir if it exists.
Pack signon data without wasting so much, primarily to allow abusive mods to spew larger individual signon messages (hurrah for packet fragmentation).


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5546 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-17 19:49:39 +00:00
Spoike 8f02c55729 Load .obj meshes (yuck). They should at least be useful for loading the odd q3 .map file.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5543 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-15 15:20:20 +00:00
Spoike c6917a5f8c Added LMSTYLES16 support, increasing max lightstyles to 65k.
Updated networking for these extra lightstyles.
LMSTYLES[16] bspx lumps now also infer the number of styles per face, allowing for up to 16 styles per face.
Support a few more pixel formats in dds files.
Allow r_lightmap_format to be changed instantly.
Remove physics_bullet_enable cvar, as its inferred by whether the plugin is enabled or not.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5540 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-10 15:40:04 +00:00
Spoike d2fd1daba8 Fix some CLIENT_ONLY issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5538 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-07 16:19:13 +00:00
Spoike 018afede9a Compile fixes (mostly focused on windows)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5534 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-05 00:01:01 +00:00
Spoike 5fa6e12d56 Compile fixes (mostly focused on windows)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5533 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-04 23:39:39 +00:00
Spoike 200ec8c246 Compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5532 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-04 09:15:13 +00:00
Spoike 41b0d993f2 smoother console scrolling (at least with the mouse)
support RLE+luminance+alpha tga files.
support half-float tga files.
recognise hdr astc images.
added appropriate fallbacks for astc support.
load mip-less .astc files (mostly just for debugging stuff).
allow packages to warn about required engine/gpu features.
catch when stdin flags get changed to blocking by external libraries, to avoid fatal stalls.
basic support for .mdx files (kingpin models)
sort packages loaded via wildcards, by datetime then name, to avoid random ordering from certain filesystems.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5531 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-04 08:32:22 +00:00
Spoike d561772bb0 stripped support for qvm-based plugins. rewrote native plugins to use a more efficient interface.
merged engine menus, native menus, game menus, plugin menus into a single layered menu interface, simplifying all the special-case input.
engine confirmation prompts can now show regardless of underlaying menus, including above the console.
skeletal formats can now provide their own way to build bones, for variable per-bone keyframes/interpolation methods/etc (used by gltf2).
updated various plugins for the new api.
removed qvm makefiles/scripts.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5530 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-04 07:59:40 +00:00
Spoike 9202c3f015 Restore choke lines into the netgraph, and support discontinuities so it doesn't look so weird. Also tweak realip warnings. Don't honour dupes if it would exceed rate limits (new data is better than dupe data), which can also double-up as a CBR type thing to try to reserve the bandwidth (avoiding packetloss bursts at the worst times).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5525 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-08-24 16:09:08 +00:00
Spoike eeba6c912e Remove the 'weapon' command and a few others in q2/q3. Never reset pending input angles to 0 (makes mods that use input_angles instead of view_angles work a bit better). Some c++ tweaks for the bullet plugin.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5521 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-08-19 16:15:31 +00:00
Spoike c0b383886e Fix downloads-are-going-to-qw-gamedir bug.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5510 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-08-11 13:54:26 +00:00
Spoike 93a9fe379a fix a few unrelated bugs
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5507 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-08-11 05:32:53 +00:00
Spoike 5066a8b1b5 Compile error.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5503 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-08-03 02:28:31 +00:00
Spoike 707fba95cd Implement gl_outline, fixing some of the issues with my previous attempt.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5502 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-08-03 02:07:40 +00:00
Spoike 26e527a8a6 Fix compile issues when HAVE_PACKET is disabled, also removing references to resulting unusable hostnames.
Fix recent sizeof(void) error.
Fix crashes from 0-byte lit files (and a few other related bugs that noone else noticed yet).
r_loadlit 3 now generates e5bgr9 .lit format (for over-over-bright). Also supports world.light for minlight values, now also uses super-sampling (slower but nicer).
Additionally disable PEXT_TRANS in the FortressOne fork of ezQuake (sidestepping its inherited bugs).
Fix q3's sprites getting horizontally flipped.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5501 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-08-03 01:58:03 +00:00
Spoike 7991260cc0 Add BPTC (aka: bc6+bc7) fallback decompression.
Fix some warnings.
Work around ezquake's PEXT_TRANS bug - now properly gets disabled.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5500 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-08-01 02:13:44 +00:00
Spoike b7204b7004 Fix some more stuff.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5497 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-07-29 06:32:37 +00:00