Commit graph

228 commits

Author SHA1 Message Date
Spoike
2bf193001b implement pcma+pcmu codecs for voip for xmpp compat, because they're fairly simple and I can.
remove MAX_MAP_LEAFS limit, although its still checked for sanity (just MUCH higher). You may need 64bit processes on account of the pvs+phs memory required.
integrated my fork of frikdec into fteqccgui. Just associate .dat with fteqccgui and it'll decompile the progs (compiling will then embed the decompiled source into the resulting .dat to avoid repeated decompilation). Be sure to back up first... not tested as a 64bit process.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5114 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-06-21 01:24:25 +00:00
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
5920bf05fb reworked menusys combo items, as per mushi's request. should be a bit prettier now.
fixed most gcc warnings when compiling for linux.
client can now connect to 10002 servers. probably 10000+10001 too, but too lazy to test.
doom3 map loading is working again, but has too many issues for it to be useful (leaks, premature purges, no texture_d suffix support), so its still disabled for now.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4999 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-02-15 06:01:17 +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
Spoike
8883bf4603 relax origin restrictions supposedly.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4848 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-03-19 00:56:46 +00:00
Spoike
f13a87f021 Added EF_BRIGHTFIELD to classic particles.
fix r_softwarebanding
fix r_waterstyle

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4842 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-03-03 07:54:10 +00:00
Spoike
911f98ffaa fix demo menu with system paths.
tweak some dp compatibility things. probably futile.
moved ode to a plugin.
added screenshot_mega command to take massive screenshots that are not tied to current video mode.
removed offscreen-gecko code completely.
added cvars to rescale offsetmapping from paletted sources, so it can be disabled where its ugly.
added support for zip weak encryption. the password defaults to 'thisispublic'. nothing is fool-proof.
gl: fix stereoscopic rendering.
gl: fix rendertargets with depth.
qc: added support for named builtins that do not have any specific number.
qc: added some new builtins. drawrotpic, drawtextfield, search_getfilemtime, and a few others.
qc: PF_Fixme now attempts to figure out which builtin you tried to call, for more friendly fatal error messages.
qccgui: stepover and stepout are now implemented, as is setnextstatement.
qccgui: added a way to annotate code with the asm statements generated from them.
qccgui: fixed double-clicking a src file.
qccgui: handles multiple .src files more usefully.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4832 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-02 08:01:53 +00:00
Spoike
dddee3d76c rewrote some master server code to isolate games.
servers will subscribe to both ipv4 and ipv6 addresses if a master's name resolves to both types.
handle filename security more cautiously.
avoid some wasted memory with q3bsps. fix crashing bug in dedicated servers.
try fixing OMC's latest issue.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4803 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-12-23 15:26:42 +00:00
Spoike
f118bccc6a fix some glsl issues.
fix gles+q3bsp black lightmaps bug.
enable q3bsp support in webgl port.
enable uncompressed pk3 support even if zlib isn't available.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4800 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-12-09 14:39:54 +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
a38b2d607e Support directories with only one demo.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4792 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-11-23 22:44:35 +00:00
Circlemaster
4f717b53f4 Fix to ignore non .mvd files in the directory.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4791 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-11-21 22:27:42 +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
332945dbba make sure RECONNECT_TIME_DEMO is enforced properly.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4789 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-11-21 15:11:48 +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
7225b474b6 tiny fix for nq and a small tweak for the libqtv builds to be a little easier to work with.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4451 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-08-02 00:51:07 +00:00
Spoike
6a831e2f99 qwsvdef.h is no more. Many files changed because of this.
enabled ssl support in windows for plugins.
updated jabber plugin.
tweaked downloading logic in an effort to end the madness.
Updated sql code to support sleeping the qc thread until query completion, as a more readable alternative to callbacks.
Client updates should be more explicit now, removing a potential bug.
networked terrain editing should now be in a better state.
updated the dir command to show paths too (so when the same file is listed twice, the pak its in will at least be different). Many files changed because of this.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4273 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-31 04:21:08 +00:00
Spoike
630af9dc7c ------------------------------------------------------------------------
r4187 | acceptthis | 2013-02-04 04:52:32 +0000 (Mon, 04 Feb 2013) | 9 lines

fix particle effect index insanity.
.modelflags support.
fix laggy mvds issue.
replacementdeltas works in mvds.
fix issues with not knowing which mvd is currently being recorded.
input line now permanently functions as utf-8.
cope with double-chevron links in the input line.
Add support for ^{xxxx}, but don't generate it. can only cope with 16bit anyway.
fix skins issues.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4185 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:44:00 +00:00
Spoike
63994793c9 audio on android is now configurable, hopefully.
tweaks to the media decoder's input controls and media plugin decoder stability.
lame basic volumetric fog support. needs improvements.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4115 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-10-08 04:36:10 +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
5d12d96f87 bigfoot complained that the timedemo framecounts didn't match vanilla. So now it matches vanilla (both nq and qw), but does not match bigfoot's own engine, because bigfoot's engine cheats and does not match vanilla.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4032 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-04-24 12:22:50 +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
827da9da9a gcc compile fix.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4022 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-04-20 15:20:45 +00:00
Spoike
7eeb3578b1 add sha1.c
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4021 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-04-20 15:20:22 +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
Spoike
e8c1f669cc Couple of changes.
D3D now supports hlsl shaders. Much functionality is still missing, but sky and water surfaces are in.
IQM models now supported.
Engine physics code is now potentially callable from csqc, but there are some issues which need to be resolved before its enabled.
FTEQCC has had some pointer/struct/array functionality improved. Complex trees can now be navigated properly.
added r_dumpshaders command to dump internal glsl scripts for editing.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3896 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-09-03 03:49:43 +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
Lance
a7b0200cd6 Hack for linux, open the IPv4 TCP & UDP ports before the IPv6 ports. Whatever is loaded 2nd will still result in a socket bind error (Address already in use), at least this way the IPv4 ports will be open.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3876 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-15 16:23:04 +00:00
Lance
1a5cb4add5 Removed qplaque.lmp and p_option.lmp from appearing on connected clients (only fteqw clients saw these) which blocked the menu text.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3875 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-15 12:51:05 +00:00
Lance
be91ec36e2 Tweaked VC6 project file, added MSVC10 (dotnet2010) & MSVC9 (dotnet2008) project files. Also header fix for MSVC9 and beyond.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3874 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-15 12:41:09 +00:00
Lance
4943723a8b socket/tcp/udp errors more verbose (strerror)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3872 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-14 09:18:04 +00:00
Spoike
93aba48cdc TA couple of fixes.
Meshes now have the right lighting if they were cached before rendering.
npFTE startup/shutdown/restartup is more robust and is less likely to crash browsers.
Re-added the r_shadows cvar. It now provides blob shadows.
Hopefully fixes mingw voip crash, may need mingw upgrade, sorry in advance moodles.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3784 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-04-30 17:21:10 +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
e6f90bea14 Tweeks to the d3d renderer. Supports various shader features now. Other changes/fixes/breakages also.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3531 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-05-01 22:47:47 +00:00
Spoike
ef6f71a5d1 Put the javascript stuff in the parent frame.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3521 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-03-25 22:36:48 +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
839a2a8c06 splat
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3249 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-08 00:15:06 +00:00
Spoike
041dcbe4e9 Yibble.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3248 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-07 23:50:02 +00:00
Spoike
5bb7c56c1a MSVC doesn't even warn about that.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3247 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-07 23:44:13 +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
Spoike
c6aca04939 Track special modelindexes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3052 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-11-09 23:10:28 +00:00
Mark Olsen
bfee598a7a Yeah, so sue me!
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3041 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-10-06 05:38:19 +00:00
Mark Olsen
0896e57367 Send a f_qtv command to the client on first connect.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3040 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-10-05 16:18:17 +00:00
Spoike
a8ad49db87 Fixed http url markup, courtesy of Cokeman.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3023 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-07-10 08:18:50 +00:00
Spoike
64c9a31e6b There. Happy now?
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3017 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-06-25 08:29:14 +00:00
Spoike
4dfdca03f5 Fixed handling of header fields. This is a major security bug fix (omission bug). Added some additional measures to prevent client exploitation also (clients should do this themselves too). Used some snprintfs instead of sprintfs due to paranoia, but these will fix nothing as it currently stands.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3016 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-06-25 07:13:47 +00:00
Spoike
2c2560eef4 The buffer is not meant to be terminated by a null terminator, but instead has a length. (it is always null terminated despite this)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3015 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-06-25 07:09:39 +00:00
Spoike
5e166cb9ce Made the (currently disabled) http download code more secure.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2975 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-05-25 22:02:52 +00:00
Spoike
85570cc4f4 okay, that print isn't meant to be stream-specific
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2904 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-02-04 11:31:32 +00:00
TimeServ
1805f13b23 changed #warning to comments so vc2005 would compile everything
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2896 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-02-01 06:13:30 +00:00