Commit graph

47 commits

Author SHA1 Message Date
Shpoike
ff1a2299f4 megacommit.
adds qtv relay support.
lots of other misc tweaks.
2024-07-14 19:58:26 +01: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
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
6c5de8e8b1 Added pm_pground cvar for compat with mvdsv/ezquake. Do not use it with NQ mods however, as the QC will interfere with the onground state (QW mods are okay).
Added Z_EXT_PF_ONGROUND + Z_EXT_PF_SOLID for compat (not enabled serverside due to conflicts with pext - just a define away).
Fixed bug with loading screens switching sizes part way through loading.
Added hexen2 rain effect.
Fix hexen2 model texture alphas not working.
Fix potential linux crash from excessively long stdin lines.
Added cl_rollalpha cvar.
Fixed quirk where the player would slide along the base of steep walls/slopes.
Tweaked PM_NudgePosition to be more precise, giving more reliable prediction.
Fixed fread qc builtin.
Tweaked random() builtin to bias slightly away from 0, so that nextthink=random()*foo; will never cause statue-monsters.
Check for GL_WEBGL_depth_texture instead of just GL_OES_depth_texture, to fix compressedTex2d errors in firefox.
Second attempt at blocking invariant keyword with mesa.
Use xrandr for gamma where possible. This prevents reading stale XF86 gamma ramps and restoring those invalid ramps when quitting.
Try to grab mouse pointers slightly faster in x11.
Don't call XIFreeDeviceInfo if XIQueryDevice returned NULL.
Document parm_string and startspot qc globals.
Fix possible infinite loop from physics frames.
QTV: stripped most of the old plugin code (because really, who has a browser that still supports either ActiveX or NPAPI). Fixed up emscripten port references.
QTV: fix bug with protocol extensions not being reported to viewers.
QTV: use binary websockets instead of text.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5419 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-03-01 22:39:30 +00:00
Spoike
fa0c73d33b Fixed crash from too many csqc entities (reported by shpuld)
Added .psd, .pbm/.pgm/.ppm, .pfm, and .hdr image formats. Extensions NOT added to r_imageextensions.
png (and the above formats) can now be loaded as RGBA16, instead of being truncated to RGBA8 (8bit pngs not affected).
r_imagelist will now show images from memory, instead of potentially loading new/different ones from disk.
Fix serverbrowser bug being too eager to join the server (eg from alt+tab).
Don't send ipv6 packets to qw/q2 masters. They won't be able to report ipv6 addresses anyway, and this reduces warnings when a host STILL has no ipv6 (my ISP sucks). this does not affect q3/dpmasters, for people without ipv4 addresses.
Tried to improve compat with Bloodshot's particle effects.
Fixed a couple of issues with R_AddTrisoup.
Fixed string tokenizing bug where it was using the wrong buffer size values.
Don't show link-local/localhost addresses in eg the status command (unless developer).
qtv-rel is now an easier target, for new qtv releases.
qtv warning fixes.
added a nailtrail effect to 'high' particles.
fixed terrain shaders.
fixed fogged water issue (on one of bal's maps).
first attempt at gltf2 format support



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5400 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-02-16 19:09:07 +00:00
Spoike
a4942abf52 finally got around to updating qtv to add a few common protocol extensions.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5234 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-04-06 17:39:32 +00:00
Spoike
906b705bf0 after much breaking, the webgl port now utilises the browser's ogg/mp3 decoder, and the browser's png decompresser. pngs/jpegs do not provide size information.
fixed non-browser ogg decoding and openal logic. should finally be fixed, I guess.
wasted some time on an ezhud plugin, along with ensuring certain info is available to the plugin. this is still a work in progress however.
non-web builds are now able to download images from urls.
download progress does not display for uri_get/uri_post builtins, nor other non-saved things.
q1qvm logic now uses pr_maxedicts cvar. the gamecode api still provides no way to tell how many are permissable, so set at own risk.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4852 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-21 04:12:00 +00:00
Circlemaster
83f40b8c49 Is this better? srand only called once...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4793 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-11-23 22:56:37 +00:00
Circlemaster
6c74368870 Added 'dir' command to play a directory of demos.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4790 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-11-21 18:10:29 +00:00
Spoike
87564c9d79 stripped out my ancient form of in-engine translation. Implemented gettext style translation instead. Automatically determine language from environment settings.
try to imitate cyrillic chars if the charset doesn't support them using koi8 mappings, so russian-speaking users don't get so easily pissed about not knowing how to select a font that actually contains chars for their language.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4544 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-11-29 14:36:47 +00:00
Spoike
c6c3d3f4e0 Trimmed some dead files.
Quick hack preliminary d3d11 renderer. I'm not likely to touch this again for quite some time.
Sys_Error works properly on android, with an error message shown. Should be less of a stab in the dark if you get errors. Seg faults are still instantly fatal. Not much I can reliably do about those - most of the juicy ones will likely occur within the gl drivers (even if its my fault) and java will still call in to it.
Stereoscopic (quad-buffered) rendering is in the gl renderer. You'll likely need a quatro to use it despite it being a gl 1.0 feature. No idea about ati. See r_stereo_method for non-quad-buffered alternatives.
Tweaked networking to not overflow so much. Needs testing against other qw clients.
Fixed an issue with surface numbers > 32k on limit-breaking maps.
Fixed a preparse issue resulting in QW clients dying with the ne_ruins map's progs.
Support for the DP-variant of BSP2. The depricated RMQ variant is still supported.
QTV proxy now uses ipv6 hybrid sockets where possible. Preliminary pext support.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4105 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-09-30 05:52:03 +00:00
Spoike
3da350a3ed NQ-related bugfixes.
Added new project/target for easy integration into NQ engines - read nq_api.c for guidelines.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4024 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-04-23 04:37:33 +00:00
Spoike
6385756e75 work around eztv newline bug.
Websocket support.
Better IPv6 support (at least as a server).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4019 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-04-20 14:41:40 +00:00
Lance
73204d959c Same as last commit, except this one will affect .cfg's where the default port is changed
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3877 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-15 16:31:53 +00:00
Spoike
9b6ea1c114 Fix for recent timing issues, hopefully.
Fixed a couple of warnings.
Added voip options to menus.
GL+D3D merged builds compile, but d3d is probably broken still.
Added vid_gl_context_es2 cvar to attempt to init a gles context. Note that you also need to set the requested gl version correctly.
Changed qtv's webpage view slightly, for slightly updated npfte usage.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3714 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-01-04 02:56:16 +00:00
Spoike
c0680334c7 What could possibly go wrong?...
Multiple consoles can now be printed/cleared via extra con commands.
Fixed the tab-completion alignment, by adding support for \t characters.
Changing the download mechanisms. Don't try downloading an ftp:// file. It'll probably crash you for now.
Trying to fix load time issues on q3bsps with a lot of curves.
Fixed sprites.
Added warning prints/spam where the new backend is bypassed, thus marking things that still need to be fixed.
QTV proxy fixed to not sit on qw servers unless someone is actually watching. Will ping for status requests still.
QTV proxy now supports ipv6.
QTV proxy now attempts to use the fte browser plugin.
Reworked the browser plugin code, now uses threads instead of ugly hacks. This should make cooperation with other such plugins work. Fixes unresponsiveness of opera, and gives an API that can be used from any other bit of software you want, tbh (read: internet explorer/activex plugins).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3516 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-03-14 14:35:56 +00:00
Spoike
0e3193a3ef Broken more stuff.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3246 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-07 23:40:06 +00:00
Mark Olsen
ac82538714 Less undefined operations.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2829 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-12-27 15:31:27 +00:00
Mark Olsen
0ecc551f45 Removed qstrncpyz() (why all the duplicate functions?), replaced usage of qstrncpyz() with strlcpy(), Made catbuffer() not braindead.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2824 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-12-27 15:18:40 +00:00
Spoike
6006580d8a Knocked up some commands and stuff to make qtv not forget about streams that failed. Finally implemented the commands command. Added commands to enable/disable streams.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2812 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-12-12 11:17:18 +00:00
Molgrum
35854f67b8 Missing linebreaks on these prints.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2787 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-11-16 17:30:56 +00:00
Spoike
7f6bdae56f Fixed one of my #warnings
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2564 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-08-03 14:40:09 +00:00
Spoike
b0759ce32f Some cleanups, reworked commandline parsing, added basedir command
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2557 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-08-01 14:55:28 +00:00
Spoike
9b24dd1871 Cleaned up a little
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2529 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-07-23 10:53:59 +00:00
Spoike
70b55a446c Support for reverse connections, and added a few stdout cleanups. Added two svcs which can happen in single player/coop.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2512 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-05-28 02:31:48 +00:00
Spoike
6210ed87be Some tweeks to stop qqshka from moaning. Also added qtvlist and qtvdemolist commands. Tweeked the webpage generation to be more informative.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2472 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-03-03 21:39:06 +00:00
Spoike
f321ee32ee some bugs have been spotted. one serious one regarding demos and small downloads and reading configs. a couple of minor ones, and a minor cleanup too.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2464 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-01-09 05:24:03 +00:00
Spoike
47f9440a30 cameras start at intermission spots, stream change messages for other users, cleaned up the menu code a little
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2458 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-01-06 09:46:32 +00:00
Spoike
55f5344510 Rewritted entity parsing, so should work fine with .join now.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2451 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-12-26 21:26:10 +00:00
Spoike
acf93f1548 qtv changes allow you to spectate annother spectator. FTE changes fix independant physics stuff a bit, and fix AVI recording a little also.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2440 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-11-03 15:53:04 +00:00
Spoike
c3dc9b0b8a Don't print anything about empty commands.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2428 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-10-27 10:57:06 +00:00
Spoike
cdcbe7773c Finally added allownq command.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2425 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-10-22 20:31:10 +00:00
Spoike
36c6537847 Added timeouts to viewers, added a cleanup.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2424 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-10-22 19:18:15 +00:00
Spoike
89428eee82 Made the various qtv commands more usable.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2417 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-10-20 14:17:56 +00:00
Spoike
300f84b8c1 A few user interface changes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2402 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-10-07 22:29:31 +00:00
Spoike
1d4ada39d2 WARNING: Includes protocol changes.
Protocol changes will allow for passwords/commentator access.
Restructured some of the code to clean it up.
Added mini-http server for serving up qtv files for streams.
Mostly supports acting as an nq server, not totally finished yet.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2380 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-09-17 01:27:32 +00:00
JohnNy_cz
78c35eee81 help updated, shows build date now too
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2325 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-06-11 12:09:29 +00:00
Spoike
aaef149474 Corrupted the QTV proxy.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2189 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-04-11 22:15:09 +00:00
Spoike
6173ed0ebc Now connects nicly to regular qw servers.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1982 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-02-21 23:25:54 +00:00
Spoike
2d86a6140b Gets past map checks... but times out too easily in linux :(
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1981 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-02-21 19:55:12 +00:00
Spoike
cb3f383214 Lateset set of changes make it more easily configurable. Connect to it as localhost and use the admin alias.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1976 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-02-20 01:33:13 +00:00
Spoike
dad5de099b revised the proxy a bit. one cluster, one udp socket, multiple streams. Hurrah! I wonder how many bugs I just added.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1435 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-10-07 02:02:15 +00:00
Spoike
aac5a6578c Some issues fixed, linux works just the same as windows
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1376 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-25 20:50:57 +00:00
Spoike
54109b7715 Fixed license.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1375 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-25 04:49:02 +00:00
Spoike
45ca3e5401 Added record/stop commands, allowed same-behaviour alternatives to the 'file' command, and made status show port numbers.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1371 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-24 21:36:06 +00:00
Spoike
2ff1861516 Send a ping when first setting the master server like qw servers do.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1364 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-24 14:50:48 +00:00
Spoike
8c09c705d0 Command execution, for rcon, configs, and console.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1353 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-24 04:45:24 +00:00