Commit Graph

337 Commits

Author SHA1 Message Date
Spoike d8fdaabfe4 fix -window etc.
Support 'color 0x00ff00' for green skins. Cos we might as well.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4163 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-12-12 22:16:08 +00:00
Spoike 95266f8215 d3d11 fixes. mipmapping implemented, vertex streaming more performant. Still behind the d3d9 renderer.
Fixed d3d11 vs d3d9 conflicts when switching renderers.
Fixed hlsl-less d3d9 lava.
Added gl_specular_fallback to override the default gloss level.
Added these cvars to give more control over imported/dlight lighting r_shadow_realtime_dlight_ambient r_shadow_realtime_dlight_diffuse r_shadow_realtime_dlight_specular r_editlights_import_radius r_editlights_import_ambient r_editlights_import_diffuse r_editlights_import_specular. Effective value of r_editlights_import_specular is now 1. Was 4.
Fixed spot/cube/smap lights.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4160 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-12-04 19:37:57 +00:00
Spoike d248ce223f added support for persistent particle effects in hexen2.
tweaked shutdown of sql to not make sql unusable after 'disconnect' on a listen server, fixed a couple of mem leaks.
audio no longer starts up twice in windows.
removed specular permutation. its either globally active or globally inactive.
Use oblique near-plane clipping instead of a clipplane, fixing our rtlighting+water warping.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4156 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-11-29 13:37:48 +00:00
Spoike ea1f452b99 Small compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4153 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-11-27 06:06:25 +00:00
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 4cc1341b22 couple of fixes for q2 + berkelium.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4122 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-10-10 22:58:51 +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 b937bb8161 server now claims to be proquake-compatible, so will use 16bit angles for proquake and its nq clones.
fixed an angle size issue with fitzquake. this was not an issue when only the rmq protocol was used as the server forced all angles to 16bit anyway, but does matter if the server is using the same basic protocol without angle extensions.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4108 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-10-01 14:29:44 +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 8ae45223dc Android: fat presses, vibrator, onscreen keyboard, keep-screen-on, console scaling, touch-based console scrolling, additional bindables.
Some memory leaks fixed.
latency with the nq protocol over loopback is much reduced.
Terrain: now mostly a property of a (q1 for now) bsp map, file format changed, glsl now built in, terrain editor builtin improved/changed, holes supported.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4067 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-07-14 16:25:18 +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 4db8b46c4b implement ripplemaps. currently requires explicit mod support to use properly.
fix hexen2 conchars
fix audio sample mixups
fix recent beam-related crashes.
added orthographic bsp culling routines.
fix crash on vid_restart.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4050 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-05-14 01:41:08 +00:00
Spoike 48d03aff82 mingl fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4044 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-05-10 19:14:25 +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 5049001068 compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4006 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-03-20 03:52:16 +00:00
Spoike 53116a9763 tweaked console completion to be less spammy and to show descriptions for commands where available.
added a few descriptions to a few cvars.
tweaked strzone/strunzone, added memalloc/memfree/memcpy/memset (use pr_dumpplatform to dump out a new defs).
tweaked android to use a smaller audio buffer, hopefully reducing latency slightly. let me know if this results in bugs...

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4005 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-03-19 06:30:41 +00:00
Spoike 4149c85ab6 tweeks and changes for android.
audio mixer revamped to cope with threads. 'cache' memory functions no longer used for audio.
added windows acm code to decode mp3 files.
audio playback rates scale with game speed. snd_playbackrate added to control the rate of new samples.
sv_gamespeed no longer needs a map change.
fixed '=' on german keymaps and in_builtinkeymap 0 (and similar issues). bug: keybind names still use US keymap.
added support for rmqe's 24bit network precision.
fixed byterate reporting to no longer be protocol-dependant (nq rates are no longer wildly inaccurate).
removed waterjumping when already dead.
fixed model matrix for viewmodels (modelview unchanged), thus fixing rtlighting on viewmodels.
Added bspx support for rgblighting, lightingdir, and (preliminary)brushlists.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4001 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-02-27 12:23:15 +00:00
Spoike 47ccd3bd0d fix movetypes, fix q2.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3994 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-02-15 13:53:30 +00:00
Spoike 0736882c60 trying to fix q2 connectivity.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3993 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-02-15 13:35:37 +00:00
Spoike ee72d0ca0d I'm tweeking pmove.c for the luls.
fixed 8859-1 for non-english hexen2
tweeking my deltaing.
cl_demospeed bugs fixed.
fixed things being seen through skys.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3990 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-02-14 15:50:34 +00:00
Spoike 9ee7301d32 my attempt at android multitouch (csqc can also distinguish separate mice in windows too).
playing around with fragmentation and mtus. added net_mtu to negotiate some mtu size for smaller (or larger) network messages. setting a custom mtu allows for message fragmentation too.
trying to add a reworked deltaing protocol, including all sorts of fun stuff like bbox sizes, and higher ent limits.
added support for content override entities. set the skin field to some (negative) contents value, and you get movable water with prediction and waterwarp and everything, though you likely want a custom qbsp or a shader to get backface culling.
removed some madness with model skins, fixing some weird q3 bugs.
fixed forced-pause-on-start for q2
fixed q3 server to actually accept client packets again.
fixed strftime builtin

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3979 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-02-12 05:18:31 +00:00
Spoike 567e9f112b added DP_QC_ENTITYSTRING builtins.
mvd playback fixes/cleanups
r_fb_models more closely matches ezquake.
readded str[i] support.
fixed char constants (outside of strings).
string table compression no longer affects distinction between "" and string_null.
multiplayer savedgame fixes.
don't bugilly change hexen2's playerclass on loadgame, and preserve the STR_foo globals which are not marked for saving.
fix small bug on player renames. added a temp debug print to try to catch the issue onemanclan is having.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3961 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-24 04:24:14 +00:00
Spoike fb214142a3 tcpconnect fixes
lots of hexen2 fixes
fixed clipped decals again, still not using any...
fixed zips over 2g
rewrote bloom to use glsl. should be slightly more usable now.
lots more hexen2 fixes

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3957 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-17 07:57:46 +00:00
Spoike 016c840497 fixed rcon_address not having a default port
sv_port now accepts a space-delimited list of addresses/ports to listen upon.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3945 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-01 06:25:51 +00:00
Spoike 9e4edb8a9a Small fixes and tweeks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3940 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-12-26 15:19:13 +00:00
Spoike 1693ba6c58 revamped fog to use glsl. shouldn't harm framerate quite so much.
tweeked d3d renderer. certain shader constructs might be broken now so don't try q3 with it, but framerates are up when playing quake.
tweeked gl rendering too, timedemo results seem a little higher also.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3933 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-12-23 03:12:29 +00:00
Spoike d6d0105d3c A couple of changes.
Added a higher quality particle config.
Quick hack for crepuscular rays.
added new command, eg: pr_dumpplatform -FFTE -O csplat
used package reporting on servers, auto package downloading on clients, should be fully implemented.
Smoothed out players a little. Added option to menus.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3926 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-12-05 15:23:40 +00:00
Spoike b356dc75aa linux/gcc/general fixups.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3911 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-10-27 16:42:53 +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 4b27934867 Basic Android support. Icon resources still need to be replaced. No sound, no accelerometer.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3901 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-09-16 05:56:54 +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 729d6181c2 Misc bugfixes, including q3bsp-rtlights and bloom. Matrix use clarifications. Working towards skeletal glsl code.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3890 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-30 14:14:56 +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
TimeServ a0e7300da2 add cl_yieldcpu, fix setmodel with NULL pointer
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3869 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-13 05:48:09 +00:00
TimeServ a88b23e1f3 use colormap only for determining fullbrights, commit in sound paint funcs
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3847 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-06 05:53:25 +00:00
TimeServ c6f4994293 attempt fix minimal build, add 7.1, try to fix speaker spacialization
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3846 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-06 01:40:40 +00:00
TimeServ 7f1db63765 remove defunct splash screen code, add cl_idlefps to reduce cpu usage in "idle" situations
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3845 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-06 01:01:13 +00:00
TimeServ 027c09bd6a cl_indepphysics -> cl_threadedphysics, properly register r_rockettrail/r_grenadetrail, fix menu spacing regression
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3821 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-18 05:41:10 +00:00
Spoike 174ba9f64b Trying to fix lingering d3d bugs. Added support for proquake's angles extension. Various other hacks and changes and tweeks. Mostly trying to fix D3D issues. Also added con_separatechat cvar.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3818 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-16 02:03:57 +00:00
TimeServ b0124c7df5 remove cl_predict_players2, slightly more menu work
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3817 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-15 23:01:07 +00:00
Spoike 78d4632097 Added -dumpstack option to catch fatal signals for stacktrace dumping. Writes to both stderr and a crash.log in the WORKING directory. Admins are expected to email a copy or something to an FTE dev, then delete it. Clients connecting will be notified, but unable to obtain actual details via quake.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3813 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-06 01:41:33 +00:00
Spoike d039841d21 Does this fix anything?
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3812 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-05 23:53:33 +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
Spoike d5ab16befc heightmap semi-functional again, but still useless.
A few bugs fixed.
Slightly better compatibility with DP.
Added breakpoint_csqc command to set breakpoints in csqc to better debug csprogs.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3793 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-05-20 04:10:46 +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 6a4976300e fog control, vaugely similar to fitzquake, but runs slower. does at least work properly with rtlights.
fixed menutint.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3761 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-03-31 02:32:32 +00:00
TimeServ e4e2399c69 change out build number/version number logic, remove some unused variables
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3757 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-03-30 15:17:55 +00:00
TimeServ cdb6dccb97 remove bulleten support, rename vidgles -> videgl
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3756 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-03-24 14:35:24 +00:00
Spoike ab865b7e25 Playing with valgrind and hexen2.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3730 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-01-30 01:32:30 +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 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 4505f7321b various small bugfixes, mvd+voip should work again, qcjit changes, towards usability.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3700 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-18 17:02:47 +00:00
Spoike ca9028ef76 Lets see if this works in loonix.. ehehe.
Added win7 recently opened links, so rightclicking pinned icons gives recent servers. Perhaps not the best implementation (lol) but yay, only a little bit of horrible COM crap.
Hacked about with the scripted particle system. Classic is now the default set, but the scripted system is still active and can be used by mods or whatever if they wish.
Interpolation changes: should feel better on non-fte QW servers now. Not sure about other server types.
Added svc_setanglesdelta.
Fixed vwep+skins.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3682 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-05 02:46:07 +00:00
Spoike a9ff7b962e Client improvements for NQ support.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3678 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-28 19:19:06 +00:00
Spoike 5d25e9991f Misc fixes+cleanups.
r_loadlit 2 will now use a few more cpu cores to get the job done, if it can.
Fixes the menu background shader that I broke.
Shader parser accepts cvars in more places.
d3d+gl now share common conwidth calcs code, fixing d3d issues.
d3d supports more backend features (no more gun in walls).
show_fps calcs the framerate itself, so is more accurate in regard to frame times, regardless of how much I break other stuff.
Now attempts to sleep a little between frames, to reduce cpu load and electricity (important on laptops maybe).
cl_netfps will now default to 100.Enabling independant physics by default. The framerate defaults to a max 500, to avoid too many issues with too small time deltas. You can still set it higher if you wish.
Enable voice chat by default (sorry moodles!).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3668 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-22 02:03:28 +00:00
Spoike 8e8758f053 csqc's getplayerkey's "voipspeaking" or "voiploudness" are now implemented. the later works only for the local player, the former will report true only if the server is echoing.
Now sorting players by team first, if teamplay.
Sort NQ players into teams based upon their lower colour. teamplay is only set if its a server that sets a proquake team thingie, but the rest is basically ignored.
Interpolate svc_setangles spam on nq servers, still need to do/test qw servers.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3667 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-21 03:39:12 +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 2937f9d861 Now understands spams setangles.
D3D is a little more complete, lighting on models appears correct.
Added rate scaling to the sound system. Not sure on the configuration yet, and its not queryable in any way. Misc sound related cleanups.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3619 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-06 23:05:29 +00:00
Spoike fcba94f554 Merging D3D and GL renderers a little.
D3D should be functional now. Maybe not pretty, maybe not complete, maybe not correct, but at least playable, at least with classic particles.
Some download fixes.
Some q3vm 64bit fixes.
Removed some dead cvars.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3614 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-02 23:17:25 +00:00
Spoike 22bb395305 hexen2 client effects now go via the particle system, if they're supported at all. Added 'h2part' description to provide this.
Fixed svc_setangles and sv_bigcoords.
Model code is now responsible for transforming traces instead of it being generic. This fixes rotating things getting stuck in players in hexen2.
The renderer now generates a list of surfaces to draw. Backend now performs rotations/scaling per entity. This fixes sorting order, at least when not using realtime lights.
Hidden items in the hexen2 inventory that you do not have.
Added colourmapping for hexen2.
Should be easier to click on menu items for hexen2.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3602 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-28 17:14:38 +00:00
Spoike a4ed95a376 Fixed hexen2 plaques.
Fixed hexen2 new game menu ignoring class the first time around.
Fixed hexen2 pickup glows.
Slight loading speed improvement due to testing less texture paths.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3587 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-17 02:44:21 +00:00
Spoike 918833a763 hexen2 infoplaque.
splitscreen controls now on the menu.
Fixed splitscreen panorama.
Pause automatically when at the console/menus.
Attempting to clean up replacement texture paths (internal textures are still an issue).
Fixed a crash when playing oversized demos.
gl_bloom/ffov should now work again without bugging out.
H2 Demoness's staff should no longer generate errors when shooting with the tome of power. Some other related changes.
Server should compile now.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3585 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-16 02:03:02 +00:00
Spoike f535baa59f Added per-player userinfos (for splitscreen).
Enabled cheats in single player by default.
Added a 'sky' alias to wrap r_skybox.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3583 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-14 03:17:33 +00:00
Spoike 2cad75bc69 Attempting to fix/rework splitscreen.
Removed the impulse2/+forward2 etc commands.
Added +p2, -p2, p2 commands as a prefixed command instead. don't use + or - on them (so '+p2 forward' to move player 2 forward), this permits a simple generic way to send commands to a single player from an input device.
rawinput mice will submit commands/movements based upon idx%maxsplits, they will correctly submit mouse clicks, which will be mapped through the +p2/+p3 commands as appropriate, so each mouse is purely for a single player.
Fixed player model visibility in splitscreen mode.
Ignoring allow_splitscreen for the local player, cl_splitscreen is technically now the only enabler (though you will need to configure rawinput or binds).
Added support for { texturename prefixes.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3582 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-14 00:15:07 +00:00
Spoike fd16657900 Hexen2 fixes, compile fix, and splitscreen fixes although you won't see other players yet - I know why but its not an easy fix, and I don't want to break other things any more than I have to (R_ShouldDraw+external models).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3581 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-12 09:04:05 +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 244c08ad04 Attempted to add support for divVerent's varlen protocol extension info. This is more silencing warnings than anything else.
Also tweeked video code to remove 6 dead sw-only functions.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3556 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-18 08:42:59 +00:00
Spoike e7ec40d0c8 Trying to fix some leaks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3547 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-12 22:46:37 +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 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 3b460e37b7 Reworked polyblends to use the backend. They no longer get stuck quite so much either. Added cl_download_mapsrc cvar (and plugin field) to specify an http location to download maps from (useful for demos, etc). A few other changes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3522 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-03-25 22:56:11 +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 589ef03c05 FTE, now with added C support - no longer treating enums as regular ints.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3509 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-02-06 01:25:04 +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 ad07e50ee8 Allow lumas if the server doesn't care.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3329 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-24 19:46:32 +00:00
Spoike f419538b37 Added skygroup command. Also polygon offset cvars. Even though its evil - I'm not sure how long it'll stay.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3321 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-19 20:43:07 +00:00
TimeServ a94a33212c destroy software rendering and break everything (and that won't be all!)
also note that merged builds on non-windows no longer make much sense

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3283 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-16 22:06:59 +00:00
Spoike 4767b7215d Blame the monkey.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3238 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-06 06:09:49 +00:00
Spoike a80214290d Oh noes! Everything is broken!
Rewrote much of the console code. Should be no obvious differences.
Nearly all conchar parsing goes via a single function. Still some left in the dedicated server code.
Added the ability to parse utf-8 text, disabled by default.
Added the ability to input unicode chars using whatever keymap the user has set up in windows (not enabled by default).
Reworked vbo stuff to be a little more versatile.
Added toggle console command.
Added freetype2 support (not compiled by default).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3234 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-05 18:45:53 +00:00
Spoike f2cce499f6 Multiple minor cleanups. Chunks of dead code removed.
Added com_parseutf8.
Z_EXT_VWEAP is supposedly supported serverside, but not clientside. It is not advertised, and not used, yet.
Fixed csqc mouse issues in linux, supposedly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3226 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-06-21 17:45:33 +00:00
Spoike 9cd988a836 Added csqc->ssqc requests.
Fixed up cl_indepphysics. Sending is fully independent, bar sync points.
Fixed so #if 0 works in qc code.
Fixed up error conditions in qclib when features are not supported.
The webpage generator will now refcount properly.
Fixed error conditions when using glsl shaders.
If MULTITHREAD is defined, r_loadlit will not light inside a separate thread.
We now generate VBOs for bsp objects. Shaders/rtlights don't use them yet.
Fixed up MVD/multiview playback a bit. It now looks like it works! (cl_hightrack will no longer track the same person in all views).
Fixed error conditions when attempting to download versioned csprogs.
Reduced the number of places that a q3-style marked up string is expanded. I think there are a couple places left still though. Approximated ezquake colour codes.
Memory mapped read file access in win32, where we can. Not sure about this. Lets see how things pan out.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3195 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-05-24 10:11:17 +00:00
Mark Olsen 2decc6d5c8 Please do not try to shut down the video code twice, kthx.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3188 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-05-10 21:44:13 +00:00
Spoike e403cebc65 Should be more robust with first-run config execs now.
Multiple download sources can be specified (eg for mod+map). Takes the form "providedfile:urltodownload providedfile:urltodownload". This comes via the browser so relative urls = woot. The old single-url-only path is no longer supported. This is an incompatible change, but we're still young. The unpacking process is still the same, and still only paks/pk3s are extracted. Note that the providedfile is relative to the base dir rather than the game dir. You can specify potential alternate gamedirs.
The QTV file is not mandatory, you can use map="blah" join="blah" stream="0@blah", so long as you set the mime type as: type="application/x-fteplugin". src="someqtvfile" still works, of course (and doesn't mandate the type= field, although that should probably be specified to make life easier on configuring servers to use the correct mime types).
The splash image can be set with: splash="myurlhere". Note that only jpg and png files are supported. This comes via the browser so relative urls = woot.
Game property can take multiple game dirs now, too. First argument is the basic game. If its one of the special ones then FTE is meant to hunt down your prior install for that. If its not recognised then its added as the only game directory. Additional ones are added after (eg: "id1 fortress" adds just id1+fortress while "q1 fortress" adds id1+qw+fte+fortress). Use appropriately.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3160 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-07 01:26:47 +00:00
Lance 030e080baa Wrapped sv.state with #ifndef CLIENTONLY to resolve npqtv's compile
error (I hope it's the proper fix, Spike please check if I did the 
right thing):
./client/cl_main.c: In function "Host_Init"
./client/cl_main.c:3708: error: "sv" undeclared (first use in this 
function)
./client/cl_main.c:3708: error: (Each undeclared identifier is reported 
only once


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3158 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-06 05:46:17 +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 0eb7e83965 Stuff should compile a little better with GCC now.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3150 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-02 22:25:54 +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 99c153199e version console command is now common, instead of client only.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3130 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-02-22 13:50:17 +00:00
Spoike c8f10aa212 Allow the user to change the protocol used by FTE to connect to itself. Only 'qw' is fully reliable at the moment, and that's the default. Eventually this can be cleared out to default to match the running progs type.
Also made the 'user' command semi-work in NQ.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3118 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-02-08 04:39:46 +00:00
Spoike 45692d1d1e an old new feature which had been on the wrong comp for a while.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3096 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-01-14 16:07:07 +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 4e1f6daf9f Split cl_nolerp into cl_nolerp and cl_nolerp_netquake. This means that netquake can have a different default. This allows it to be smoother without arcane tweeking.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3084 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-12-03 02:42:05 +00:00
Spoike 6fb100e8b5 more stuff broken
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3071 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-11-28 20:34:51 +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
TimeServ 0adc1e1054 clear colorshifts on disconnect, don't decrease cshifts on gamma change, fix warning
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3009 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-06-12 23:19:47 +00:00
TimeServ 3a7d339c38 new cvar cl_sparemsec (you shouldn't have to mess with this really), modified the sendcmd logic so cl_netfps works better and remote connections are a bit more efficient
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3007 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-06-12 20:47:13 +00:00
Molgrum 33140dbf24 Ruleset expanded with ruleset_allow_localvolume. Set to 0 in 'nqr' and 'strict'. Made NET_AdrToString return a non-static pointer.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3002 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-06-08 14:37:57 +00:00
Spoike 519983dee2 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2992 fc73d0e0-1445-4013-8a0c-d673dee63da5 2008-06-01 22:06:22 +00:00