Commit graph

2867 commits

Author SHA1 Message Date
fhomolka
71fb7da526
Make BBox shader sort additive. This makes them work with RTLights (#196)
Fix given by @Shpoike
2023-07-10 14:26:52 -07:00
Fix
a024a82b89 Remove NPFTE preprocessor stuff 2023-07-09 20:41:24 +02:00
Fix
8adffcecfa remove NPQTV-specific defines 2023-07-09 20:27:30 +02:00
Fix
ebd84b01d4 Remove dedicated NPFTE files 2023-07-09 20:20:54 +02:00
d293a2021a
SDL2: Only check for SDL_CONTROLLERTOUCHPAD* and SDL_CONTROLLERSENSORUPDATE updates on versions greater than or equal 2.0.14 2023-07-05 09:55:33 -07:00
fhomolka
6d83a3218a
Remove NaCl code (#190)
* Remove the nacl dir

* Remove nacl from ifdef checks shared with other platforms

* Remove nacl from build bash scripts

* More removal of nacl from bash scripts

* Remove nacl-specific code from the engine

* More removal of nacl-specific code from the engine

* remove nacl-specific code from the Quake 3 plugin

* Remove nacl from readme (also seems to have force LF line endings)

* Remove nacl mention from browser.txt

* Remove nacl from Makefile

* Remove nacl from dotnet2005 solution file (lol)

* Correcting an endif, this did not end nacl

* Clarification for NaCL no longer needed

* Left small todo for myself

* Partially undo f44daef091bcc5917b0ddb2cbe41ebdd9738f770
the if preproc checking for `_DEBUG` was incorrectly removed
2023-07-01 15:20:13 -07:00
7f8b827cb8
r_showbboxes should be a cheat in multiplayer, this fixes #9 (#192) 2023-06-28 22:05:55 -07:00
6692afa55b
Fix #165 by not ignoring the track specified in the NQ demo header 2023-06-24 18:03:48 -07:00
e20ee6c854
Add check to only use the re-release menu font when a mod is not actively overriding it 2023-06-24 15:03:28 -07:00
d57dd2fb3a
Server browser crash fix. 2023-06-23 21:14:51 -07:00
f4044af503
Fix compilation of the 'nocompat' build config. 2023-06-23 15:06:54 -07:00
erysdren
8482809f18
Fix compilation on Haiku OS (#183)
* add haiku defines in q_platform.h and sys_sdl.c

* linuxisms in sys_sdl.c and sv_sys_unix.c

* more linuxisms in sv_sys_unix.c
2023-06-11 23:14:36 -07:00
73a71a2ce1
Merge branch 'master' into joyfix 2023-04-16 23:17:35 -07:00
Shpoike
96dd67b3d0 Include audio mixer timings in r_speeds 2. 2023-04-17 03:58:21 +01:00
Shpoike
75c6527893 csaddon can now create/edit patches. 2023-04-17 03:58:21 +01:00
Shpoike
0a565b1186 Make cl_shownet 3 a bit more verbose. 2023-04-17 03:58:21 +01:00
Shpoike
2b17f90b28 Fix some issues with csprogs embedded inside mvd files. 2023-04-17 03:58:21 +01:00
Shpoike
e81b140614 work around qssm's proquake stuff. 2023-04-17 03:58:21 +01:00
Shpoike
eaf59671a4 Messing around with flatpak. 2023-04-17 03:58:21 +01:00
Shpoike
1ce399e969 Fix up some obscure builds. 2023-04-17 03:58:21 +01:00
Shpoike
8c8a4eaf0e Fix vid_reload+purecsqc killing the csqc. 2023-04-17 03:58:21 +01:00
Shpoike
cae062b142 Make updates menu searchable, make qi plugin a little more friendly. 2023-04-17 03:58:21 +01:00
Shpoike
226c1cf6b4 Fix recent console click quirks. 2023-04-17 03:58:21 +01:00
Shpoike
6f61af8ee9 Cvar description tweaks. 2023-04-17 03:58:21 +01:00
Shpoike
527233154c Clients can now request the master to initiate an WebRTC/ICE connection with 'sv_public 1' servers. This is primarily for the browser port. Servers now report their srflx address via the status command (with fp, ready for secure copy+paste). 2023-04-17 03:58:21 +01:00
Shpoike
92be91f416 Prevent the user from selecting demoness when running base hexen2 to prevent a crash. Fixed visible menu markup too. 2023-04-17 03:58:21 +01:00
Shpoike
727aaec80c Fix console expansion when execing macros, to expand on line execution rather than the entire macro contents. 2023-04-17 03:58:21 +01:00
Shpoike
95d25558ef Move broker address to a cvar, so users can actually change it. 2023-04-17 03:58:21 +01:00
Shpoike
e104d6cf58 Try to fix purecsqc map loading issues. 2023-04-17 03:58:20 +01:00
Shpoike
f2d54f30d8 Update DTLS stuff, fixing certificate pinning bugs.
We should now support dtls1.2 under win10 (otherwise win7+8 is still stuck with 1.0).
SSQC can now query client certificate info via infokey - *cert_sha1 or *cert_dn
Server addresses can be postfixed with eg ip:port?fp=BASE64 to provide a fingerprint to verify the server without depending on cert authorities.
2023-04-17 03:58:20 +01:00
Shpoike
4d06516fb2 Keep menu cursors central to the item they're trying to indicate. 2023-04-17 03:58:20 +01:00
Shpoike
a5232cfecd Allow manifests to provide signatures for packages. Restart the menus when a package with a menu.dat is enabled. 2023-04-17 03:58:20 +01:00
Shpoike
c5f837d468 Rework some hashfunc_t stuff. 2023-04-17 03:58:20 +01:00
Shpoike
1fe478dfa1 Add basic support for ktx's 'mapname#modifier' ent stuff. 2023-04-17 03:58:20 +01:00
Shpoike
7caee8b453 Improve command arg completion. 2023-04-17 03:58:20 +01:00
Shpoike
22533dfab8 Fix up some minor portability issues. 2023-04-17 03:58:20 +01:00
Shpoike
91e0ec1f2b Show afk status on the scoreboard. Add some colours to the scoreboard to grade people's pings. 2023-04-17 03:58:20 +01:00
Shpoike
0d2a0c615a Eukara expressed an interest in loading fonts without any antialiasing. 2023-04-17 03:58:20 +01:00
Shpoike
73f9cddcdf Quick and dirty fix for broken 6dof/spiderpig cheats. 2023-04-17 03:58:20 +01:00
Shpoike
990066dea1 Add pm_bunnyfriction cvar to better mimic nq player physics with predictable QW physics. 2023-04-17 03:58:20 +01:00
Shpoike
45df6806c2 Load bumpmaps even if its just specular effects that are going to benefit. 2023-04-17 03:58:20 +01:00
Shpoike
354fbb2a85 Make blob shadows respond to gamecode a bit more naturally. 2023-04-17 03:58:20 +01:00
Shpoike
f54b9b8459 Fix up the web build's text+touch input a little. Make its webrtc cvars more consistent with desktop builds. 2023-04-17 03:58:20 +01:00
Shpoike
2d9ec83c20 Fix some build targets, fix csqc's setpause builtin. 2023-04-17 03:58:20 +01:00
Shpoike
d9a334c694 Add halfrate shading to the vulkan renderer, where supported by headers+drivers. Fonts are exempt. 2023-04-17 03:58:20 +01:00
Shpoike
6a419833a8 Fix excessive reported gpu usage. 2023-04-17 03:58:20 +01:00
Shpoike
b095266070 Fix cmake-on-mac build errors. 2023-04-17 03:58:20 +01:00
Shpoike
07032bc216 Fix multiplayer menu breaking pak file names. 2023-04-17 03:58:20 +01:00
Shpoike
89ef66642e Fix mid-room skies in q2. 2023-04-17 03:58:19 +01:00
Leo L. Schwab
1fda671b9a Joystick support fixes.
I did this because I wanted to fly around maps using a Spaceball
4000FLX, or any other 6DOF controller.  These fixes help it work.

Various fixes to joystick support:
  - joyaxiscallback() used strtol() to check to see if the supplied
    string was an integer, then didn't assign the parsed integer to
    the cvar.
  - Wrong multiplier for left/turnleft values.
  - Delete `axismap[]` from J_JoystickAxis().  It was causing problems,
    and smells like it was trying to do what the cvars
    joyadvaxis[xyzruv] are doing now.
  - Fix compiler error by adding case statements for:
	SDL_SENSOR_ACCEL_L
	SDL_SENSOR_ACCEL_R
	SDL_SENSOR_GYRO_L
	SDL_SENSOR_GYRO_R

New cvar: "joyonly".

"Joystick" axes are typically return-to-center affairs; their deflection
values are therefore reported as -MAX - MAX, with zero in the center.
"Game controllers" are similar, but also often have analog left and
right "triggers" which are reported as 0 - MAX, with zero at one end
(fully released to fully depressed).

Unfortunately, SDL will try its darndest to make a joystick look like a
"game controller."  It does this by reinterpreting certain of the axes
to report the range 0 - MAX, as if they were triggers.  This is not a
thing to do with 6DOF controllers, where all axes are return-to-center.
While it may be remotely possible to put together an SDL2 controller
mapping that reports -MAX - MAX on all axes, for me it was simpler to
hack on FTEQW.

Coupled with that is FTEQW's giving preference to "game controllers,"
i.e. if SDL_IsGameController() returns true, FTEQW will treat it as one.

"joyonly" is a boolean cvar.  If true, FTE will ignore "game
controllers" and treat everything as a joystick.  The default is false.
"joyonly" must be set at startup to be effective, when the controllers
are being enumerated by SDL.
2023-01-19 23:17:25 -08:00
Spoike
48576a59dc A bit of a code cleanup, change a couple of prints.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6343 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:15:31 +00:00
Spoike
62622491f0 Make sure bad q2 layout strings won't go out of bounds. Add dev2 prints for bad layout string commands (there's probably lots of bad q2 mods out there, hence not dev1/unconditional).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6336 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:14:44 +00:00
Spoike
fb4531ea6c Attempt to improve touchscreen behaviours with onscreen buttons that appear upon touch events (and fade out). Long presses should close menus etc. Likely needs some more work.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6335 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:14:38 +00:00
Spoike
bc842ee28b Make sure freecs etc do heartbeats despite not giving a poop about nq/dp.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6333 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:14:15 +00:00
Spoike
c1bc6bbe23 Start game menu's map option is now a combo instead of a text field, to save on typing.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6331 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:14:01 +00:00
Spoike
1ae6b239e8 If multiple updates come from inside the same .zip url, extract each one of them from a single download instead of downloading the exact same zip multiple times. This is mostly for DP mods that expect to need to download everything upfront.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6330 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:13:55 +00:00
Spoike
4dc4dd33e7 Our Q2 code is a little fragile. Give it its assumptions to avoid hideousness.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6329 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:13:50 +00:00
Spoike
1765f15059 Alt+tab was randomly registering as tab presses - explicitly ignore tab at the start of the input line so we don't end up with walls of console completion suggestions.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6328 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:13:45 +00:00
Spoike
6700dfd289 Fix _bump texture loading.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6321 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:13:05 +00:00
Spoike
407c4eca8b Rework gamepad menu bindings, should be more intuitive now.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6320 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:12:59 +00:00
Spoike
503162aefe Add file uri support, requires a '-allowfileurl' commandline argument.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6318 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:12:39 +00:00
Spoike
cdcb3c3950 Add rogue's teamplay modes to the menu.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6317 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:12:31 +00:00
Spoike
2383c618ee Fix up some SDL issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6315 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:12:12 +00:00
Spoike
6307ae1303 add base64encode and base64decode builtins. Allow the second arg of registercommand builtin to specify a description for that command.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6314 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:12:04 +00:00
Spoike
c5d19c46ba Fix partial fakeshaft not always appearing.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6313 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:11:57 +00:00
Spoike
aa789965bf Fix cl_maxfps's periodic fast-frame bug. Reduce latency in singleplayer.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6312 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:11:50 +00:00
Spoike
df6b651eeb Better compat with QE. EX_PROMPT now supported serverside (emulated for non-qe clients). Per-client localisation now works. Scoreboards are now a little nicer when running mods with well-defined teams (eg NQ ssqc).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6309 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:11:34 +00:00
Spoike
3a6f22d05c Make sure runstandardplayerphysics builtin properly initialises everything it needs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6308 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:11:23 +00:00
Spoike
16c8e521ef Protocol compat with the Rerelease Update 4, at the expense of earlier versions.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6306 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-08-19 13:30:16 +00:00
Spoike
279474a019 Fix a skins issue on nq servers after changing maps.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6305 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-08-19 13:29:55 +00:00
Spoike
a0f2ffda90 Try to fix up some ICE quirks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6302 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-08-07 23:49:33 +00:00
Spoike
5182692590 Slightly smoother framerates on shib8.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6299 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-07-28 02:17:58 +00:00
Spoike
6941032cc7 Add r_showbatches command to debug builds. Shows a list of all draw calls for the next video frame.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6298 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-07-28 02:17:52 +00:00
Spoike
4fc23b4f4d Make the frametime graph a bit more pretty.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6297 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-07-28 02:17:45 +00:00
Spoike
9abf7b74b3 Try to clean up our pext handshake code a smidge.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6295 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-07-28 02:17:33 +00:00
Spoike
62e8bb5774 Prevent FTE servers from getting mistreated as NQ servers, this should restore the 'observe' option.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6294 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-07-28 02:17:27 +00:00
Spoike
de644a5384 Add fence stuff to q2bsp, for Kingpin support.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6291 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-07-28 02:17:05 +00:00
Spoike
4fce9e090d Fix up vrinputs frame times.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6289 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-07-28 02:16:54 +00:00
Spoike
3f85c9793c Add TURN support to our ICE implementation, along with a few fixups. Must be configured with 'net_ice_servers turn:foo?user=foo?auth=bar'. space-separated list, can also accept additional 'stun:' servers.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6285 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-07-28 02:16:31 +00:00
Spoike
c4b043d39f Fix some missing ambient sounds on large bloated maps/mods (this really should have been fixed years ago).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6281 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-29 07:20:24 +00:00
Spoike
304079e1dc Add a variation of the addentity builtin, for explicit light levels.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6278 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-26 08:08:50 +00:00
Spoike
81ab9277ac Make the various build config defines a little more robust.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6277 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-26 08:08:43 +00:00
Spoike
d41ca13562 Fix fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6273 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-20 04:54:54 +00:00
Spoike
758f47ffc3 Fix ezhud images not loading.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6271 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-19 15:18:23 +00:00
Spoike
06038d496e First weapon wheel implementation.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6269 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-19 15:18:08 +00:00
Spoike
1068a62d75 Add vid_baseheight and vid_minsize cvars for TCs unhappy with vid_conheight to put in their default.cfg, instead of them feeling a need to force user settings.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6266 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-19 15:17:48 +00:00
Spoike
c39c4d0255 Make sure getmodelindex/modelnameforindex and sound equivelents are available in both ssqc and csqc.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6265 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-19 15:17:41 +00:00
Spoike
ce01181d88 wither reported that findkeysforcommandex wasn't present in menuqc. Fix that.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6264 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-19 15:17:35 +00:00
Spoike
89c37774ae basementApe reported segfaults in the audio init logic.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6263 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-19 15:17:29 +00:00
Eukara
f1c714a187 Stub INS_KeyToLocalName for SDL so we can build SDL2 again and ship a build out today.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6262 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-10 17:52:56 +00:00
Eukara
fab14e046f Fix a typo and therefore make a crash with QC server lists disappear
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6261 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-10 17:10:51 +00:00
Spoike
6bd79c8ff8 .ktx 2darray textures were being written incorrectly.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6260 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-06 02:20:55 +00:00
Spoike
2b440a186d Simplify QW network deltas. By just trusting the server instead of second-guessing it, we should get something more robust (at least for demo playback).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6258 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-06-02 06:08:21 +00:00
Spoike
a84fa2e534 Fix warning message.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6254 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-05-28 18:00:22 +00:00
Spoike
12cdfc197f Make sure that either f_playmapend or f_specmapend work when f_mapend does, for people that want more specific behaviours. spec is ALWAYS used for demo playback too.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6251 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-05-28 17:59:51 +00:00
Spoike
74e9015f9d Modelviewer should cope with more bones now.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6249 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-05-28 17:59:39 +00:00
Spoike
0f8d07b8e8 Add lerptime protocol extension. Still WIP, don't record to demos.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6247 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-05-28 17:59:26 +00:00
Spoike
255ce795a0 Fix up some KTX issues (mostly bot related).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6246 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-05-28 17:59:17 +00:00
Spoike
f996ff5fc8 Fix up some .wal palette issues when running q2 bsps in q1 gamedirs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6245 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-05-28 17:59:08 +00:00
Spoike
08aedd4b5b Mouse4 now acts as a back button in our menus. Binds menu should now report system key names instead of guessed names (better non-qwerty support).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6244 fc73d0e0-1445-4013-8a0c-d673dee63da5
2022-05-28 17:59:01 +00:00