Commit Graph

1353 Commits

Author SHA1 Message Date
Spoike 20be3f8161 fix a couple of quake2 issues.
rework the main menu slightly to promote the qi plugin a little more.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5262 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-06-06 09:09:14 +00:00
Spoike ac471dd03e update native-menu things.
attempt to deal with misaligned bsp models.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5258 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-06-02 08:55:57 +00:00
Spoike 60c8797d25 Try to fix frametime issues with TW.
Use eukara's icon in x11, matching the windows icon.
Use the extra main-menu options even when there's no menufont available.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5255 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-05-28 10:12:10 +00:00
Spoike 5e937bcf48 Eukara wants native-code custom menus. He's weird.
Try to clean up the frametime global.
fix some quirks with r_dynamic -1
Added scr_fov_mode cvar to control whether the fov is defined relative to horizontal, vertical, or guessed.
fix a few fteqcc bugs
tab completion for the gamedir command.
fix the savegame_legacy command. it wasn't entirely compatible.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5254 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-05-21 13:47:53 +00:00
Spoike 8c4d39268e added demo_nudge command.
attempt to fix an issue with bc formats being rejected by d3d if they're not a multiple of 4.
added doreset argument to refreshhostcache builtin, for mods to forget all servers when rescanning.
stop fteqcc from reporting uninitialised locals etc inside the wrong file.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5251 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-05-06 16:09:07 +00:00
Spoike fdd903e0a3 win: emulate gamepad thumb axis as buttons.
keys: add some extra key names for compat with DP+QS (primarily gamepad buttons).
keys: fix a few keys getting mistranslated between engine and qc scancodes.
engine menus: remove 16bpp from the video options menu on win8+, as win8 no longer supports anything but rgbx8.
pmove: coord size and rounding is now part of the pmove code itself. this fixes truncation issues.
r_clutter_density: fix crash from clutter comprising of boneless iqms.
gl: added cvars to disable immutable buffers or textures. hopefully these might be usable to work around the issue reported on various geforce 1080s
wav: convert ieee wav files to 16bit on load, in case someone tries giving us one of these.
vid_srgb: this cvar now uses -1 for the former gamma-only setting.
r_viewmodel_quake: new cvar (name comes from quakespasm) that can be used to disable the weird movement of the viewmodel when pitching up or down.
nquake: try to block nquake's frogbot's autoexec.cfg, as I keep getting complaints about it fucking over singleplayer games.
fs: added -netquake commandline argument that disables the use of the qw/ gamedir.
fog: disabled fog on aky surfaces, as it was bugging out in The Wastes.
vid: fix some vid_restart/vid_reload issues (which got much worse recently in my attempt to fix a different crash)
routing: first attempt at engine-side routing. feature is currently disabled.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5248 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-04-27 16:40:50 +00:00
Spoike d56226aac5 more comprehensive attempt at fixing the qccgui bug reported by shpuld.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5247 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-04-20 19:09:14 +00:00
Spoike c4132347eb added sys_priority cvar to the windows build.
rewrote tab completion logic. should no longer consume so much cpu time.
added tab-completion for the connect command. server lists must have been requested previously (like the connectbr command requires).
fix q1bsp fencetexture+fog combo.
fix wateralpha/lavaalpha/slimealpha/telealpha worldspawn fields.
added a couple of extra cvars to some rulesets.
fix d3d9 mipmap-size issue.
fix vid_reload issue (was crashing, but its also possible that it could have been the cause of VBO corruption).
made pausable default to empty, allowing for smarter defaults like pausing SP but not DM.
attempt to compensate for NQ's framerate-dependant waterjumps by making QW waterjumps slightly more permissive.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5241 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-04-15 02:48:23 +00:00
Spoike 2de26a93f7 use immutable vbos, because we can.
add stof to the lua logic.
fix an issue where q3bsp cvars were not registered in The Wastes build config leaving it subject to the worst of q3map2's lightmap allocation logic.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5236 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-04-08 14:24:50 +00:00
Spoike 3c4b5fabb6 Make the default port re-brandable to reduce confusion with TCs.
Make sure TCs send server query broadcasts.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5235 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-04-07 12:33:06 +00:00
Spoike e44d8a85d8 don't swallow multimedia keys unless they're actually bound to something.
fix possible out-of-range issue with qc ent references.
shader parsing is now a little more strict.
lua code support updated to bring it more in line with hifi's efforts, still not enabled by default.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5233 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-04-06 17:21:15 +00:00
Spoike 8003ba3c6c I accidentally disabled dsound.
also, 'cmd setinfo' without extra args was spamming the server's console instead of the client's.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5231 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-03-31 19:47:03 +00:00
Spoike 8c02fb26b3 removed old scr_chatmode
splitscreen can now properly be configured via build configs, and potentially more than just 4 seats.
fix splitscreen and enemycolour forcing. forcing now works, but only when all seats are on/spectating the same team.
fix demo playback issue with http urls with webgl that don't allow streaming.
srgb fixes for the scoreboard.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5229 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-03-25 09:36:14 +00:00
Spoike 7f2c356133 Fixed some bugs with servers using gnutls.
Attempted to clean up build configs slightly, now ALWAYS using a build config.
Now enabling wayland renderer by default on linux (activates by default only when x11 fails).
Given linux servers the ability to chroot (will be used by default if run as suid-root).
Fixed a couple of vulkan warnings.
Makefile now treats speex like any other library.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5227 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-03-24 04:02:09 +00:00
Spoike aa18ab9c01 finally got around to actually adding dynamiclight_spawnstatic
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5221 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-03-05 11:35:58 +00:00
Spoike 42b31a6cc3 Attempt to work around a DP client bug, where DP sends either 16bit or 8bit angles depending upon the type of the previous server that DP connected to.
Fixed weirdness around a second DP client bug (less serious) where a reconnecting DP client sends a disconnect request as soon as it gets its new connection. The client will still get disconnected (as per its apparent request), but FTE will no longer alarm admins, and the user should see something like 'unconnected dropped'.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5219 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-03-05 11:06:12 +00:00
Spoike 685404250f added cmake file.
reduced input latency.
reworked how internal texture formats work,.
added support for LIGHTING_E5BGR9 bspx lump for HDR lighting.
updated support for srgb, no longer looks quite so weird. works on glx
vid_srgb 3 attempts to use half-float swapchains, where possible.
gl: use glTextureStorage where available.
d3d11: gave up on using dxgi for fullscreen, was just too buggy.
glx: updated gl context creation on linux.
server: fix svc_updatefrags not being passed though (fixes frikbot scores)
fs: spanned pk3s now work (fragmented files/directory will fail to open, so this needs a custom tool to be fully useful).
fixed restart_ents command (restarts the map, but preserving the players as they are)
tw: removed 'QWSKINS' featureset from tw config

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5217 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-03-04 14:41:16 +00:00
Spoike 04c14f4600 stop movetype_toss+solid_trigger from touching themselves. this fixes lavaballs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5212 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-02-11 05:37:11 +00:00
Spoike 9f27189937 Fix missing sounds/etc with fteq2 servers.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5210 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-02-08 17:43:01 +00:00
Spoike f1f54311f6 fix some bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5209 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-02-04 13:16:25 +00:00
Spoike 7da299ee88 fix scrag/hknight trails - they're moving about 9 times too fast.
fix particle trail spam. oops.
fix ttf fonts not using fallback quake glyphs.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5208 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-01-28 04:12:59 +00:00
Spoike f3ae58608b QUAKETC with dpmaster fix.
don't archive csprogs when it's getting saved into demos anyway.
bound bones when using a model with less bones than the relative skeletal object.
mute(dprint) xinput restarts.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5205 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-01-24 12:13:32 +00:00
Spoike 9e8bb446f4 implemented pm_stepdown.
attempt to implement 'simple csqc' api.
handle qw+nq gunshot+blood+lightning differently - they do actually have different particle spawn patterns (qw is a single point, so spreads wider).
fix q3ui logo mesh thing. work around q3ui player meshes on d3d.
split video and renderer latching, so vid_reload delatches more stuff.
fix autosprite+autosprite2 in 6 different renderers...
added fog volumes to d3d9 renderer.
using matrix hacks instead of glDepthRange, this should give more consistent behaviour, especially now that we have r_viewmodel_fov.
small cleanup for gl shadowmaps to make the interface more consistent with other renderers.
added patchDef2 parsing to fte's .map loader, doesn't actually use it though.
some fixes for q3's shaders, including to try to get overbright working better.
updated customskin api to give more control.
first attempt at a packager system for fteqccgui. probably useless, but whatever.
menusys changes to try to support QSS's csqc.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5200 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-01-22 19:18:04 +00:00
Spoike 63acc99442 make tracebox respond to negative-skin ents, in addition to the built-in pmove code, so mods should now be able to detect it properly.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5199 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-01-14 07:40:17 +00:00
Spoike 3a85de45f6 xinput tweaks, under advice from primallove.
fix sv_nqplayerphysics+spectators = spectators able to shoot
fix watervis bug, turned out to potentially be more serious.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5194 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-01-05 01:45:49 +00:00
Spoike a6ac015c5b software banding: fix player skins.
try to get game controller defaults a little closer to QS.
mess with r_dynamic 2 a little, to more closely match vanilla.
fix under-lighting bug on models. added extra model lighting pathway for greater vanilla compat, as part of software-banding.
fix proquake-client compat issue.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5192 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-01-03 04:40:06 +00:00
Spoike 845bb231ca xonotic: fix 'sticky walls' issue when spectating.
xonotic: fix jumppads not working while onground.
attempt to parse meag's protocol changes, in case we get a .qwd from ezquake. does not report them to servers at this time.
added cl_fullpitch cvar. only affects nq servers that lack serverinfo.
support dds/ktx-based cubemaps, including for skyboxes.
recognise multiple new compressed texture formats - bc1-7, etc1+2+eac,.astc. Addeded to supporting drivers/apis.
software decoder for etc2,bc4+bc5 textures, so they can be considered universal (but with fallbacks).
software decoder for bc1-bc3 textures, but disabled due to lingering patent paranoia.
report heartbeats once, by default.
r_viewmodel_fov support for vk+d3d9+d3d11 renderers.
fix depth projection differences with various renderers (min dist is now consistent).
added some code to announce when cl_delay_packets changes.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5188 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-12-28 16:24:50 +00:00
Spoike 6d9c3f5df0 fix some font issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5187 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-12-20 08:23:41 +00:00
Spoike cd4412e807 add scr_showdisk cvar, to show the disk icon for a little time whenever something is accessed from disk.
try to fix the recent network issues, the slightly more sane way.
added a r_viewmodel_fov cvar, to optionally control the viewmodel's fov separately from view fov.
updatesound now auto-starts the sound if it wasn't already playing, but only if a sound name was specified.
small optimisation for xonotic. Delay the actual fopen until the first read. This avoids the worst of the hitches every time a footstep sound is played (no more zlib decompression).
r_lightprepass now respects rtlight modes.
optimised some rtlight pvs bits. should hopefully be slightly more efficient.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5186 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-12-15 06:56:40 +00:00
Spoike 5f9a101ac0 fixes for some #define feature enables.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5183 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-12-11 02:55:06 +00:00
Spoike 559144cb05 Updated font code for freecs's benefit.
added cl_iDrive cvar.
tried to solve invalid server address errors.
fixed envmap+screenshot_cubemap commands (they write slightly different cubemaps).
rework server favourites a little, to avoid conflicts with other engines.
fix legacy rtlights on certain maps.
added 'rgbgen entitylighting' for lighting with colormod support.
decompiler should cope with more instructions now. pretty much just switch opcodes that are bugged now.
implemented a couple of joint types into the bullet plugin. still useless though.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5180 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-12-09 21:22:46 +00:00
Spoike a7c0a97241 added skel_postmul_bone builtin which should be more straightforward to use. renamed existing skel_mul_bone builtin to skel_premul_bone.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5179 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-12-08 06:57:50 +00:00
Spoike f21322d251 added VF_USERDATA to set new w_user glsl uniform.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5178 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-12-03 08:27:27 +00:00
Spoike 65e58c3595 fix serious issue for anyone using r_novis 1
sv_nailhack now defaults to 1. because times have changed (matches mvdsv).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5175 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-12-02 22:11:20 +00:00
Spoike 9cd425e945 rework hlmdl subblends. apparently they're some sort of grid.
fix decals again. clampmap should work properly with them, also removed the extra part.
fix rtlight pvs issue with respect to portals
fix vid_reload causing the d3d9 renderer to use nearest sampling
terrain system should now mostly work with d3d9. still has issues.
fix q3 volumetric fog not applying to models

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5174 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-11-30 17:59:11 +00:00
Spoike 4896954c8a apply lmgamma to rbsp vertex lighting
opus should now be statically linked or something
made the denormalised floats warning look less scary.
fix the console-making-hud-pics invisible issue

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5172 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-11-24 18:40:17 +00:00
Spoike 4f73088dea change cl_idlefps default to 30.
minor tweak to prediction logic. bob logic will no longer stutter in eg freecs.
reworked config ordering. autoexec-after-fte.cfg will now be enforced.
reworked rawinput logic to avoid mouse button states getting stale due to separate mouse drivers when enabling the cursor.
fixed invalid commands getting silently ignored when not connected to a server.
allow execution of menu.dat from packages specified by the fmf.
FS_NativePath now responds properly to FS_GAME, and will return logical paths, instead of mimicing FS_GAMEONLY.
d3d9: fix tcgen skybox
qcc: fix crash with __out keyword.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5171 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-11-23 07:46:39 +00:00
Spoike 0dbb57dd5c Fix some omissions with splitscreen+csqc:
unicast svc_cgamepackets will now report which seat they were unicast to.
sendevent will now reveal the seat that was active at the time of the call.
csqc console commands will now reveal any p2 etc commands that were used.
added 144hz refresh rate option to the built-in menu
added sv_demo_write_csqc cvar to write csprogs.dat into mvds. I still need to read them...
make irc client not create new accounts if there's already a connection registered for the given server.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5169 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-11-16 22:20:40 +00:00
Spoike 27e8e812a2 fixed crashy race condition when querying master servers.
try to do something about crazy cursor biases in games that are not likely to get the QSG cursor.
fix unvised q3bsp pvs. again.
add cl_delay_packets cvar as a clientside analogue to sv_minping (which is often unchangeable by the actual players).
fix a qcc issue with static locals screwing everything up.
fix dpmaster issues when NQPROT isn't defined.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5168 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-11-15 12:38:20 +00:00
Spoike c7d5695e5e small vulkan perf tweak.
fix capturedemo over vid reloads.
fix playfilm letterboxing issue.
con_printf will now create consoles as needed.
fix .skin compose line.
fix a couple of q3bsp issues
core gl contexts will no longer be given pre-core glsl shaders, is the theory.
qcc now warns about unused fields. use the __used keyword to mark those fields as actually needed. use __unused to allow the qcc to potentially silently strip them.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5166 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-11-14 14:37:04 +00:00
Spoike 1206244ebb rework loading screen for legacy mods that don't have their own.
fix sound issue not reusing distant sounds (fixes massive cut-off sounds in xonotic).
fix crash issue with skeletal objects holding invalid model pointers over vid_restarts.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5163 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-11-05 13:15:08 +00:00
Spoike 52f0f117ab fix Q3BSP-without-Q2BSP bug.
reworked deferred rendering to support specular. mrt can be reconfigured by TCs if desired.
reworked q3bsp deluxemap code (so it no longer bugs out).
fixed a few warnings.
updated fteqcc to try to cope with xonotic. still not working (xonotic fails from bound checks).
reworked shader conditionals to support elif. added some directives from QF(aka: warsow)

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5158 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-10-31 22:52:58 +00:00
Spoike 7dc01f7362 android port updated. egl now handled by native code, which means we now have proper control over everything and can default to gles2. requires android 2.0+. vulkan-on-android renderer added, but not tested.
added .ktx image support as an alternative to .dds, primarily for etc2 compression (which should work on all gles3 devices, or gl4.3), only known representations will work.
rework z-fighting workaround. now only enabled on known vanilla maps.
added splitscreen option to the singleplayer menu.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5154 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-10-13 17:50:28 +00:00
Spoike 696c7e8260 playdemo should now play older protocol versions.
some more tweaks for xonotic
rcon-over-xmpp, because I can. Server might see your rcon password, so watch out for that.
qcc tweaks.
updated q1qvm api stuff to api version 15.
android port updated. egl now handled by native code, which means we now have proper control over everything and can default to gles2. requires android 2.0+. vulkan-on-android renderer added, but not tested.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5153 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-10-12 12:02:25 +00:00
Spoike 8e44dde063 attempt to resolve a crash.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5152 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-09-26 04:26:08 +00:00
Spoike 0c8ad17f7c Fix various compiler warnings.
Added sv_guidkey cvar, allowing cross-server guid key generation (although it lacks auth).
Support .ico, because we can.
preliminary support for sdl 2.0.6's vulkan stuff. will wait till its actually released before its properly used.
Fix capturedemo.
videomap should typically use premultiplied alpha, apparently.
Updated sound drivers. No more old drivers. Better cvar registration. More drivers optionally support float output.
Added certificate log for dtls connections.
Rewrote font char cache, now supports full unicode char range, not just ucs-2. Attempt to support FreeType 2.5+ rgba fonts.
XMPP now supports carbons, and shows avatars in conversations. Updated xmpp's scram auth to be more strict, including the plus variation (hopefully), to block evil tls proxies.
ffmpeg plugin now uses the decoupled api for decoding too.
Cef plugin updated to support fte-scheme post data properly, as well as request/response headers (like cross-origin).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5148 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-09-20 11:27:13 +00:00
Spoike a08564bbb3 Compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5145 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-08-29 04:46:53 +00:00
Spoike 0f7bbfcf0e Implement an area grid, primarily to avoid mods(read: xonotic) generating 2000 ents all sitting on the root area node.
Add separate cl_movement cvar to enable/disable reporting input sequences to DP servers (which use different pathways). Does not affect other protocols. This is separate from cl_nopred but will usually have the same result in the long run.
Fixed movevalues for DPP7 clients, if they try using prediction they should now (mostly) get the same values that DP normally uses for QW servers.
Reworked sky overrides somewhat. Now uses skyboxes where possible.
Fixed dpcompat_makeshitup a little, for better compat.
Fixed echo $foo$bar not exanding bar.
Try to fix the meanings of vid_hardwaregamma.
Fixes for builtins/features/etc that apparently only xonotic uses.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5143 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-08-29 02:29:06 +00:00
Spoike 7c6eb18a76 in_xinput 1 is now default. because we can.
android gets a couple more gamepad buttons.
gamepads now have separate keybindings. I've created some default binds for mods that are unaware of gamepad buttons.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5142 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-08-16 02:14:07 +00:00
Spoike c4d3497054 some Q2 compat tweaks. moved all q2 temp-ents to particle scripts.
PF_VarString can now shortcircuit, directly returning the first argument (which also bypasses related length limitations). this required const correctness fixes.
r_showshaders cvar reports the wall texture being pointed at.
improve dp compat in a number of areas, should now mostly be able to run xonotic 0.8.2, but will need some more extra cvars/defaults/stuff.
fix q3bsp loader race condition.
fix dpm loader multi-surface issue.
remove limit on stringbuffer count.
don't poll xinput (because its disturbingly slow), instead wait for some window message before re-checking.
fixed splitscreen saved games.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5140 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-08-14 16:38:44 +00:00
Spoike e8c0014b58 fix .gravity on non-players.
try to fix webgl's mouse cursors on misaligned canvases.
fix q2 tent issue.
fix bmp screenshots.
allow disabling packages via renaming, instead of only deleting.
support negative dlights.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5133 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-07-31 17:15:37 +00:00
Spoike db2c378fa0 centerprints with links now show cursors.
q2 temp entity tweaks. still more work to be done.
support sRGB (mostly)properly in gl+vk+d3d9+d3d11.
vulkan tweaks - multisample works under certain conditions. additional other changes to comply... cvars to enable some other device extensions.
removed r_viewleaf. now using clusters for q1 too.
improved compat with quakespasm's sky command.
Added vid_winthread cvar, to handle window messages on a separate thread. When set this allows the game to keep redrawing when the user is resizing the window etc.
Finally added renderers option to menusys.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5130 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-07-28 01:49:25 +00:00
Spoike d66db9930d fix time changing issue in runstandardplayerphysics.
fix doom-sprites, although their angles still seem to be biased.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5129 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-07-13 10:44:54 +00:00
Spoike 776b8f6565 Added .dz playback support.
demo menu now properly lists the contents of archives.
demos played from subdirs/archives can now chain properly.
autodetect nehahra's demos. Add -nehahra argument to register/override cvar defaults (and set the right gamedir+startmap).
fix some q2 download bugs.
lame attempt at proper sRGB support (gl+vk+d3d9+d3d11 renderers).
fix q3bsp wrong-lightmaps bug.
match DP's viewzoom behaviour by not applying it when VF_[A]FOV was explicitly used.
fix d3d9 issue with missing textures screwing up blend modes.
vk: use a staging buffer instead of a staging textures per mip.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5128 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-07-12 08:15:27 +00:00
Spoike 904a701281 command argument completion for a few commands.
fix off-by-one pvs bug.
add another settings preset.
fix classic particles colour issue.
fix d3d9 renderer's scissoring (including splitscreen huds)

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5125 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-07-04 05:07:51 +00:00
Spoike 419b2b1f7f fix brush editor giving up with too many polys.
fix race condition that was causing prespawning to skip the call to CSQC_WorldLoaded.
misc other irrelevant tweaks.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5120 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-06-26 09:31:02 +00:00
Spoike b2824ee266 Try to fix android+emscripten builds.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5119 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-06-23 20:36:35 +00:00
Spoike 6946af8dee fix a silly bug, and some other compile warnings.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5118 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-06-22 16:49:29 +00:00
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
Eukara 5e2a985f7f Builtin for movetype_push ents, wastes config changes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5113 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-06-15 14:23:26 +00:00
Spoike ca31acefea qccgui: add custom right-click menu. move buttons for more screen space.
some fixes for various other small things.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5112 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-06-05 15:20:57 +00:00
Spoike 519350c635 example terrain generator for eukara.
some compile fixes too.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5111 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-05-28 17:14:23 +00:00
Spoike 025aeff8a4 qccgui: reworked compile prints to split the screen instead of being some other window that's hidden when fullscreened etc.
splitscreen: split spectator setting into a per-seat setting. scoreboards are now also per-seat.
added parm_string global for richer map change stuff.
dpp7: fixed and reinstated.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5110 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-05-28 15:42:32 +00:00
Spoike 14c665076b update the clustertransfer builtin to work on non-cluster dedicated servers.
implement redirectcmd. because I can.
add a few more qc extensions that define features already implemented.
changing/restarting the map will explicitly flush the worldmodel if the file's modification time is newer. this should make map editing a little nicer.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5106 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-05-23 07:03:07 +00:00
Spoike 445e7f476b a dos port, as a dig at eukara about his xbox port project.
mouse+kb+soundblaster devices should work.
you can compile a dedicated server, but the lack of any networking support makes it a bit pointless.
the software renderer will work, but its crap and gets absolutely dire framerates.
there's no code to init mesa or anything, so its crappy-software rendering only.
I doubt anything useful will ever result from this, but it was still interesting to do. possibly the only useful thing to come from this will be from limiting ram use.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5104 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-05-19 03:32:02 +00:00
Spoike 5d2ff1286d first version with dtls support. disabled for now.
schannel (ie: windows native) works as a client, not a server.
gnutls provides both client+server support. servers need to load a pre-generated cert from disk.
tweaked gamepads to actually work in the web target.
tweak gamepads a bit. added gp_* bind aliases. xinput+sdl+web should all use the same key mappings.
finally added the itemtimer glsl.
tweaked software renderer to not be quite so buggy, but you probably won't realise that if you try it.
disabled the ill-fated QWOVERQ3 feature.
don't do the oldorigin thing in quakeworld mods. hopefully this'll fix cspree's weird stuck-in-floor issue.
dpp7 is buggy serverside. disabled for now. I'm part way through rewriting its deltas.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5103 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-05-18 10:24:09 +00:00
Spoike 493d66b832 misc fixes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5100 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-05-10 04:32:49 +00:00
Spoike 484e8bbfc2 playdemo accepts https urls now. will start playing before the file has finished downloading, to avoid unnecessary delays.
reworked network addresses to separate address family and connection type. this should make banning people more reliable, as well as simplifying a whole load of logic (no need to check for ipv4 AND ipv6).
tcpconnect will keep trying to connect even if the connection wasn't instant, instead of giving up instantly.
rewrote tcp connections quite a bit. sv_port_tcp now handles qtv+qizmo+http+ws+rtcbroker+tls equivalents.
qtv_streamport is now a legacy cvar and now acts equivalently to sv_port_tcp (but still separate).
rewrote screenshot and video capture code to use strides. this solves image-is-upside down issues with vulkan.
ignore alt key in browser port. oh no! no more red text! oh no! no more alt-being-wrongly-down-and-being-unable-to-type-anything-without-forcing-alt-released!
reworked audio decoder interface. now has clearly defined success/unavailable/end-of-file results. this should solve a whole load of issues with audio streaming.
fixed various openal audio streaming issues too. openal also got some workarounds for emscripten's poor emulation.
fixed ogg decoder to retain sync properly if seeked.
updated menu_media a bit. now reads vorbis comments/id3v1 tags to get proper track names. also saves the playlist so you don't have to manually repopulate the list so it might actually be usable now (after how many years?)
r_stains now defaults to 0, and is no longer enabled by presets. use decals if you want that sort of thing.
added fs_noreexec cvar, so configs will not be reexeced on gamedir change. this also means defaults won't be reapplied, etc.
added 'nvvk' renderer on windows, using nvidia's vulkan-inside-opengl gl extension. mostly just to see how much slower it is.
fixed up the ftp server quite a lot. more complete, more compliant, and should do ipv6 properly to-boot. file transfers also threaded.
fixed potential crash inside runclientphys.
experimental sv_antilag=3 setting. totally untested. the aim is to avoid missing due to lagged knockbacks. may be expensive for the server.
browser port's websockets support fixed. experimental support for webrtc ('works for me', requires a broker server).
updated avplug(renamed to ffmpeg so people know what it is) to use ffmpeg 3.2.4 properly, with its new encoder api. should be much more robust... also added experimental audio decoder for game music etc (currently doesn't resample, so playback rates are screwed, disabled by cvar).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5097 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-05-10 02:08:58 +00:00
Spoike 09ec3bf6ea added explicit 'blend rtsmoke' particles that are intended to lit by rtlights without needing to override shaders.
addtrisoup_simple now supports line lists too.
fix a memory leak in the sound code.
fix chunked http download corruption in certain cases.
reworked the networking associated with entity editing. now carries ids instead of indexes (qc isn't aware of them).
'map blarg.map' will now auto-create a dummy map if it does not already exist. this should make it easier to get started with map editing.
fix some issues with banning yourself - loopback can now mute etc themselves, but not ban themselves.
downloads/updates menu now handles plugin detection. user-installed plugins will result in a prompt allowing the user to enable/disable/delete them. This makes using plugins more explicit.
revamped help menu to remove m_state
fix silly ode copypasta bug, added preliminary bullet code in case anyone is interested.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5090 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-04-18 11:12:17 +00:00
Spoike c46f6a3a53 fix a couple of serious issues molgrum reported.
fix dedicated server to integrate inside fteqcc.
fix bug with jump being released.
fix fteqcc always using 32bit output.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5086 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-03-30 18:37:16 +00:00
Spoike 5e58832acf Try to clean up a few things in the hopes of making Eukara's efforts easier. That or just to give him conflicts.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5081 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-03-26 23:03:02 +00:00
Spoike 4fcfe8abb0 droid: new icon from eukara that doesn't have the resized uglyness.
droid: support qw:// scheme
droid: finally added touch.cfg with some crappy programmer art to go with it.
mvd: new name cleanup logic when recording, to avoid some more chars.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5077 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-03-26 01:46:08 +00:00
Spoike 1946cdc694 fix some warnings. d3d8 renderer builds with cygwin's mingw.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5076 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-03-21 17:51:34 +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 c385cb71b4 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5070 fc73d0e0-1445-4013-8a0c-d673dee63da5 2017-03-04 19:49:40 +00:00
Spoike 9aed521689 make developer a little less spammy. move much of it to developer 2.
net_mtu "" now means something large for servers and something smaller for clients. this should give clients more freedom to screw up their connections as much as they want when servers are not configured. I dunno.
package manager now tries to include packages listed from default.fmf. note that this may include dlls etc so this isn't available for any other fmf (ie: ones specified via the commandline/file associations).
fix up trace logic to use skeletal data for skeletal models, finally fixing toneddu's big hitmodel crash. hopefully.
console links inherit background text colours, where possible.
fix text background colour weirdness for both freetype2 fonts and spaces.
qcc: implement support for mac line endings, matching scintilla's line numbers, although this breaks rogue due to stray carrage returns inside a single-line comment (easy to fix, assuming some scintilla-based editor, anyway).
server: reworked deltas overflow to do round-robin properly with priority for players, so things shouldn't stall when overloaded.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5067 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-03-04 19:36:06 +00:00
Spoike cf0e8fd923 added r_meshpitch cvar that allows for fixing the unfixable mesh pitch bug from vanilla... needs a better name... do note that this will break pretty much any mod, so this is really only for TCs designed to use it. Its likely that I missed places.
nqsv: added support for spectators with nq clients. the angles are a bit rough, but hey. need to do something about frags so nq clients know who's a spectator. use 'cmd observe' to get an nq client to spectate on an fte server (then attack/jump behave the same as in qw clients).
nqsv: rewrote EF_MUZZLEFLASH handling, so svc_muzzleflash is now translated properly to EF_MUZZLEFLASH, and vice versa. No more missing muzzleflashes!
added screenshot_cubemap, so you can actually pre-generate cubemaps with fte (which can be used for reflections or whatever).
misc fixes (server crash, a couple of other less important ones).
external files based on a model's name will now obey r_replacemodels properly, instead of needing to use foo.mdl_0.skin for foo.md3.
identify <playernum> should now use the correct masked ip, instead of abrubtly failing (reported by kt)
vid_toggle console command should now obey vid_width and vid_height when switching to fullscreen, but only if vid_fullscreen is actually set, which should make it seem better behaved (reported by kt).
qcc: cleaned up sym->symboldata[sym->ofs] to be more consistent at all stages.
qcc: typedef float vec4[4]; now works to define a float array with 4 elements (however, it will be passed by-value rather than by-reference).
qcc: cleaned up optional vs __out ordering issues.
qccgui: shift+f3 searches backwards

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5064 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-27 09:34:35 +00:00
Spoike 217f3ce569 more misc compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5063 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-22 00:16:43 +00:00
Spoike 5b0843e0c7 split up NOMEDIA into individual defines. The Wastes should now be able to do music now.
tweak rtlights a bit, to not bug out on The Waste's decals.
use compatibility glsl in order to get ftransform working for consistent vertex coords (still uses core if there's no fixed function stuff). this fixes z-fighting issues with rtlights.
Rework punchangles for greater compatibility.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5059 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-21 20:22:07 +00:00
Spoike e7c1f9a490 rework config.h stuff a little, fixing up numerous ifdefs etc. added some more for potentially smaller builds.
make the 'identify' command assume that a single decimal number is not an address (allowing it to be handled as a user id).
qcc: support default initialisers in function calls.
tweak filesystem code to try to flush individual files instead of discarding the entire fs hash.
fix 'snap' stuff.
other tweaks...

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5058 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-19 00:15:42 +00:00
Spoike 7bfb3b56fa small fix for a crash that I added at the last moment...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5056 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-11 17:16:51 +00:00
Spoike 3061ed448f fix a silly performance-sapping typo.
implemented identify+iplog stuff for nq users.
r_tessellation forces blinn tessellation on meshes. can also be specified manually.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5055 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-02-11 16:14:06 +00:00
Spoike 4fcd615308 try to fix null framestates issue causing crashes from pmove/solid_bsp code.
some tweaks to try to make webgl more robust.
added r_max_gpu_bones cvar. defaults to 0 in webgl for now (64 otherwise).
fixed gles2+skeletal issue that was breaking webgl (note r_max_gpu_bones needs to be set to 32 or something for it to actually use glsl bones with webgl).
sound rates now internally use decimals instead of percents. because meh.
allow PEXT2_MAXPLAYERS and angle deltas in nq.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5052 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-29 13:10:53 +00:00
Spoike 1fcba85e20 reworked texture loading. now favours shallower files over preferred extensions.
attempt to use wad/*.png for hud images too (ezquake compat).
image_list can now be used to show the filename the texture loader actually picked (including which package its from).
reworked loading screens a little. hopefully this should give qc a better chance of working with them.
added invert mouse pitch option to menusys menus, a couple of other tweaks too.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5049 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-24 20:15:14 +00:00
Spoike c68cbfec24 implement status command for nq clients that expect something to be printed. IP addresses are withheld.
fix stats issue.
support menuqc-based loading screens.
fixed 2d render-to-texture issues.
(finally) throttle 'connection lost or aborted' messages. report the ip address too, because we can.
begun work on nq-style player ip-logging. ip addresses are collected now, but there's still no actual database code yet.
rewrote engine auto-update. now part of the updates menu instead of system-specific special-case code. Still requires a system function to actually invoke the updated engine however.
added sdl audio capture support (requires sdl 2.0.5).
treat q_version like f_version etc. respond to both.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5046 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-24 10:27:39 +00:00
Spoike f71f6260b1 implement missing svcdp_spawnstatic2, try to clean up various different 'spawnstatic2' svcs from different protocols.
try to fix lightning beam positions (which was a problem with nq+svc_setview)
fix iqm events.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5041 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-16 08:13:51 +00:00
Spoike f546a188c4 fix some bjp3 issues.
add getlightstyle builtins.
fix some compile issues.
fix decals on hlbsp.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5040 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-15 13:13:09 +00:00
Spoike c4ded89ad7 fix server crash (on two pk3s with the same pure path)
fix fteqcc issue unintentionally stripping things
added model event support.
added support for a couple of extra twiddles in the iqm format.
modelviewer now highlights meshes (to display hitmesh areas).
modelviewer now shows ragdolls, because I can.
fixed some nq download issues/crashes/fallbacks.
fixed 8bit bmp palette issue.
added capturethrottlesize cvar to throttle recording speed if disk space is getting low (to avoid Maverick's demo encoder getting swamped).
com_protocolname can now list multiple protocol names to list multiple server types. only the first will be reported to other clients however.
can now be compiled without support for q1bsp or q1mdl. not useful, but hey.
increase max_channels, by as much as is necessary.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5038 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-01-13 00:39:50 +00:00
Spoike 03d96bff72 first attempt at webvr support. probably totally crap.
fix hitmodel with skeletal models(can also now support lerps, skeletal objects, etc).
more hlmdl fixes for eukara, including hitboxes.
modelviewer can now display bones.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5033 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-19 13:31:05 +00:00
Spoike 6e825e42dd merge gl+vk win32 code. include egl support on windows (useful for ANGLE).
fix misc bugs.
rewrote skeletal code to use gpu-friendly skeletal data for all skeletal formats.
add modelframecount builtin, to easily get the number of frames in a model.
integrate hlmdl a little better.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5031 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-13 11:50:15 +00:00
Spoike 151adc38ed move 'not a field' messages to dprints.
try to fix hlbsp palette issues.
fix drawstring showing link infos.
move some annoying cvar defaults over to quake-specific settings, instead of always being on.
fix possible hlmdl crash.
fix __fullspawninfo
fix switching between player/spectator not tracking spawned slot counts properly.
fix a possible crash from runstandardplayerphysics.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5030 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-09 09:09:12 +00:00
Spoike 5ded3710b4 networked entity editing now kinda working. still needs much more work before its usable.
try to use microsoft's poor-man's eax stuff with directsound. snd_eax is disabled by default still thankfully.
some hlmdl fixes

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5029 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-12-07 18:45:25 +00:00
Spoike 732a89f7c1 r_softwarebanding is now a bit more generic and can now palettize rgb textures.
fix r_renderscale nearest/linear switching needing a vid_restart.
fix q3 spamming input packets.
fix ^8
prepare for nicer entity editing via eg csaddon.
fix vulkan crash + vulkan overbrights

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5027 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-11-25 08:14:54 +00:00
Spoike 8d09710ed1 lightprepass is functional again. still diffuse lighting only. supports shadowmaps but no other weird light info.
added 'pkg' console command. will still need more tweaking.
r_renderscale < 0 means nearest filtering (may need a vid_restart for that to take effect though).
fteqccgui: added 'make installer' options.
fteqcc: fix framemacro issue that was breaking due to invalid dupes in hipnotic's code
cl_lerp_smooth: by default now enabled for singleplayer as well as just demos. this smooths out platforms etc.
q2 demos: explicitly recognise .dm2 extension, to try to avoid issues.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5024 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-11-20 20:52:41 +00:00
Spoike f7d7a1a9fb fix some search_begin to not fail just because no files were found, fixing a crash reported by eukara.
fix Sys_EnumerateFiles on linux to enumerate more loosely, so "*/*/*/*.tga" or whatever can now be searched for, instead of giving no hits.
be slightly more promiscuous when loading audio files.
try to deal with denormals-are-zero without bugging out.
be slightly more verbose about nan origins/velocities.
parse custom cvar descriptions specified via the set command.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5023 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-11-15 22:22:04 +00:00
Spoike eefc950400 particles: rework r_effect, such that its possible to project particles forwards
particles: add an emiteffectnum field (and support emiteffect+traileffect psuedo-fields), for reliable emissions that are not framerate dependant (emitted forwards by default...
particles: rewrote 'sky' surface emittance. can now emit from submodels too.
particles: be more verbose about unknown mode keywords, instead of silent.
server: add basic misc_model emulation, for mods that don't implement one.
quake2: better r1q2 compat.
renderer: rework mindist+maxdist, should be more consistent as well as more reliable with orthographic matricies. has actual VF_ enumerations now.
sound: fix CF_FOLLOW to not crash, and work with openal.
client: 'cl_loopbackprotocol nq' now uses appropriate protocol extensions.
fs: try using /usr/share/games/foo by default, if it exists.
server: uncap drate if unspecified, do not fall back on rate.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5021 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-10-22 07:06:51 +00:00
Spoike 669b9c0d02 fix some compile errors+warnings.
fix sqlite3 to use the correct .so in linux (or at least debian).
remove dupes from qc filesystem searches.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5020 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-09-09 18:46:08 +00:00
Spoike e9c50361f4 whoops.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5018 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-09-08 19:14:29 +00:00
Spoike b749d8356a remove the old SCVAR macro
server: my attempt at mvd recording fixes. there's a couple of other issues, at least with nq mods.
client: properly support recording .dems mid-map for 15+666
client: server browser now queries nq servers for players+rules.
renderer: add support for single-image dual-layer skies that some other engines use.
qcc: add #merge, along with __wrap + __weak keywords. fix a symboldata issue revealed by this.
qcc: added a flag to write the sourcecode into the .dat (zip format compatible with any zip program that can deal with 'self extractors').
qccgui: can be told to open a .dat file instead of .src, showing/using any embedded sourcecode.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5017 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-09-08 19:04:35 +00:00
Spoike 57dfaea5fd cl_clock 2; now gives a 12-hour clock.
fix configs not getting execed properly when not run from the automatically detected basedir.
fix some silly bugs.
qcc: remove deprecated %5 support without qccx syntax.
qcc: added -Fembedsrc to embed the sourcecode into the progs in a form that can be read with various standard unzip programs. This works without breaking any engines.
server: fix memory explosion issue with fitz666 clients.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5016 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-09-01 14:31:24 +00:00
Spoike c08a0aa139 fix some of the things that baker didn't like. sorry it took so long.
try to appease msvc6, just because.
update the downloads menu. now even betterer!...
fix proquake server angle snapping precision issue.
also accept _glow textures as an alternative to the more standard _luma.
compat for dp_water shader terms. tcgen stuff is still fscked up.
menu tooltip code can now properly deal with variable width etc stuff.
add missing te_flamejet builtin.
r_dynamic -1 can now cope with q3bsp for a small speedup.
added -watch commandline arg, to make it easier to figure out where cvar changes are coming from.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5015 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-08-25 00:12:14 +00:00
Spoike da992db551 qc: add a crossproduct builtin. because I can. and it saves having to remember the orders.
irc: fixed the irc plugin. again. properly this time. hopefully.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5013 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-07-29 20:25:48 +00:00
Spoike eccfe6b560 d3d11: stripped the reflection stuff from the d3d11 renderer. we'll do that stuff explicitly instead of having to deal with microsoft's api. its just more reliable.
openal: doppler now applies to openal more consistently.
vulkan: vk_loadglsl cvar enables vk_nv_glsl_shader, with support for existing glsl shaders (still no permutations for now). needs !!samps stuff.
vulkan: r_renderscale now partly works. r_fxaa also works under specific circumstances. needs more work. still no bloom or projections stuff.
menu_download: got a few tweaks to improve it, including zips. I still want to handle engine updates with this stuff, but that can wait for later.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5008 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-07-26 11:47:59 +00:00
Spoike 5eb21d1b6e try to fix sdl inputs.
fix some non-ascii encoding.
generate placeholder 8bit mipmaps for gles2/webgl in case anyone tries using 'vanilla' rendering.
revamping the downloads menu.
fix particles needing a specific blend mode in order to use custom shaders.
added trace_bone_id globals for qc. untested.
try to fix ragdoll crash. failing that, at least prevent it from being a crash.
try to fix d3d11 black lightmaps issue.
add r_norefresh to d3d9+d3d11
skin composing can now use subpics.
vulkan now tries to properly detect supported texture formats, instead of assuming.
vulkan now has a cvar to configure which dynamic buffers should be staged or shared.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5006 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-07-21 19:27:59 +00:00
Spoike 24cd9a1c21 update triptohell's self-signed cert.
fix some more compile-time issues.
fix some vulkan issues that are probably what's breaking amd gpus.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5005 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-07-17 18:41:01 +00:00
Spoike 2d3b03ac48 adhere to filesystem priorities as specified by fmf files, and obey the order from pak.lst even when file extensions differ.
try to fix nacl builds.
added a 'mapper' positive penalty instead of using vip (which might be dangerous if modders are not aware of it).
fix menu.dat's graphics presets not loading configs properly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5002 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-07-16 13:21:23 +00:00
Spoike 934a97c53e fix some compile issues (errors and warnings). sdl, ode, vulkan.
fix q2bsp textures.
fix some vulkan validation issues.
MOVE_OTHERONLY is now an official feature (replacing MOVE_ONLYENT which is now removed, same functionality, better behaved behaviour).
network up edited brushes on initial connect. still needs more work for entity editing, but should otherwise be okay for now.
add sys_browserredirect console command for emscripten builds (can be used to trigger window redirections - including download requests)

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5001 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-07-15 12:26:24 +00:00
Spoike 27a59a0cbc LOTS OF CHANGES. was hoping to get revision 5000 perfect, but really that's never going to happen. this has gone on for too long now.
vulkan, wasapi, quake injector features added.
irc, avplug, cef plugins/drivers reworked/updated/added
openal reverb, doppler effects added.
'dir' console command now attempts to view clicked files.
lots of warning fixes, should now only be deprecation warnings for most targets (depending on compiler version anyway...).
SendEntity finally reworked to use flags properly.
effectinfo improved, other smc-targetted fixes.
mapcluster stuff now has support for linux.
.basebone+.baseframe now exist in ssqc.
qcc: -Fqccx supports qccx syntax, including qccx hacks. don't expect these to work in fteqw nor dp though.
qcc: rewrote function call handling to use refs rather than defs. this makes struct passing more efficient and makes the __out keyword usable with fields etc.
qccgui: can cope a little better with non-unicode files. can now represent most quake chars.
qcc: suppressed warnings from *extensions.qc

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5000 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-07-12 00:40:13 +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 46c63cbedb curtesy molgrum: allow_download_loc permits locs/*.loc to be downloaded. also fixes an strncmp. oops.
device ids with rawinput and xinput are now assigned only on the first event. this means the ordering is easily controllable, thus helping splitscreen usability.
fix compile errors with the nolegacy builds.
client updates "chat" userinfo to match ezquake. does not display them still. server now forwards them correctly for ezquake.
android can now switch gles version. a bit crashy with it though.
android: gyroscope is now available to csqc.
android: added vid_dpi_x/y cvars. will be 0 on other platforms, for now.
added screenshot_vr command, for 360-degree stereoscopic screenshots.
fix a potential crash from frag parsing.
added m_accel_style and friends, for nicer mouse acceleration.
fixed const-correctness in a few places.
added friendly spectate button to the server browser
display a warning if an mdl has dodgy seam values. this won't affect fte, but can crash winquake.
qcc: fix struct fields to at least appear to work.
qcc: -I is finally implemented.
qccgui: options now has tooltips, so people might have a chance of actually figuring out what each option does.
menusys: game configs menu now scans for files rather than listing specific ones. should probably be tested more.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4998 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-02-10 23:23:43 +00:00
Spoike 9360a016c2 mvd: cl_autotrack_team cvar locks autotrack to a specific team. getting the team name to match can still be problematic when it contains non-ascii chars however.
qw: fix recording mid-map.
q2: add support for recording demos on q2 servers.
q: fix setattachment not using the correct orientations.
q2: now supports splitscreen, as well as increased model and sound limits.
cl: fix crosshair not appearing in splitscreen.
cl: splitscreen clients now get their own colour tints (like the bf command)
snd: tweak audio to be a bit more usable in splitscreen by default.
cl: added con_logcenterprint cvar, for shoving a copy of centerprints onto the console. by default only appears in single player.
qc: add checkbuiltin builtin. for all those #0 builtins without their own extension name.
gl: fix r_dynamic -1 bug that was painfully visible in AD.
mdl: validate per-frame bounds of mdl files (stuff that would crash software renderers).
sv: fix -port or +sv_port commandline args to override the port correctly.
win: attempt to cope with windows symlinks enumerating with the wrong filesizes.
gl: fix skyboxes not appearing properly.
gl: fix sprite alpha/edge issue resulting in some invisible sprites in AD.
gl: fix screenshot_mega, in combination with r_projection. yay for HUGE panoramic screenshots.
q2: fix replacement textures issue.
qw: fix download demonum/X issue, both in client and server.
qw: fix multicast dimensions not always being honoured properly.
nq: fix starting angles sometimes being wrong.
menusys: I'm finally uploading my menusys library, plus example mod, which I'll now be providing like csaddon is.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4997 fc73d0e0-1445-4013-8a0c-d673dee63da5
2016-01-18 05:22:07 +00:00
Spoike e996609c73 added qccgui icon (courtesy of shpuld)
isolated transfers a little.
added preliminary support for r1q2 and q2pro protocols (no zlib).
fixed some missing q2 hud configstrings.
fixed models attached to particles not appearing the first time around.
fixed halos appearing on {foo fullbright textures.
fix particle crash bug from missing particlecubes.
implement r_converteffectinfo (instead of r_importeffectinfo with r_exportalleffects) for convenience. also now more complete and more accurate.
loadfont no longer auto-allocates slot 0.
fix issues with r_dynamic -1
don't restart audio on vid_reload (only reload it). this fixes audio issues with capturedemo with gamedir changes.
fix possible crash from loading sounds during an audio reload/restart.
now listens on both ports 27500 and 26000 when running quake, by default. sv_port or -port args will override.
work around surfedge corruption in some instance of the slide4 map that dimman found.
attempt to nudge players to travel at at least 200qu when travelling vertically through portals. this should help alieviate gravity-induced stuttering issues.
fix nested function types used in conjunction with op_state. now assumes static within the parent.
optimise array indexes slightly.
fix issue with ptr[float].foo
fix some qcc bugs to do with implicit type conversions
fix a portal / angle protocol extension issue, so legacy clients can use portals, they just can't see the other side (nor predict them).
fix q2 victory.pcx issue at the end of the game.
use abort/sigabort instead of sigsegv on linux sys_errors. this should help get people to report stuff better.
reformat the nq server advertising to be more helpful.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4996 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-12-28 17:41:39 +00:00
Spoike b1d2179394 glibc workaround
fix some q2 (demo-)incompatibilities + omissions. rework some effects too (and implement some missing stuff, like flies). more work required.
a hack to hide a well-known bot from q2 player counts in the server browser.
fix some server browser colours.
fixed some lighting issues.
sv_protocol_nq now accepts protocol names.
fix some ezhud issues, like the 'hide all' command.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4995 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-12-12 19:25:15 +00:00
Spoike 71319a8852 add hud_miniscores_show cvar to hide the mini deathmatch overlay
fix some issues with ezhud. ownfrags, text alphas, RGB player colours.
tweak gamecontroller input a little, to make axis slightly more usable.
fix issue with menuqc/csqc not being able to query binds reliably.
fix csqc gravitydir.
bump r_particle_tracelimit so that its no longer a limitation by default.
tweak fog to allow far-clip-plane culling on entities (but still not on world, due to issues with glClear).
fix performance issue with q1bspx BRUSHLIST lump.
fix mvd recording bug.
fix limitation that becomes apparent on maps with lots of ents visible at once. will now use more bandwidth in such cases, however.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4994 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-11-18 07:37:39 +00:00
Spoike 9000f497ec misc fixes and tweaks:
added //it stuffcmd.
now parsing //wps stuffcmds for ezhud use.
rework worker threads a little so that the main thread is no longer guaranteed to be stalled at least once. This speeds up load times a little.
fix nq server player counts in the server browser.
fix switching from/to spectator mode from destroying frag counts.
tweak custom bf args a little.
fix issue with player names starting with char 0x80.
fix menu.dat not loading.
attempt to fix flush lag on windows.
some fixes for stencil shadows.
try to fix public builds not knowing their svn revision. this should fix autoupdates.
added global_gravitydir vector, for mods that want to be really weird. doesn't clear onground flags however.
reworked the status command a little to attempt to report bursts a little better.
fix multicasts missing in mvds issue.
fix illegible server message with dpp7 downloads.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4992 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-10-27 15:20:15 +00:00
Spoike 5172823341 code to use occlusion queries for coronas.
tweaked cl_maxfps a little. now sticks much closer to the desired rate. also tweaked cl_netfps. clamps 77fps to 13ms frames (read: 76.9 fps) in an attempt to avoid tripping up any framerate checks (we had previously been using a lower net rate with occasional 14ms frames).
viewspace particles are now a thing.
greater control over spawning particles. its now possible to spawn particles only in slime, etc.
fix soundlength builtin.
preliminary version of r_dynamic -1, which can give some significant framerate boosts on certain maps.
fix halflife bsp texture issues.
rewrote worker thread logic. workers now work as a single pool, instead of independent pools. this means that you don't have to wait for a specific thread to finish before it can load new stuff, reducing overall load times some more. worker_count cvar allows reconfiguring the number of active workers. can be changed any time.
updated mod_terrain_create command. should be more useful now and make more sense when first loaded.
fix lit support. apparently its been broken for a while.
brush editor now has csg subtraction.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4990 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-10-11 11:34:58 +00:00
Spoike 12dd83c20f Fix outdated hlsl11 shaders.
Enable d3d11 renderer by default (in builds that already have a d3d9 renderer anyway).
Fix d3d11 + multisample.
fix some sdl issues.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4988 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-09-14 15:20:09 +00:00
Spoike da316ce374 fix gles1 issues (read: android port now works again).
update csaddon code.
qclib now understands 'objects'. engine+qcc does not use them yet.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4987 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-09-14 10:36:42 +00:00
Spoike a38a933fdd be more verbose about the port that we're redirected to when acting as an nq client.
add r_coronas_occlusion cvar. when set to 1, coronas are occluded by mdl geometry rather than just physical stuff. fix hitmodel stuff slightly.
rewrote if command handling. now properly supports operator precedence.
x11: try to fix XIM on ubuntu.
qcc: Add -frootconstructor


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4986 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-09-10 10:16:26 +00:00
Spoike cc414506a8 make some tweaks to fix some model skin issues.
tweak manifest package lines to support key/value argument pairs for extensibility. unrecognised args are still assumed to be mirrors.
package lines can now contain condition "CONDITIONSTRING" pair, a (quoted) equivalent to the if console command. fps presets now do a fs_restart in order to give the filesystem a chance to download any new packages.
fix svc_finale bug resulting in corrupted svc_cdtracks.
change q1mdl code to use the same shader names as dp does. expect issues with dodgy shaders.
fix animmap to support float framerates.
fix 'if (a&&b) then' logic.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4984 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-09-07 14:34:39 +00:00
Spoike d078c85627 fix an issue with bloom by making sure a cvar is created for glsl to use (even if not directly used by the engine). this ensures there's no weirdness with defaults.
some fixes/tweaks for the nolegacy builds.
r_skybox works mid-map again.
tweak the qc debugger to not do infinite loops so easily...
rewrote chunks of the d3d11 renderer to support q3 shaders a little more correctly. now runs quake3 acceptably.
add explicit culldistance option for terrain/.map maps. pvs will effectively cut off anything beyond this distance.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4982 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-09-06 03:30:28 +00:00
Spoike a6c66182ba fix ogg audio truncation.
add trace_surfacename qc global string.
concession for nolegacy and viewheights. remember kids, be sure to use VF_ORIGIN.
qcc: optimisation for [0,foo,0] vectors.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4980 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-09-02 03:12:25 +00:00
Spoike c15ce364be git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4979 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-09-01 04:51:21 +00:00
Spoike 8241ed13be tweak intermissions a little so that quakeworld mods actually works properly (especially mvds).
dynamically allocate music_playlist_* cvars. may require the use of set from configs in order to create them in advance.
add a trail to rogue's plasma weapon.
fix r_waterstyle bug
attempt to optimise qcvm slightly.
tweak copyentity to be a bit more useful.
tweak ban code slightly. 'stealth' penalty hides other penalties.
fix some d3d9 rendering issues with q3.
fix some q2 stuff.
add the NOLEGACY thing that a few people have asked for lately.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4978 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-09-01 04:45:15 +00:00
Spoike 31ced9384d fix cl_maxfps as a q3 client.
implement cfg_save_auto cvar, to replicated vanilla quake, ish. default off, obviously.
support for Q2RDF_IRGOGGLES (in combination with Q2RF_IR_VISIBLE). untested.
rework vectorvectors to be more predictable. v_right_z is now _much_ more commonly 0.
fix potential sound-related lock-up/console spam.
implement $colored_armor+$colored_powerup macros.
if command now copes with ' quotes.
fix crash on flushing q3bsps.
fix black bits with r_renderscale+cl_sbar 1
implement emulation for legacy q3 shaders when glsl is required. this is primarily for webgl right now, but potentially also useful with any gles2 port (fixme: still need to tweak d3d11 backend to support this too).
include scrollbar glyphs in the fallback font logic. this is primarily for download progress bars, especially with webgl.
don't try applying gamma to screenshots when using glsl.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4976 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-28 03:13:45 +00:00
Spoike 3d4e7f87b8 fix possible infinite loop.
fix viewmodel animations not adhering to sv_gamespeed.
actually fix -watchdog, at least for msvc.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4972 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-24 15:47:40 +00:00
Spoike ca09c08072 added a -plugwrapper argument, so that libcef can be a little more efficient with regards to new processes, at least in terms of quake resources eaten in subprocesses that will not be running quake.
fixed -watchdog, no longer conflicts with other exception handling.
try to be more efficient on behalf of videomaps

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4971 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-24 03:54:39 +00:00
Spoike 6e6a767ba6 fix hitmodel.
allow providing a videomap shader as a cwindow background. because I can.
move all the tenebrae hacks over to only explicitly detected tenebrae progs.
small irc plugin update.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4969 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-22 02:59:01 +00:00
Spoike e99354bd20 fix playdemo not working straight after record.
make a guess at the currently applied preset. fix issues with vid_reload on preset changes being buggy.
fix erroneous weapon flashes due to limited precision.
try to fix rogue finale.
fix issue with vid_restart crashing with directinput active.
work around emscripten rand entropy, at least as far as particles are concerned.
properly implement te_explosion2 (for rogue mission pack).
drastically reduce submodel polyoffsets in the webgl port, because firefox's depth precision is 16 bit or something stupid.
fix rogue ibar background not being used with qw hud.
added terrain editor feature to edit the bsp's entity lump. this also works with .bsps. added console command to reload the map/apply those ent changes but leaving the players how they were (lets hope enemy etc stuff doesn't bug out...)
force-enabled airstep when travelling fast. this is to partly replicate nq player physics in order to fix windtunnels on r1m5 iirc.
added some more effects to the 'high' particle effect, in order to make rogue feel a little more loved.
fix for rogue buzzsaws.
rework webgl pointer locks.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4965 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-20 03:17:47 +00:00
Spoike a26a373d15 fixed picmip simpleitems issue.
fixed double picmip bug.
use pbos for videocapture, for extra speed. mwahaha.
fix issues with 2d batching. including drawflags.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4962 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-14 02:46:38 +00:00
Spoike 5f7243c6dc capture[demo] now works in d3d renderers.
capturedemo now supports rendering to an fbo. this provides support for crazy video resolutions. 16k*16k videos are going to be quite large... only works in gl. hurrah...
console selection/copy indicators are back!
fix issue with q2 server browser.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4961 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-11 09:14:33 +00:00
Spoike fc691d5be8 implemented gl_simpleitems.
load times reduced slightly.
don't show autoid armour if they're dead. its just not relevant.
fix csqc staticsound builtin.
fix some shader leaks/double-frees in certain situations.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4960 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-10 18:28:23 +00:00
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 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 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 2b77e1ad3b git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4950 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-07-27 09:00:18 +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 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 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 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 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 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 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 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 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 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 6853a4fd1e fix recent saved game bug (reported by shpuld).
fixes for fteqcc to better compile 'classic fortress' (reported by zel).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4914 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-21 12:10:25 +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 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 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 13a9b36bb3 make sure ktx gets shut down properly.
condition on -nowmfullscreen was inverted.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4902 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-15 07:40:58 +00:00
Spoike c12cb2f9bb fix pvs/phs memory leak when the same world map is used multiple times without getting flushed.
back off on per-client memory use.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4901 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-14 12:26:01 +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 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 daa4496b7c fix for ktx compat.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4892 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-11 23:33:13 +00:00
Spoike f4d3df7bf5 make sure the capture command doesn't switch between gamedirs while capturing.
added dimension_default global to provide default dimensions. expected to be a (var) constant.
support setcustomskin in menuqc.
implement some considerations for win95, so it can actually run on that horrendously outdated system.
provide scr_autoid and r_showbbox-field info when running csqc.
ignore vid_restarts at the end of config.cfg files from other engines. in fte, these are at best redundant and at worst overrides user settings.
fix issue with latched cvars not flagging the config as modified.
path command always shows filenames properly.
fix some fteqcc inlining bugs.
added precaches command to display all active precaches.
added docs for mapcluster.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4881 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-04 06:15:14 +00:00
Spoike 5c64a659c4 enable WEBCLIENT in dedicated servers.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4877 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-05-16 17:51:03 +00:00
Spoike 03919e0dd4 fix vector arrays.
try to fix some misc issues.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4872 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-05-16 08:02:05 +00:00
Spoike 31506617f0 Implemented device enumeration for SDL+ALSA+OSS4 audio drivers. Back to using the 'default' alsa device by default, warts and all.
Fixed openal linux .so name, now usable in linux.
sdl audio code now uses sdl2 audio, and thus can support multiple devices simultaneously.
linux non-sdl builds now dynamically link to SDL2 for audio. This is now the default audio system in ALL non-android linux builds. This is the only real option to cope with the mess that is alsa.
Fix netgraph when running q2. No longer makes palette assumptions.
Fixed q2 ping values.
Tweaked a load of windows code to use wide chars, because microsoft do not support utf-8.
fixed an issue with winsspi where data from large packets could get lost.
now tries to read .lit2 files (although still refuses to read them for now).
Fixed motionblur. To make Shpuld happy... :P

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4871 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-05-14 03:06:58 +00:00
Spoike 2afefb77ca reworked the shader system slightly.
$diffuse can now sample animmaps correctly (although this only makes sense when using glsl or replacement shaders (read: rtlights)).
$fullbright now defaults according to the animmap too.
added reflectcube and reflectmask (the latter defaults according to map/animmap, the former needs to be explicitly stated).
fix d3d9+d3d11 renderers a little. needs much more work.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4868 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-05-03 19:57:46 +00:00
Spoike 56b8f125a1 hack some sort of hdr in there, because we can. I'm sure it could be improved.
provide xz support, because we might as well.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4866 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-27 12:51:42 +00:00
Spoike 410db5d6b0 in_forceseat will not break clientcmds any more.
tweak drawtextfield to understand fonts. now available to menuqc too.
provide player and full server info to qc server browsers.
allow qc to actually use cfg_save. I've been issuing that on quit for a while now and not noticed that it was getting denied.
fix some focus issues with cwindows.
tweak splitscreens to display centerprints+scoreboards in more suitable places. harder to glitch out.
path command can now displays hashes (in tooltips), which can be useful for creating fmf files.
fix q3game crash.
fix some qcc issues with hexenc and -O0.
fix some qccgui unicode issues, now preserves encoding when saving.
provide easy upgrade path for qccx syntax to fteqcc: string[%1] -> string+1 (which is still potentially unsafe (tempstrings), and thus generates a compiler warning).
rework xmpp plugin to use cwindows for chats and the buddylist. this should make it more intuitive and thus more userfriendly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4865 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-27 06:19:33 +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 2201b920c8 fix colormod
added frag message filter, and dedicated frag tracker.
added 'windowed consoles' for social-type stuff without depending upon csqc mods for it.
added in_deviceids command which allows listing/renumbering device ids.
slider widgets now support inverted ranges, so gamma selection isn't so weird.
fix top/bottom colour selection bug.
software banding feature is now part of the 'software' preset (now that it supports mipmaps).
support for loading .maps, and editing their brushes etc (with appropriate qc mod). 'map mymap.map' to use. expect problems with missing wads and replacement textures overriding them and messing up texture scales.
snd_inactive is now default.
fix threading issue with wavs, no more error from 0-sample-but-otherwise-valid wavs.
added -makeinstaller option to embed a manifest inside the exe (and icon).
the resulting program will insist on installing the game if its run from outside a valid basedir.
framegroup support for q1mdl.
textures are now loaded on multiple worker threads, for reduced load times. moo har har.
netgraph shows packet+byte rates too.
added r_lightstylescale, pretty similar to contrast, but doesn't impose any framerate cost, but may have overbrighting issues.
r_softwarebanding now works on q2bsp too.
fixed crepuscular lights.
gzip transfer encoding is performed while downloading, instead of inducing stalls.
FINALLY fix ezquake download compat issue (dimman found the issue).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4851 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-14 23:12:17 +00:00
Spoike bed989f529 q2w bsp format support.
automatic lightmap texture scaling to retain more performance on large maps.
r_clutter preliminary implementation should probably fix up the shader still.
CSQC_Parse_Damage implemented.
finally implement q2 inventory.
fix mixer overflow crash.
glsl can now use s_diffuse etc to force inclusion of a diffuse sampler/texture, meaning shaders don't need to include them.
fix issue with writeip

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4841 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-03-03 00:14:43 +00:00
Spoike 02ab57490e fix some q2+q3 gamecode bugs.
fix q3bsp optimisation that was making too much invisible.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4840 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-09 03:37:41 +00:00
Spoike 09196f3d14 fix some nq-server issues.
make trying to close the window shut down properly while debugging.
added r_softwarebanding cvar to approximate 8bit software rendering.
fix issue with invalid skeletal lerps.
external q3 lightmaps now uses IF_NOMIPMAP and respects gl_lightmap_nearest.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4838 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-07 22:34:22 +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 36a37d2bad typo
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4830 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-21 21:33:04 +00:00
Spoike 2ea981fe90 qc: qc temp-strings are now garbage collected. this makes strzone redundant.
net: revert the player angles inversion thing from last build. hack some angles. gonna need to tweak the protocol.
net: cl_lerp_players is smoother, and defaulted. lets see how many people complain.
cl: fix juddering with chase_active+prediction.
cl: download progress where the total size is not known now displays something more sane.
cl: fixed some issues with rawinput keyboards.
cl: added autoupdate option to the menu.
cl: autoupdate defaults to a new 'tested' set of builds, instead of the completely untested svn builds. 
cl: added 'borderless windowed' option to the  menus. works on windows.
cl: saved games save a preview screenshot.
cl: fix some memory leaks on shutdown.
cl: added 'setrenderer random' option, might be useful for modders in that it helps highlight bugs/differences between renderers...
qc: r_showbboxes now displays the fields of the various entities.
tweaked entity lighting to overbright more gracefully.
gl: fixed crepuscular lighting.
qcc: added % operator.
qcc: added inline keyword.
qcc: some fixes for accessors.
qccgui: now prompts for exe+basedir.
sv: added sv_specprint, ala mvdsv.
sv: stats now sent over the unreliable channel instead of the reliable one. this allows them to change more frequently.
sv: rewrote speedcheat detection. clients will be throttled instead of kicked. unresponsive clients will be simulated instead of freezing in mid-air.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4829 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-21 18:18:37 +00:00
Spoike f81ecbd44c fix some issues with nametags.
allow skin files to force qw skin player colours.
qccgui now does a quick parse-only compile to see comments on globals, as well as populate file lists correctly with preqcc-style src. however, doesn't compile actual functions, so can fail to pick up function defs (will go to first prototype instead of the body).
try to fix seasick issue when viewing an fte-protocol mvd. needs testing.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4828 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-12 12:28:13 +00:00
Spoike b7a4b8845a fix silly lightmap bug. also fix related glitches
Be more obnoxious about updates and stuff.
make the restart etc command more responsive in single player.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4825 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-08 13:09:20 +00:00
Spoike c7e4a1b183 small fix
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4822 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-07 13:48:24 +00:00
Spoike 775f6abc0f tweaks to try to get a more sane gui debug protocol.
gui debugging works with -dedicated. actual dedicated servers still not tested.
preliminary hack to support directly loading .map files without compiling. stable but buggy, not really yet worth using. attempted to rework entity lump parsing to work properly with threads.
reworked colour clears. gl_clear now clears *BEFORE* csqc is called. also, now also supports a range of colours. use 8 for black.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4818 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-07 13:34:05 +00:00
Spoike f8e247f1c4 update qccgui debugging to show current values on mouse-over, for more friendly debugging.
update gl_maxdist to use 0 again. might be more z-fighting, but at least people will stop complaining about far clip planes.
don't try loading skin "".
significantly reduce spam about missing spawn functions.
win64: if win64 q2 gamecode is missing, but win32 gamecode can be found, print out a specific warning to drive home the point that q2 needs gamecode to match the exe arch.
don't try autocompiling, noone cares, its just spam and distracts from the real issue.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4815 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-02 05:20:56 +00:00
Spoike c1e991f31c hide console while updating packages.
fix rate indicator with http downloads.
fix gamedir change crash.
force r_shadow_realtime_world_lightmaps to 0 if there are no rtlights on the map (to work around TF/etc maps where such 'useless' entities got stripped).
tweak profile lists to be slightly more verbose.
add extra parms to fteextensions.qc, so that people realise that fte actually supports that.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4808 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-12-29 02:35:10 +00:00
Spoike c57dbc7ca4 give csqc the ability to rewrite/override prydon cursor information.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4805 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-12-25 02:32:22 +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 3e2bffdddc preliminary first real attempt at letting the csqc draw loading screens. added some serverkey fields to query load progress.
misc fixes for the webgl port.
silence some warnings reported by llvm.
hide windows cursor in webgl port. use software cursor for now. will need to use url+dataurl at some point.
ignore f11 key, because it makes firefox a bit unusable in certain situations.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4801 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-12-11 16:26:26 +00:00
Spoike 95cfa0cfac fix ffov, for now.
fix server crash(es).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4798 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-12-08 21:18:32 +00:00
Spoike 4d9ee2395a warn clients when stuff will be invisible due to protocol limits. this does not include extra features, only limits.
try to handle mvd prespawning a little more generically, to enable support for vweps (when protocol extensions are active). also fix issues with mid-demo map changes, which can potentially affect qtv streams.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4795 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-12-02 02:00:41 +00:00
Spoike 98ec171f17 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4785 fc73d0e0-1445-4013-8a0c-d673dee63da5 2014-11-03 09:41:05 +00:00
Spoike 2fa7606774 fix .maxspeed and .gravity with ssqc's runstandardplayerphysics
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4784 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-11-03 09:38:17 +00:00
Spoike 9602ae7247 write lightstyle changes into mvds.
don't add 'mapname' (for q3 compat) unless we actually need that in the serverinfo for q3 gamecode.
fix bloom only blooming sideways.
clean up R2D_RT_Configure's arguments to use TF_ constants properly, without gumming up qc apis.
make InitFlyby more readable.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4782 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-11-01 09:09:58 +00:00
Spoike 661d64056a fix issue with ban expire times.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4779 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-10-27 15:27:51 +00:00
Spoike 97579ebfbb bugfixes:
hexen2 players now have colourmaps again. doesn't crash with rgb player colours.
hexen2 colour previews now work (as well as they did in actual hexen2, anyway)
fix possible issue with 'bad type - needs fixing'
color command now longer omits 0 values when displaying.
readded support for all hexen2 palette lookup types.
fixed some hexen2 image positions.
using premultiplied alpha for pics as an easy fix for hexen2's various ugly halos.
the checkerboard texture is back!
fix q1 maps that have more than 32k clipplanes.
new features:
when associated with mdl etc file extensions, now opens up the modelviewer. also potentially changes gamedir (this applies to bsps too).
multiplayer setup menu now supports selecting rgb colours (lower colour remains with the 14 team colours). press shift for the normal/hue colour selection instead. 
attempt to use bgra for texture uploads by default where available. reimplement possible support for 16bit textures.
attempt to implement gamepad support for web port. untested, but should be completeish.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4764 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-10-11 19:39:45 +00:00
Spoike 7f6c2054d9 threaded loading code and associated/extensive tweaks.
unified image loading code a little between renderers.
support switching worldmodel in csqc. also associated bugfixes.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4758 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-10-05 20:04:11 +00:00
Spoike b29c68ef92 try to be more strict/paranoid with cvars.
load q2 game dlls from the binarydir in preference to gamedir (allows such dlls to be distributed with the engine).
add small emscripten msvc project so I can build the web port a little more conveniently.
require mouse releases to have had a corresponding mouse press while in the menu. this solves issues with mouse clicks triggering the load menu while dead and instantlyish loading one, and alt-tab issues too.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4755 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-09-20 04:11:39 +00:00
Spoike 45bafbf374 fix issue with more submodels than the precache model limit. bump model precache limit.
move some of the weird hexen2 features into a HEXEN2 define, which will be disabled by the QUAKETC define.
preliminary attempt at capsule collision support. only capsule/q3bsp support, no capsule/box, box/capsule, or capsule/capsule support, yet.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4753 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-09-17 03:04:08 +00:00
Spoike 6c6999ce78 fix misc bugs/issues/warnings.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4751 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-09-14 01:45:11 +00:00
Spoike 1daac61ea9 fix a couple of issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4750 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-09-12 13:14:51 +00:00
Spoike b328df6936 fix typo with menus.
fix a couple of obscure bugs.
rework qw/q2 skins. qwskin command now exists in .skin support.
add support for mod_external_vis, to load vis patches.
made the included http server a little more verbose with peer addresses.
preliminary support for using accessors in fteextensions.qc, will wait a while until fteqcc's support is robust before its enabled by default.
preliminary webgl drag+drop. still lots of work to do before giving it a pak1.pak is trivial.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4748 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-09-08 23:47:19 +00:00
Spoike 230ce4e0a0 updated mapcluster mode a little, should be more robust now. also supports cross-server events.
added option for softer/wider lines.
attempt to use hardware cursors in windows. provide api for csqc to specify its own.
cl_downloads cvar blocks all automatic downloads.
QUAKETC: new compile-time setting. if defined lots of stuff will be disabled including built in menus.
remove spam from log files.
try to get the webgl port to complain a bit more reliably when webgl is not usable.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4738 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-09-02 02:44:43 +00:00
Spoike 5f9e575e75 lets make that new con_stayhidden cvar default to 1 instead. should make it look slightly more professional.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4734 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-27 09:01:46 +00:00
Spoike 258a4163ae random hacks to get rtshadows working in the gles/webgl port, no longer depend upon GL_ARB_shadow.
gles renderer can use fbos now.
webgl now saves configs+savedgames persistently using localstorage.
misc startup/manifest refinements.
make nacl compile again.
webgl port can now use #stuff to select different manifest files.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4733 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-27 08:41:31 +00:00
Spoike 957afd8c3b map command now strips parms+spawnflags. use changelevel if you want to keep that (unlike nq, we still won't kick players).
fix some compiler warnings.
update the emscripten port.
reduce bss a little (as emscripten blatently can't cope with it)
support for '_wateralpha'. also support for cvar_foo too.
demo_jump works in nq demos.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4732 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-25 07:35:41 +00:00
Spoike cd690a165a fix issues with join/observe spam by throttling it to no more than 1 per 2 seconds.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4730 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-24 17:16:12 +00:00
Spoike 1da6377542 fix gb's 'help! they're crawling out of the walls! thing'
fix scrags+fish being affected by gravity at spawn

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4722 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-17 02:27:54 +00:00
Spoike 727b8d40db fix 3 issues that appear to happen with hipnotic.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4721 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-16 19:03:04 +00:00
Spoike 583d8aa46c bugfix patch:
prevent shift+alt from triggering the menu while in demo playback. hopefully solve toggleconsole issues on german keymaps.
gl_texturemode2d is now in presets, using nearest in vanilla preset.
waterwarp edge textures now force linear sampling. no weird blocky edges.
fix serverflags reset issue on saved games.
fix $currentrender to not glitch on fbos too much.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4720 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-16 05:33:50 +00:00
Spoike 362d8f820f I got into a discussion with gb. added fps_preset vanilla. this enables all sorts of vanillary things, even more so than faithful (which disables them again).
added r_part_classic_square, cl_demoreel.
fixed a couple of things that the ever vigilant gb spotted. I guess I don't play quake enough.
fixed a load of random warnings reported by gcc. many many many warnings remain. I got bored.
internal mrt feature implemented, not properly tested yet.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4719 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-15 02:20:41 +00:00
Spoike 402aa52362 misc fixes, tweaks, and hacks.
qc rt target api now uses names instead of numbers. shaders can name such rendertargets in advance.
added timing info to qc profiling, instead of just opcodes executed.
added sv_showconnectionlessmessages, to show all messages that don't relate to a client, so omc can see if he's getting DDOSed easily.
try to show proper error messages with the xmpp plugin, at least for certain things.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4714 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-03 14:47:47 +00:00
Spoike b97bc5685c added multiple joystick support in windows.
fixed portals. again. now pushing the player out (reverting origin) if they get de-spawned.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4711 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-07-12 06:56:17 +00:00
Spoike d710d945d0 fix fraglog sequence count crash (which resulted in SZ_GetSpace: overflow without allowoverflow set). Reported by OneManClan.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4710 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-07-12 03:59:04 +00:00
Spoike 4d7cc67ebe fix recent prediction issue.
added current bandwidth info to the status command. added cl_status command for similar things for client stuff.
minping delays now using floats instead of milliseconds.
fix waterjump bug with qc player physics.
fix flymode friction.
fixed illegible server message with ezquake going through portals. rendering is still ugly, but at least it can be used.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4708 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-07-02 03:20:40 +00:00
Spoike 433c7b24c8 change package reference rules to not reference files that are not used (ones that were found+rejected with com_fdepthfile)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4707 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-07-01 07:10:10 +00:00
Spoike a704b1423b preliminary bidi support.
add blind+speconly penalties.
add dpi-aware flag.
fix issue when switching between singleplayer and multiplayer between maps.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4703 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-30 21:57:35 +00:00
Spoike 75e22d98fe fix potentially fatal sv_minping memory leak.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4702 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-30 20:32:34 +00:00
Spoike 51baf65e9b add joystick csqc event stuff.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4700 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-27 16:10:10 +00:00
Spoike ceb32ec494 reworked penalties flags. now a single bitfield instead of separate booleans. added 'blind' penalty.
tweaked portals again. no longer wrongly impacting against the portal's front/back planes, even with speed.
reworked PEXT_LIGHTSTYLECOL, now uses a vector instead of a channel mask.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4699 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-25 03:53:11 +00:00
Spoike b1e3060648 tweaked download rules to match mvdsv, by adding an allow_download_other cvar.
added log_enable_rcon (and enabled it by default), for feature parity with mvdsv. invalid requests, valid requests, and redirected prints are all logged.
tweaked server-side download code to not bug out with downloads larger than 2gb.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4697 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-24 03:02:32 +00:00
Spoike 9ec5f0007b minor bugfixes.
changed qw portal collision to match bboxes more closely.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4695 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-22 23:58:53 +00:00
Spoike 5aba4ddeaa fix SV_RunClientCommand on dedicated servers (and other weird ways).
fix a couple of other crashes.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4692 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-22 16:30:35 +00:00
Spoike ed54ed2dcf portal tweaks. prediction code can now use portals, but cannot actually predict them yet, for a couple of reasons.
gravitydir on monsters should now be workable (qc needs to be careful with ideal_yaw, which is now relative to the gravitydir rather than the xy plane).
fix an issue where shaders were not loaded after gamedir switches.
added 6dof command (and player movetype).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4689 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-21 17:58:17 +00:00
Spoike 84888e3ff2 terrain editor update, to implement some of the things epicenter asked for.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4687 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-16 20:45:44 +00:00
Spoike b026bbacfe add support for ipv6 scope ids (so you can use the correct link-local addresses).
fix portal rendering with non-identity model matricies. add portal csg behaviour (with nq physics at least).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4686 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-16 16:21:28 +00:00
Spoike a4db77b22f rewrite download code detect rates and get the best speeds practical.
client can cope with files over 4gb.
added download resumption. hopefully.
fix some q3 bugs.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4685 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-12 23:08:42 +00:00
Spoike e2eded8ffe oops
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4677 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-02 19:05:18 +00:00
Spoike c415ead7d8 Attempt to improve areaportal support. now networked (so visible clientside), but will probably break anyway, if doors open before players join. should also block some rtlights, although perhaps not completely.
disable the use of quakespy stuff, using a dynamic port and no stuffcmds from random ip addresses and no mutex.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4676 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-02 16:50:40 +00:00
Spoike c841b4fbd1 attempt to update the openportal builtin to work with q3 as well.
ignore sound() calls with empty sound names.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4675 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-30 18:04:51 +00:00
Spoike 50f80352c3 don't get too confused over areas.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4674 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-30 17:20:21 +00:00
Spoike 68599df1f7 some more random fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4673 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-30 16:37:20 +00:00
Spoike 6c84350afd Try to fix a few issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4670 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-30 03:57:30 +00:00
Spoike 3bd6892353 try to fix q2/q3bsp checkclient bug by rewriting everything to do with pvs!
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4668 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-23 02:02:51 +00:00
Spoike eb91fc3ac7 try to fix a couple of misc issues, both minor and major.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4665 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-20 02:23:37 +00:00
Spoike bacf9e90ba try to fix a crash or two.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4664 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-19 01:44:05 +00:00
Spoike 6e9f1eb0c6 add/fix some more extension.qc comments.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4663 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-19 00:09:56 +00:00
Spoike c0f8c28e2c fix some crashes and other annoying issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4659 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-16 17:45:37 +00:00
Spoike 4c3cb29108 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4658 fc73d0e0-1445-4013-8a0c-d673dee63da5 2014-05-16 01:48:12 +00:00
Spoike d7f83cbdc7 moving q2 temporary entities to particle configs.
fix 'bind alt_k' result.
don't generate a luma from 8bit if there's a custom diffuse image.
add support for #append.
#includelist now supports macro expansion.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4657 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-16 01:34:58 +00:00
Spoike e693c6956b hopefully that won't break anything too much...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4656 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-14 01:08:36 +00:00
Spoike 3711f71bdc add getsoundtime builtin to csqc. needs testing.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4655 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-13 23:21:20 +00:00
Spoike 6cc33d7d08 try to be more verbose with null functions called from the engine.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4652 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-10 16:37:53 +00:00
Spoike 589b09ae1d added cl_sendguid cvar, defaulting to 0. this disables the guid feature by default.
reworked a few q2 particle effects. q2 should feel a bit better now. by no means complete.
ssqcless csqc should have time progressing.
q3ui+console should be a bit less stupid.
stripped old huffman code. copied over from ioquake3. should help avoid bugs in that shit.
system mouse cursor should now always be hidden when running windowed. soft-cursor only.
added bindlist.lst feature.
particle system can now support weighted/randomized sounds. model command now more verbose, and supports renderflags.
renamed debugger cvar to pr_debugger, in the hopes that it'll be easier to find. also added to menu a little more visibly in a politically-motivated move.
fix q2+viewsize 30
'high' particles now have scrag+hknight impact effects. perhaps I overdid the scrag one.
fixed q2 player icons on the scoreboard.
added q3bsp_surf_meshcollision_* cvars.
dedicated servers now use the same bsp etc loading code as clients. the dedicated-server-only stuff is no longer needed, which is a good thing because it seemed a little buggy last time I tried.
split vertex+fragment shader compilation, for systems that secretly thread that.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4651 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-10 13:42:13 +00:00
Spoike d8704bb5e0 try to catch exceptions in threads too, not just the main thread.
fix default settings to correctly use ` instead of ~ for toggleconsole.
fix a couple of possible signed-where-unsigned-expected with quake2.
fix possible q3 crash.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4649 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-04 04:14:52 +00:00
Spoike 952670bb3a Fix a few bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4648 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-29 02:29:04 +00:00
Spoike c0841c73ab add net_compress cvar to enable/disable the compression feature. off by default for now.
auto-precache sounds if they were not already precached. also prints a warning (once, obviously). this is for consistency with models
added cmd voicetarg specself, which will send voice only to the people spectating you (and not your team), including into demos.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4647 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-27 23:16:07 +00:00
Spoike dd8628eb2a tweak particle system a little for more compat.
added a couple extra effects to r_particledesc high
try and solve the trailparticles madness once and for all by autodetecting which set of arguments is used.
fix some annoyances with menuqc.
rebuild fs cache when doing vid_restart, to avoid insane reload times.
add profiling support.
qcc: be more permissive with {a,b,} in array definitions.
tweaked logfrag builtin to not loose frags quite so easily. should be more robust now. Whether tools agree or not is a different matter... but there's always the possibility that it'll just work.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4644 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-24 01:53:01 +00:00
Spoike 8b9ad6a48e fixed menu bug
added some extra quake particle effects to the 'high' set, including some lights. I wonder how many people will complain.
tried to fix up coronas a bit to make them more robust.
fix stepping issue at high framerates.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4639 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-13 04:23:13 +00:00
Spoike faeb62f4ee misc hexen2 compat fixes. added/improved most missing particle effects in some form.
hopefully this won't break quake too much.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4638 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-12 03:31:59 +00:00
Spoike 2e98386da2 Added pm_watersinkspeed cvar.
Misc bugfixes, mostly hexen2-related. tibet5 bug is finally fixed.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4635 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-06 15:16:39 +00:00
Spoike 7ece1c70cb Fix misc bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4631 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-03 02:16:21 +00:00
Spoike f18c928973 Add gl_lightmap_nearest.
Add a warning if the world moves.
Fix tags to not loop on non-looping animations.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4630 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-02 00:58:02 +00:00
Spoike e75cbadc11 fix iqm models.
rename some things.
don't reload filesystem(twice) when quitting.
add savegame_legacy command for saved games that can be loaded in vanilla engines.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4628 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-03-31 17:06:41 +00:00
Spoike cef708e7af msvc ignores this. gcc doesn't. bah.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4626 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-03-30 11:52:09 +00:00