Commit graph

2015 commits

Author SHA1 Message Date
Spoike
f520bdede7 fix gameclock in mvds.
implement hardware cursors in d3d9+d3d11
fix crash from closing the audio menu in the webgl port.
make deluxemapping+softwarebanding require a vid_reload before anything happens. this solves missing textures until the user does it anyway.
fix scores+spectating issue. again. oops.
rename openal devices in the webgl port, so that it makes more sense.
remove glsl/hlsl parameter limit. this also fixes the final ie webgl issue (still gets half the framerate though).
fix some issues with bloom and waterwarp active at the same time.
attempted to give properish error messages from emscripten, despite emscripten hating me.
hack drag+drop into fteqccgui. I ought to make fteqw accept demos etc this way some time too.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4959 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-07 17:49:49 +00:00
Spoike
257610c89f add atlasing for wad images (batching means the entire regular hud can be a single draw call, assuming the ammo counts batch alongside show_fps).
d3d9 renderer can now use all the model batching stuff I wrote for gl.
fixed loading screens with d3d9 renderer.
cl_deadbodyfilter cvar is now archived.
autocam will avoid switching if the newly tracked player doesn't have anything interesting, etc.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4958 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-04 15:16:24 +00:00
Spoike
aab72de84b more webgl tweaks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4956 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-02 19:08:36 +00:00
Spoike
4b2aa11988 I guess that is needed then.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4955 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-02 12:09:31 +00:00
Spoike
efc1082d7c Fix some issues with emscripten.
fix some obscure issues with fteqcc.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4954 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-02 11:36:46 +00:00
Spoike
9cb8a2d025 fix some d3d8+d3d11 issues. 2d stuff should work a bit better now.
setcursormode now available to menuqc too. this gives menuqc hardware cursor support (useful to revert some braindamage I added for dp compat - menuqc is a dp spec).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4953 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-31 13:23:32 +00:00
Spoike
6adb05d916 autotrack is now over-complicated.
demo_jump with no args tells the current time (separate from map time or anything)
implement batching for text+csqcpolys to reduce draw calls.
qclib supports pointer(inc casts) evaluation.
fteqccgui now has a lame variables window thing. probably I'll get harassed about it.
add brush_calcfacepoints builtin for csaddon to use to preview brush edits.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4952 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-30 16:26:15 +00:00
Spoike
8cfbc1ad26 Fix some of my breakages.
fix hexen2 blind monsters.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4949 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-27 08:21:34 +00:00
Spoike
d7745478b5 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4948 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-07-26 11:11:56 +00:00
Spoike
63713793c9 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4947 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-07-26 11:04:00 +00:00
Spoike
6d36834f8e Reworked client support for DPP5+. less code now, its much more graceful.
added waterfog command. waterfog overrides regular fog only when the view is in water.
fixed 64bit printf format specifiers. should work better on winxp64.
fixed some spec angle weirdness.
fixed viewsize 99.99 weirdness with ezhud.
fixed extra offset on the console (exhibited in 64bit builds, but not limited to).
fixed .avi playback, can now actually display frames again.
reimplemented line sparks.
fixed r_editlights_save flipping the light's pitch.
fixed issue with oggs failing to load.
fixed condump to cope with unicode properly.
made sv_bigcoords default except in quake. hexen2 kinda needs it for bsp angle precision.
fixed nq server to not stall weirdly on map changes.
fixed qwprogs svc_cdtrack not bugging out with nq clients on the server.
fixed restart command to load the last map run by the server, instead of start.bsp (when idle)
optimised d3d9 renderer a little. now uses less draw calls, especially with complex scenes. seems to get higher framerates than opengl now.
fixed d3d9 renderer to not bug out quite so much when run fullscreen (shader subsystem is now correctly initialised).
fixed a couple of bugs from font change. also now supports utf-8 in a few more places.
r_editlights_reload no longer generates rtlights inside the void. this resolves a few glitches (but should also help framerates a little).
fixed so corona-only lights won't generate shadowmaps and waste lots of time.
removed lots of #defines from qclib. I should never have made them in the first place, but I was lazy. obviously there's more left that I cba to remove yet.
fixed nested calls with variant-vectors. this fixes csaddon's light editor.
fixed qcc hc calling conventions using redundant stores.
disabled keywords can still be used by using __keyword instead.
fixed ftegccgui grep feature.
fixed motionless-dog qcc bug.
tweaked qcc warnings a little. -Wall is now a viable setting. you should be able to fix all those warnings.
fixed qw svc_intermission + dpp5+ clients bug.
fixed annoying spam about disconnecting in hexen2.
rewrote status command a little to cope with ipv6 addresses more gracefully
fixed significant stall when hibernating/debugging a server with a player sitting on it.
fixed truelightning.
fixed rocketlight overriding pflags.
fixed torches vanishing on vid_restart.
fixed issue with decal scaling.
fixed findentityfield builtin.
fixed fteqcc issue with ptr+1
fixed use of arrays inside class functions.
fixed/implemented fteqcc emulation of pointer opcodes.
added __inout keyword to fteqcc, so that it doesn't feel so horrendous.
fixed sizeof(*foo)
fixed *struct = struct;
fixed recursive structs.
fixed fteqcc warning report.
fixed sdl2 controller support, hopefully.
attempted to implement xinput, including per-player audio playback.
slightly fixed relaxed attitude to mouse focus when running fullscreen.
fixed weird warnings/errors with 'ent.arrayhead' terms. now generates sane errors.
implemented bindmaps (for csqc).
fixed crashing bug with eprint builtin.
implemented subset of music_playlist_* functionality. significant changes to music playback.
fixed some more dpcsqc compat.
fixed binds menu. now displays and accepts modifiers.
fixed issues with huge lightmaps.
fixed protocol determinism with dp clients connecting to fte servers. the initial getchallenge request now inhibits vanilla nq connection requests.
implemented support for 'dupe' userinfo key, allowing clients to request client->server packet duplication. should probably queue them tbh.
implemented sv_saveentfile command.
fixed resume after breaking inside a stepped-over function.
fixed erroneous footer after debugging.
(I wonder just how many things I broke with these fixes)

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4946 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-26 10:56:18 +00:00
Spoike
869e544ad4 fix glsl not being used for skeletal animations (10->50 fps jump)
fix vbos not being used for skeletal animations (50->770 fps jump, yes, really. OOPS!)
so yeah, 7700% speedup there. lol... *sigh*
fixed update notification prompt not appearing by splitting menu key dest into emenu+gmenu. thus the prompt is no longer killed by menu.dat starting up.
fog command now displays a the extra params.
rewrote console char handling to support 32bit unicode chars. font code does not support more than 16bit codepoints still, however.
rewrote beam code in order to restore models on vid_restart. this solves a crash where they were invalid pointers afterwards.
revived old menu_media, because jogi wanted shuffle.
music now fades out for a sec when changing fake-cd-tracks.
music no longer abruptly stops when changing maps.
added fxaa support.
reworked bloom a bit. can now bloom further.
added r_renderscale cvar, for people that want supersampling (max 2), or subsampling for more speed or whatever.
$timer now favours cvars with that name, rather than the $time macro.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4942 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-14 14:47:00 +00:00
Spoike
2a2a53af2e z_ext was bugged since my qwfwd stuff.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4940 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-10 02:43:15 +00:00
Spoike
89a33f317a attempt to fix autoid revealing spies in TF.
fix issues with converted qizmo demos that appear to contain connectionless packets.
clarify some spam a little.
made demos menu re-open in the same path as before, with the same demo selected. still no mouse.
attempt to cope with gles2's potential lower attribute limit.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4939 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-09 18:02:49 +00:00
Spoike
b247f3e076 fix crash caused by missing bsp.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4938 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-09 16:22:43 +00:00
Spoike
845c0782cf I've been writing too much qc lately, apparently.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4937 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-08 19:36:23 +00:00
Spoike
2d6952b84e fix a few bugs and quirks. yay.
including one that crashes while playing ctf demos. oops.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4936 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-08 19:32:16 +00:00
Spoike
198410cfe7 disable vfs_flush when recording demos, there's some significant slowdown, and I don't see what else it could be (doesn't affect me).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4935 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-07 02:44:27 +00:00
Spoike
67786a2601 ignore proxies if they claim to be able to ping a lan, because it probably won't be yours.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4934 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-07 02:33:00 +00:00
Spoike
6f5f8c3e34 implement connectbr command, along with providing best-route info from the server browser.
does not use proxies by default. this is the first pass at this, and I'm not sure the ping values are reliable enough to have any faith in the routes selected.
fix a couple of other issues too.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4933 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-07 02:03:31 +00:00
Spoike
d789a2c81a fix HOM issue with out-of-world r_projection. also gave 20% speedup.
refuse to load certain dxt images for premultiplied alpha, as these cannot otherwise work.
fteqcc now tries to be more relative with its paths, so #pragma sourcefile "subdir/foo.src" can work as expected.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4932 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-06 14:47:46 +00:00
Spoike
83f0179906 fix tracker.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4931 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-06 14:33:22 +00:00
Spoike
761049b00a fix gameclock on certain servers.
fix kill not working on ktx (ktx is weird).
fix missing scoreboard.
fix possible crash on /cmd kill.
fix missing disconnect messages.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4930 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-04 02:04:46 +00:00
Spoike
a85f3c5c71 Added two new projection modes. use r_projection to select alternative projections.
make sure demos freeze at the start, instead of reading everything out of the file while we're still loading content.
added a couple of lame 'list' commands.
added 'in' command.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4928 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-03 02:07:41 +00:00
Spoike
667e8dec10 add geometry shader support. because why not.
bind command now makes it a bit easier to edit the binding. and any alias.
autoid tweaks.
slightly better q1qvm/ktx support. extend the api a little.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4927 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-01 23:15:25 +00:00
Spoike
6515417cd6 tweak teaminfo a little.
make sure locs are available during demo playback too, now that there's an actual need for that.
display teaminfo above people's heads.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4926 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-30 14:05:45 +00:00
Spoike
365c11181c wait now correctly waits until the start of the next input frame (thus ensuring that -attack is delayed for long enough).
implemented hud_teaminfo_show ezhud element. _LOTS_ of hacks. ezhud needs updated engine.
fix issue with overly friendly prints.
handle svc_setinfo more gracefully, for the next time OMC makes a bug.
allow glsl to embed default values for float cvars, in case they're not already set. this can save some docs...
removed prints about "wad" "foo\", fixing a crash concerning just which print function to call.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4925 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-29 23:46:31 +00:00
Spoike
4e9d4dcc27 fixed over-prediction issue. added two new cvars to control prediction nudging of other players.
fixed some serverbrowser issues.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4923 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-28 03:43:10 +00:00
Spoike
5ef22569cd finally fix fbsp lightgrid.
fix issue where framegroups with no poses were causing a crash. now causes spam.
implement sneaky trick to munge lightmaps a little, greatly accelerating stuff like sock's map.
fix q3 physics issue (was probably bugging out q2 too).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4922 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-28 00:42:00 +00:00
Spoike
df31b15073 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4920 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-06-26 13:29:40 +00:00
Spoike
24b8fff515 fix some issues with rulesets being reapplied and nuking framerates due to shader reloads.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4919 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-26 13:21:04 +00:00
Spoike
f35aa1d123 try to fix entertimes.
try to fix gameclock (when joining mid-game on servers that don't support stat_matchstarttime).
fix iqm loader issue using the same skin for every surface.
modelviewer now allows displaying per-surface info.
fix qcc ptr->foo bug.
console commands with a leading space are considered to be say messages

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4917 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-24 17:59:57 +00:00
Spoike
0ced7ec194 guess at the current match time based upon mod-specific hints, required to correct for joining mid-game.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4916 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-23 17:29:12 +00:00
Spoike
59cbcfe355 rewrote cam tracking code. should make cl_chasecam 0 more robust and avoid spam about invalid clients to track (and the associated ptrack spam).
smoothed out cl_chasecam 0 angles.
server browser no longer counts spectators as players. also sorts players by frags.
fix ezhud r_tracking_frame issue, by making it technically 0 height when not tracking.
r_showfields is now a separate cvar, instead of being rolled into r_showbboxes. now shows only a single entity.
fix qport issue.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4915 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-22 11:49:15 +00:00
Spoike
06e26d3808 tweaks for ktx/nq clients.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4913 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-20 14:22:06 +00:00
Spoike
3079756b7e polish for the server browser. a little more friendly now.
fix 'was punctured by' frags to be parsed properly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4911 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-19 16:56:50 +00:00
Spoike
2ee86c0314 rework server browser slightly.
reimplement -Flogicops in qcc.
fix qcc problems with if_float fix enabled.
remove redundant norefs.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4909 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-18 22:11:30 +00:00
Spoike
1337503fe8 fix ezhud text scaling.
fix ezhud gameclock.
fix fteqcc treating somearray as somearray[0] instead of &somearray[0]
fix sometype*foo[]; issues.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4907 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-17 13:05:20 +00:00
Spoike
8efd3f15be fix qcc typeinfo limit.
changed triggers so that some can be used in demos.
demo_setspeed is now a command, in order to handle 100 being 1:1 speed.
avoid weirdness at the start of demos.
only display flag columns if someone grabbed a flag.
reworked internal server browser. now has a filter, sorts by addresses, preserves sort columns, 

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4905 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-16 23:53:58 +00:00
Spoike
6f93c5cc95 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4904 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-06-15 21:07:52 +00:00
Spoike
bf63109ad3 added some cvar descriptions.
flagged some cvars as archived.
cfg_save writes cvar descriptions
cfg_save writes buttons
fix nq dwarf bug
crosshaircolor 0x00ff00 now works.
snd_device none inhibits any fallback device.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4903 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-15 20:11:27 +00:00
Spoike
18c1326be9 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4900 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-06-14 09:34:55 +00:00
Spoike
3a4200f0ee fix some valgrind issues.
linux port now finally reports detected ip addresses.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4899 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-14 08:16:15 +00:00
Spoike
bdc8ae1281 fix autotrack issues.
tweak gameclock to work properly with demos.
tried to fix stealth chat messages.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4896 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-14 01:28:01 +00:00
Spoike
cb5bbfee2a git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4895 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-06-12 14:52:15 +00:00
Spoike
3fd21ea6ea implemented autotracking, hightrack is no longer quite so obnoxious.
implement cfg_save_all cvar, so cfg_save can save all.
downloads attempt to avoid using the fte/ gamedir
actually registering r_tracker_frags cvar.
fix ezhud wad image issues.
fix mouse binds not working when running fullscreen.
dedicated servers can now use getsurface builtins.
gl_font can now attempt to use conchars subdir too.
terrain editor can now display the areas which cannot accept the selected texture for painting. this should help reduce edges.
attempt to fix some of the less-supported ports.
don't be annoying with entity foo = someclass;
fteqcc now offers to create files if you try opening one that doesn't exist.
plugins can now query ping etc info properly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4893 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-12 14:44:50 +00:00
Spoike
a1159e3e2b fix lag issue.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4890 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-08 02:55:29 +00:00
Spoike
1b5b04dfa7 fix some demo playback/capture issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4887 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-05 09:04:05 +00:00
Spoike
e3939dfb58 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4886 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-06-05 03:47:36 +00:00
Spoike
3a994a3a99 add net_enabled cvar. set to 0 to block all network stuff (might need a map change to take full effect).
fix capturedemo and qwd files.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4885 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-05 03:45:01 +00:00