Commit graph

81 commits

Author SHA1 Message Date
Spoike
53a7b3d47c added support for external capture plugins - and using avcodec as a plugin.c.
The ragdoll API is potentially usable now, but still really limited.
Enabled SQL requests by default using sqlite. Note that you'll need the sqlite dll to use this. MySQL should still be usable, but I didn't try. MySQL requires -DUSE_MYSQL to compile it, and a dll and -mysql argument to enable it.
Fixed nacl.
NPFTE plugin now invokes an exe to run the game rather than running the game within the browser.
externvalue builtin now accepts & prefix to return a pointer instead.
Fixed vector autocvars.
uri_get, bufstr_add, bufstr_free, now functional.
QC debugger can now show asm if line numbers are not available.
Added support for QC watchpoints. Use the watchpoint command.
gl_specular now give specular even without rtlights, thankfully not as blatently, but its there.
android will not crash due to supported audio formats, and gles2 can be selected via a cvar (requires full FTEDroidActivity/program restart).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4152 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-11-27 03:23:19 +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
fe23d72d69 Android tweeks
memory freeing tweeks
batch data rearranged a little (to try to reduce memory).
RBSP/FBSP fixed. lightstyles now supported.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4059 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-07-05 19:42:36 +00:00
Spoike
33a540806e Small tweeks, bugfixes, breakages, cleanups...
Added $reflection texture map for (water) shaders. Just renders the screen to an fbo before rendering the surface.
hub/savegame fixes.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4034 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-05-09 15:30:53 +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
25ef3f02db Couple of bugs fixed - other-player prediction, net_preparse crashes, q2 gamecode no longer crashes.
Throttle getstatus requests (so we don't end up being used for udp escilation (d)dos attacks so usefully/expensively).
Added cl_predict_players_frac. vanilla QW effectively had a hardcoded value of 0.5.
Added simple fps preset menu, which keeps on appearing until they actually pick one. mwahaha.
Quit menu offers to save settings if some CVAR_ARCHIVE cvar was changed.
alias models do vertex blending on the gpu.
GL renderer now uses vao when available.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4031 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-04-24 07:59:11 +00:00
Spoike
5118de8bdd committing for fixes for OMC
some minor changes. Mostly bug fixes and internal reorganisation.
Added code to provide an activex control as part of the npfte.dll plugin. If the dll is registered the regsvr32 way, the plugin can be used with IE as well.
fisheye/panoramic view enable is now controlled by rulesets instead of serverinfo.
server will list all pak files it has loaded. client will probably do the wrong thing and still needs fixing properly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3909 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-10-27 15:46:36 +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
Spoike
261b104c09 Added a cvar to enable recording mvd files containing 'unsafe' extensions, so CSQC ents can now be recorded. This defaults to off, and is expected to be enabled for mods that are truely FTE only.
Recording qwd files works again.
Not all extensions are fully implemented, when recording both mvds and qwds, particularly the initial connection info (including model list length).
Ezquake's invalid chunk requests generate no protocol response. Ezquake should no longer kick itself after every download.
Couple of other bugs fixed.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3893 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-08-16 04:12:15 +00:00
TimeServ
fb073f3507 change alot of sprintfs
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3884 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-22 15:11:35 +00:00
Spoike
61e4aa96b3 removed separate trigger/solid links.
some q3 fixes.
q2 will autosave on map changes, like q2 normally does.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3839 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-29 18:39:11 +00:00
Spoike
f66110b5e6 Trying to fix mvd recording/playback a little.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3811 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-05 01:36:14 +00:00
Lance
afa29b36fb Wrapped #pragma comments()'s with MSVC specific macros so GCC can be read more easily. Also undeprecated edict_size in world.h.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3800 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-05-29 04:26:29 +00:00
Spoike
3b936a3f24 Paranoia regarding recursive errors, may fix the issue bigfoot has.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3731 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-01-30 11:24:14 +00:00
Spoike
386424a8e6 This should more closely match other engines in timedemo results.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3729 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-01-29 22:24:19 +00:00
Spoike
4fb854e261 Fix a couple of things I noticed while playing in linux.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3727 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-01-29 19:53:38 +00:00
Spoike
da09f7ba44 Me having lots of fun with voice chat.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3656 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-15 02:40:31 +00:00
Spoike
ce07219448 Fixes, workarounds, and breakages. Hexen2 should work much better (-hexen2 says no mission pack, -portals says h2mp). Started working on splitting bigcoords per client, far too much work still to go on that. Removed gl_ztrick entirely. Enabled csprogs download by default. Added client support for fitzquake's 666 protocol, needs testing, some cleanup for dp protocols too, no server support, couldn't selectively enable it anyway. Now attempting to cache shadow meshes for explosions and stuff. Played with lightmaps a little, should potentially run a little faster on certain (intel?) cards. Tweeked npfte a little to try to avoid deadlocks and crashes. Fixed sky worldspawn parsing. Added h2mp's model format. Fixed baseline issue in q2 client, made servers generate q2 baselines. MOVETYPE_PUSH will not rotate extra if rotation is forced. Made status command show allowed client types. Changed lighting on weapons - should now be shaded.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3572 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-11 03:36:31 +00:00
Spoike
1e1084bed7 Changes merged from trunk. Also additional extensive changes. Q3 portals work.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3541 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-11 02:22:39 +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
66b78c0b11 Work In Progress branch.
In this version: replacement GL backend. Replacement D3D backend sharing code with GL. Lots of code reorganisation.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3401 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-04 21:16:50 +00:00
Spoike
0cf3e1ff54 Freeze NQ demos while content is being loaded, so it starts at, urm, the start.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3299 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-18 19:46:32 +00:00
Spoike
cd619e991f Only start timedemo counters once the map has actually finished loading, and force the console up.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3273 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-14 15:10:07 +00:00
Spoike
eda16ea10f Permit precaching of just an md5anim with no md5model. You'll see a debug wireframe skeleton if you actually try drawing it.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3250 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-08 01:17:27 +00:00
Spoike
2adb420a6d Reworked the console/loading screen a little. The console is no longer directly shown at startup. MSVC2005 project files update for npqtv.
Added vid_wndalpha to make the window transparent (only supported in GL-win32).
Multiple issues with SW rendering, which I'll fix eventually. It does at least run, even if it looks ugly.
Plugins are now able to read the console input. Bigfoot, feel free to tweek.
Fixed up a few mismatched prototypes.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3153 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-06 00:34:32 +00:00
Spoike
4974c57c2c Big fat-off commit.
A few changes. Half-Life support is finally getting committed.
Some unnecessary filesystem code changes.
And there's code for nsapi - meaning we can embed FTE in a browser (firefox and opera on windows work).
A couple of CSQC changes, trying to move towards a final EXT_CSQC_1.
Revised ruleset format finally implemented.
Doesn't compile with msvc6 due to issues with libjpeg not being a clean library.
Presumably its fine in vs2005.
Your mileage may vary.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3148 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-01 22:03:56 +00:00
Spoike
6e3f69f504 d3d rendering is diabled (framestate, read later - merged will compile just sw+gl for now).
fte particle scripts are disabled (classic works).
I'll fix these in the new year.
Redid framestate stuff again. Slightly better now, but this is the bulk of the changes here.
Reworked the renderqueue to provide batches of items instead of individual items. This cleans up the particle rendering code significantly, and is a step towards multiple concurrent particle systems. fte's scripted particles are broken as I'm trying to find a way to rework them to batch types together, rather than having to restart each batch after each particle when you have two particles in a trail. I'll fix it some time.
Reworked some alias model code regarding skeletal models. Added some conceptual skeletal bone control builtins available to csqc. Currently it can query the bone names and save off animation states, but can't animate - its just not complete.
Added more info to glsl custom shaders.
Updated surface sorting on halflife maps to properly cope with alphaed entities, rather than just texture-based blends (q2-style).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3095 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-12-23 02:55:20 +00:00
Spoike
dce284811e Minor update...
Q3 clients can connect to q1 gamecode (sv_listen_q3).
hacked support for SendFlags. It'll work compatibly, just not efficiently.
Unified shared qc builtins.
fteqcc supports int |= float, more params in macros, &~= operator.
Additional recent DP QC extensions.
Particle system abstraction. 'r_particlesystem classic' (vs null or script) will revert to truly classic particles.
Nexuiz might run again.
Network address revamp (sv_port and sv_port_ipv6 can both be used to specify an ipv4 address:port and both corrently accept clients). localhost now properly favours ipv4 (use ::1 for ipv6 localhost).
Download system revamp.
Numerous other changes.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3051 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-11-09 22:29:28 +00:00
Spoike
a44068f9b4 Slightly better handling of .qtv files.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3038 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-10-05 02:56:11 +00:00
TimeServ
1673ca7a7a PROTOCOL_VERSION to PROTOCOL_VERSION_QW to resolve a future header conflict
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2940 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-04-12 23:24:19 +00:00
Molgrum
ece33d0b2a Debug printout.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2939 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-03-29 07:10:21 +00:00
Spoike
28351eb001 Don't flood the client with packets if its not really ready to receive them yet.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2905 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-02-04 23:41:04 +00:00
Spoike
08f0d8bcb2 Made qtvplay work a bit better.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2886 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-30 02:32:00 +00:00
Spoike
18ee105ed5 Make playqtv slightly more robust. Only slightly. There really should be a better fix for this.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2872 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-23 01:36:51 +00:00
Spoike
776faf1bc4 Added initial support for eztv extensions. This is the bulk of the changes. Downloading isn't implemented yet though. Also fixed some demo playback sbar stats, and fixed NQ demo playback.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2852 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-09 00:52:31 +00:00
Spoike
5bfa1829d6 a qtvplay bug fixed.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2815 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-12-15 18:45:40 +00:00
Spoike
81b91a422d Fixed a couple of qtvplay bugs
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2811 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-12-12 11:04:04 +00:00
Spoike
c77d0a981a Fixed qtvplay, added a workaround for eztv proxies.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2799 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-12-01 05:55:44 +00:00
Molgrum
1675ef566e Fixed more warnings, not so many left now. Needs lookie as usual!
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2575 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-08-07 00:11:21 +00:00
Spoike
1069d3bfd5 Cleaned up demo parsing a little.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2541 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-07-23 12:00:17 +00:00
Spoike
a696882cb4 Small tweek that makes qtv slightly more usable without leaving the client.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2510 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-05-28 02:23:37 +00:00
Spoike
1f9484f93d One d3d renderer.
Wonder how much this breaks.
Place your bets now.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2501 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-05-25 22:16:29 +00:00
Spoike
2a10d9860e Expanded the .qtv file 'format' for later.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2456 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-01-06 09:38:08 +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
42c43d960f mostly miscilaneous changes (some old stuff that I don't remember), lightsampling changes, qtv changes, avi sound changes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2379 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-09-17 00:59:22 +00:00
TimeServ
084c095dc7 fix frame lerp again, dynamically allocate client baselines (should save about 2MB of memory on typical servers), bounds check baselines (stops invalid svc_spawnbaseline from crashing), small DP extension fix, fix demo baselines
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2365 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-07-24 04:24:41 +00:00
TimeServ
11b188b761 fix bug with cl_maxfps 0 and demo playback causing lockup, fix netquake demo playback
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2259 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-09 08:35:10 +00:00
Spoike
bfa9db357b playqtv now plays from an fteqtv proxy (with the 10 secs buffering).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2113 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-03-14 01:25:46 +00:00
Spoike
aeea639fc2 Filename security paranoia. Added a glsl extension to the shader system. using serverinfo, you can enable shaders without cheats now.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2079 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-03-11 03:12:10 +00:00
Spoike
3f6f2be82e fixed erroneous timeouts when playing NQ demos
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2072 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-03-10 03:51:12 +00:00