Commit graph

6559 commits

Author SHA1 Message Date
Shpoike
5ed4012a9b Fix OOM with obviously corrupt miptex lumps (eg: jvoxdm1.bsp). 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
02a8a4fb76 Prevent our sctp implementation from corrupting its inbound messages. 2023-04-17 03:58:20 +01:00
Shpoike
2c8c9b615f Fix some bugs. 2023-04-17 03:58:20 +01:00
Shpoike
832ee6beef Prevent skyboxes from getting disabled on vid_reloads. 2023-04-17 03:58:20 +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
774fb93721 Work around some BS issue. 2023-04-17 03:58:20 +01:00
Shpoike
7caee8b453 Improve command arg completion. 2023-04-17 03:58:20 +01:00
Shpoike
e8fb813b4b Add sv_nqplayerphysics 2 setting, so both old+new qw protocols get the same prediction-disable hints. 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
a70c84a2bc When models include two sets of texture coords, let the glsl actually access them. 2023-04-17 03:58:20 +01:00
Shpoike
4431972ff6 Fix bad texture coord clamping on mdl export. 2023-04-17 03:58:20 +01:00
Shpoike
d97fd1bfc9 Fix '+set tls_provider foo' not working properly. Fixes https://github.com/fte-team/fteqw/issues/162 2023-04-17 03:58:20 +01:00
Shpoike
f8962b6c47 Rework where connection_started is set to make sure its always set. Fixes https://github.com/fte-team/fteqw/issues/164 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
540de79103 Fix vulkan crash on map end. 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
5786b43a7d Fix q3 when going into controls menu. 2023-04-17 03:58:20 +01:00
Shpoike
6a419833a8 Fix excessive reported gpu usage. 2023-04-17 03:58:20 +01:00
Shpoike
cba1a2a942 Update some third party library versions. 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
Shpoike
854fb60db8 Revert "Quake II: Set allow_skybox to 1 by default, as many maps (notable those in Mission Pack 2) use sky volumes to light the scenery within playable space."
This reverts commit ebbc6c0930.
2023-04-17 03:58:19 +01:00
177f09c21e
Enable -halflife launch option, tweak paths a little. 2023-04-16 18:34:39 -07:00
92229e769e
qclib: add sanity check for mixed usage of nonvirtual and virtual as it's currently unsupported. 2023-02-02 11:07:09 -08:00
3313e322d9
imgtool: add support for specifying custom palette over the builtin one via -p or --palette 2023-02-02 11:06:11 -08: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
ebbc6c0930
Quake II: Set allow_skybox to 1 by default, as many maps (notable those in Mission Pack 2) use sky volumes to light the scenery within playable space. 2023-01-15 15:04:18 -08:00
3adafe9326
Makefile: Bump ZLIBVER to 1.2.13. 2023-01-15 15:01:08 -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
86453332af Auto value for sv_demo_write_csqc now writes the csprogs into mvds, to hopefully reduce playback issues. the lazy record commands should be favouring .mvd.gz at least.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6342 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:15:23 +00:00
Spoike
c7e9f8631c Try to support DP mods a bit better.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6341 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:15:18 +00:00
Spoike
e257a9e231 Try to be a bit more verbose about why webrtc might be failing.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6340 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:15:12 +00:00
Spoike
7df2df5cd5 Fix up some qc warnings from recent fteqcc improvements.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6339 fc73d0e0-1445-4013-8a0c-d673dee63da5
2023-01-09 05:15:06 +00:00