Commit graph

5044 commits

Author SHA1 Message Date
Spoike
a97007ae5a dpp7: Treat 'dropped' c2s packets as choked when using dpp7 protocols. This is because the protocol provides no way to disambiguate, and I don't like false reports of packetloss (only reliables loss can be detected, and that's not frequent enough to be meaningful). Pings can still be determined with dpp7, for those few packets which are acked.
package manager: reworked to enable/disable plugins when downloaded, which can also be present-but-disabled.
package manager: display a confirmation prompt before applying changes. do not allow other changes to be made while applying. prompt may be skipped with 'pkg apply' in dedicated servers.
sv: downloads are no longer forced to lower case.
sv: added sv_demoAutoCompress cvar. set to 1 to directly record to *.mvd.gz
cl: properly support directly playing .mvd.gz files
menus: reworked to separate mouse and keyboard focus. mouse focus becomes keyboard focus only on mouse clicks. tooltips follow mouse cursors.
menus: cleaned up menu heirachy a little. now simpler.
server browser: changed 'hide *' filters to 'show *' instead. I felt it was more logical.
deluxmapping: changed to disabled, load, generate, like r_loadlit is.
render targets api now supports negative formats to mean nearest filtering, where filtering is part of texture state.
drawrotpic fixed, now batches and interacts with drawpic correctly.
drawline fixed, no interacts with draw* correctly, but still does not batch.
fixed saving games.
provide proper userinfo to nq clients, where supported.
qcc: catch string table overflows safely, giving errors instead of crashes. switch to 32bit statements if some over-sized function requires it.
qtv: some bigcoords support tweaks

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5073 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-03-21 05:27:07 +00:00
Spoike
cb010176a1 fix hitmodel with hlmdl, to actually work properly with rotated entities.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5072 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-03-06 15:30:45 +00:00
Spoike
dadec86338 fix wireframe.
increase xz memory limit
fix fseek/fsize to match definitions.
r_deluxemapping is more aggressive with regards to generating lux files on demand (but won't generate lit data at the same time).
fix webgl shader issues.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5071 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-03-06 14:06:12 +00:00
Spoike
c385cb71b4 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5070 fc73d0e0-1445-4013-8a0c-d673dee63da5 2017-03-04 19:49:40 +00:00
Spoike
7635a15797 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5069 fc73d0e0-1445-4013-8a0c-d673dee63da5 2017-03-04 19:46:37 +00:00
Spoike
4bfdc546de git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5068 fc73d0e0-1445-4013-8a0c-d673dee63da5 2017-03-04 19:42:12 +00:00
Spoike
9aed521689 make developer a little less spammy. move much of it to developer 2.
net_mtu "" now means something large for servers and something smaller for clients. this should give clients more freedom to screw up their connections as much as they want when servers are not configured. I dunno.
package manager now tries to include packages listed from default.fmf. note that this may include dlls etc so this isn't available for any other fmf (ie: ones specified via the commandline/file associations).
fix up trace logic to use skeletal data for skeletal models, finally fixing toneddu's big hitmodel crash. hopefully.
console links inherit background text colours, where possible.
fix text background colour weirdness for both freetype2 fonts and spaces.
qcc: implement support for mac line endings, matching scintilla's line numbers, although this breaks rogue due to stray carrage returns inside a single-line comment (easy to fix, assuming some scintilla-based editor, anyway).
server: reworked deltas overflow to do round-robin properly with priority for players, so things shouldn't stall when overloaded.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5067 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-03-04 19:36:06 +00:00
Spoike
1b88cda2db Fix some silly issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5066 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-28 05:04:41 +00:00
Spoike
655c09bd76 compile fixes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5065 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-27 09:53:59 +00:00
Spoike
cf0e8fd923 added r_meshpitch cvar that allows for fixing the unfixable mesh pitch bug from vanilla... needs a better name... do note that this will break pretty much any mod, so this is really only for TCs designed to use it. Its likely that I missed places.
nqsv: added support for spectators with nq clients. the angles are a bit rough, but hey. need to do something about frags so nq clients know who's a spectator. use 'cmd observe' to get an nq client to spectate on an fte server (then attack/jump behave the same as in qw clients).
nqsv: rewrote EF_MUZZLEFLASH handling, so svc_muzzleflash is now translated properly to EF_MUZZLEFLASH, and vice versa. No more missing muzzleflashes!
added screenshot_cubemap, so you can actually pre-generate cubemaps with fte (which can be used for reflections or whatever).
misc fixes (server crash, a couple of other less important ones).
external files based on a model's name will now obey r_replacemodels properly, instead of needing to use foo.mdl_0.skin for foo.md3.
identify <playernum> should now use the correct masked ip, instead of abrubtly failing (reported by kt)
vid_toggle console command should now obey vid_width and vid_height when switching to fullscreen, but only if vid_fullscreen is actually set, which should make it seem better behaved (reported by kt).
qcc: cleaned up sym->symboldata[sym->ofs] to be more consistent at all stages.
qcc: typedef float vec4[4]; now works to define a float array with 4 elements (however, it will be passed by-value rather than by-reference).
qcc: cleaned up optional vs __out ordering issues.
qccgui: shift+f3 searches backwards

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5064 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-27 09:34:35 +00:00
Spoike
217f3ce569 more misc compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5063 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-22 00:16:43 +00:00
Spoike
459c3dcb5d more compile fixes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5062 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-21 23:44:11 +00:00
Spoike
1c90422226 added support for vector bitwise operators emulation.
fix some compile issues

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5061 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-21 23:26:13 +00:00
Spoike
88eee17e70 gah, I failed to refresh the file list. dammit
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5060 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-21 21:18:48 +00:00
Spoike
5b0843e0c7 split up NOMEDIA into individual defines. The Wastes should now be able to do music now.
tweak rtlights a bit, to not bug out on The Waste's decals.
use compatibility glsl in order to get ftransform working for consistent vertex coords (still uses core if there's no fixed function stuff). this fixes z-fighting issues with rtlights.
Rework punchangles for greater compatibility.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5059 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-21 20:22:07 +00:00
Spoike
e7c1f9a490 rework config.h stuff a little, fixing up numerous ifdefs etc. added some more for potentially smaller builds.
make the 'identify' command assume that a single decimal number is not an address (allowing it to be handled as a user id).
qcc: support default initialisers in function calls.
tweak filesystem code to try to flush individual files instead of discarding the entire fs hash.
fix 'snap' stuff.
other tweaks...

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5058 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-19 00:15:42 +00:00
Spoike
2d1b554813 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5057 fc73d0e0-1445-4013-8a0c-d673dee63da5 2017-02-11 17:17:54 +00:00
Spoike
7bfb3b56fa small fix for a crash that I added at the last moment...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5056 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-11 17:16:51 +00:00
Spoike
3061ed448f fix a silly performance-sapping typo.
implemented identify+iplog stuff for nq users.
r_tessellation forces blinn tessellation on meshes. can also be specified manually.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5055 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-11 16:14:06 +00:00
Spoike
f03a578eaa misc fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5054 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-01 04:42:33 +00:00
Spoike
2e7388bb30 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5053 fc73d0e0-1445-4013-8a0c-d673dee63da5 2017-01-29 13:45:59 +00:00
Spoike
4fcd615308 try to fix null framestates issue causing crashes from pmove/solid_bsp code.
some tweaks to try to make webgl more robust.
added r_max_gpu_bones cvar. defaults to 0 in webgl for now (64 otherwise).
fixed gles2+skeletal issue that was breaking webgl (note r_max_gpu_bones needs to be set to 32 or something for it to actually use glsl bones with webgl).
sound rates now internally use decimals instead of percents. because meh.
allow PEXT2_MAXPLAYERS and angle deltas in nq.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5052 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-29 13:10:53 +00:00
Spoike
ae644d60ef r_drawflat with d3d9.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5051 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-26 17:01:10 +00:00
Spoike
1d4ac3d103 final fix for q_version etc
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5050 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-24 23:57:43 +00:00
Spoike
1fcba85e20 reworked texture loading. now favours shallower files over preferred extensions.
attempt to use wad/*.png for hud images too (ezquake compat).
image_list can now be used to show the filename the texture loader actually picked (including which package its from).
reworked loading screens a little. hopefully this should give qc a better chance of working with them.
added invert mouse pitch option to menusys menus, a couple of other tweaks too.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5049 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-24 20:15:14 +00:00
Spoike
e23267b295 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5048 fc73d0e0-1445-4013-8a0c-d673dee63da5 2017-01-24 10:35:59 +00:00
Spoike
d7bda1dfbc bah
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5047 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-24 10:33:29 +00:00
Spoike
c68cbfec24 implement status command for nq clients that expect something to be printed. IP addresses are withheld.
fix stats issue.
support menuqc-based loading screens.
fixed 2d render-to-texture issues.
(finally) throttle 'connection lost or aborted' messages. report the ip address too, because we can.
begun work on nq-style player ip-logging. ip addresses are collected now, but there's still no actual database code yet.
rewrote engine auto-update. now part of the updates menu instead of system-specific special-case code. Still requires a system function to actually invoke the updated engine however.
added sdl audio capture support (requires sdl 2.0.5).
treat q_version like f_version etc. respond to both.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5046 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-24 10:27:39 +00:00
Spoike
9055d674eb fix possible text truncation issues (eg: pings on the scoreboard). reported by kt.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5045 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-22 17:10:25 +00:00
Spoike
c4cd754b91 fix vanilla compat. oops.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5044 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-18 11:34:44 +00:00
Spoike
15a2038e4e fix some voip stuff, opus should be properly supported now.
fix iqm+events... again.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5043 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-17 19:04:09 +00:00
Spoike
36c0c3302f git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5042 fc73d0e0-1445-4013-8a0c-d673dee63da5 2017-01-16 08:20:35 +00:00
Spoike
f71f6260b1 implement missing svcdp_spawnstatic2, try to clean up various different 'spawnstatic2' svcs from different protocols.
try to fix lightning beam positions (which was a problem with nq+svc_setview)
fix iqm events.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5041 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-16 08:13:51 +00:00
Spoike
f546a188c4 fix some bjp3 issues.
add getlightstyle builtins.
fix some compile issues.
fix decals on hlbsp.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5040 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-15 13:13:09 +00:00
Spoike
fc7664a69f tweaked the iqm exporter code to output some custom iqm extensions.
importing tweaked to support importing from multiple mesh files.
bone remapping is supported for animations that have extra/missing bones.
complex commandline deprecated, now supports a proper import script thing, so the fte-specific iqm extension info can be specified.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5039 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-13 00:42:51 +00:00
Spoike
c4ded89ad7 fix server crash (on two pk3s with the same pure path)
fix fteqcc issue unintentionally stripping things
added model event support.
added support for a couple of extra twiddles in the iqm format.
modelviewer now highlights meshes (to display hitmesh areas).
modelviewer now shows ragdolls, because I can.
fixed some nq download issues/crashes/fallbacks.
fixed 8bit bmp palette issue.
added capturethrottlesize cvar to throttle recording speed if disk space is getting low (to avoid Maverick's demo encoder getting swamped).
com_protocolname can now list multiple protocol names to list multiple server types. only the first will be reported to other clients however.
can now be compiled without support for q1bsp or q1mdl. not useful, but hey.
increase max_channels, by as much as is necessary.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5038 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-13 00:39:50 +00:00
Spoike
cd75caeb27 Initial (unmodified) import of Lee Salzman's iqm exporter.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5037 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-07 02:13:20 +00:00
Spoike
68e535c5b2 fix misc compile issues for minor ports.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5036 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-21 15:48:52 +00:00
Spoike
a7621b7bd8 fix issue with the menu not eating keypresses
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5035 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-21 15:47:18 +00:00
Spoike
8c0ac181d2 fixed load-game crash.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5034 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-21 15:45:55 +00:00
Spoike
03d96bff72 first attempt at webvr support. probably totally crap.
fix hitmodel with skeletal models(can also now support lerps, skeletal objects, etc).
more hlmdl fixes for eukara, including hitboxes.
modelviewer can now display bones.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5033 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-19 13:31:05 +00:00
Spoike
ebd1f75634 blurgh, never mind, I cba to sort out headers.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5032 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-13 12:02:03 +00:00
Spoike
6e825e42dd merge gl+vk win32 code. include egl support on windows (useful for ANGLE).
fix misc bugs.
rewrote skeletal code to use gpu-friendly skeletal data for all skeletal formats.
add modelframecount builtin, to easily get the number of frames in a model.
integrate hlmdl a little better.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5031 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-13 11:50:15 +00:00
Spoike
151adc38ed move 'not a field' messages to dprints.
try to fix hlbsp palette issues.
fix drawstring showing link infos.
move some annoying cvar defaults over to quake-specific settings, instead of always being on.
fix possible hlmdl crash.
fix __fullspawninfo
fix switching between player/spectator not tracking spawned slot counts properly.
fix a possible crash from runstandardplayerphysics.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5030 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-09 09:09:12 +00:00
Spoike
5ded3710b4 networked entity editing now kinda working. still needs much more work before its usable.
try to use microsoft's poor-man's eax stuff with directsound. snd_eax is disabled by default still thankfully.
some hlmdl fixes

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5029 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-07 18:45:25 +00:00
Spoike
4925e5f842 try to lerp angles properly.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5028 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-05 13:35:10 +00:00
Spoike
732a89f7c1 r_softwarebanding is now a bit more generic and can now palettize rgb textures.
fix r_renderscale nearest/linear switching needing a vid_restart.
fix q3 spamming input packets.
fix ^8
prepare for nicer entity editing via eg csaddon.
fix vulkan crash + vulkan overbrights

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5027 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-11-25 08:14:54 +00:00
Spoike
dca2ea4207 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5026 fc73d0e0-1445-4013-8a0c-d673dee63da5 2016-11-21 02:21:22 +00:00
Spoike
ba1e9445ee minor fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5025 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-11-20 21:05:10 +00:00
Spoike
8d09710ed1 lightprepass is functional again. still diffuse lighting only. supports shadowmaps but no other weird light info.
added 'pkg' console command. will still need more tweaking.
r_renderscale < 0 means nearest filtering (may need a vid_restart for that to take effect though).
fteqccgui: added 'make installer' options.
fteqcc: fix framemacro issue that was breaking due to invalid dupes in hipnotic's code
cl_lerp_smooth: by default now enabled for singleplayer as well as just demos. this smooths out platforms etc.
q2 demos: explicitly recognise .dm2 extension, to try to avoid issues.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5024 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-11-20 20:52:41 +00:00