Commit graph

4282 commits

Author SHA1 Message Date
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
6cd5a6a076 for dedicated servers.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4870 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-05-03 20:31:30 +00:00
Spoike
5ba3ed97ee messy. very messy.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4869 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-05-03 20:15:32 +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
5ecd9cc5dd git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4867 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-04-27 12:55:48 +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
ad641efab3 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4863 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-04-22 00:27:59 +00:00
Spoike
18e0176f70 not my day.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4862 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-21 23:22:34 +00:00
Spoike
4a582f949a git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4861 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-04-21 23:11:26 +00:00
Spoike
e444af899f git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4860 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-04-21 21:56:50 +00:00
Spoike
1d72e710fa blurgh
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4859 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-21 21:49:08 +00:00
Spoike
edbe154e19 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4858 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-04-21 21:15:01 +00:00
Spoike
7139478ae1 fix compile error.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4857 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-21 20:51:18 +00:00
Spoike
f60069e8e8 fix some csqc.
give up with glsl+bones+emscripten. emscripten just prevents it from being viable.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4856 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-21 20:43:01 +00:00
Spoike
21d6185e26 fix skeletal models in webgl by emulating mat3x4. also fixes lighting issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4855 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-21 20:08:55 +00:00
Spoike
10e91c5771 fix deltalisten bug found by shpuld, and possible entity number overflow bug.
also make csqc_ent_remove even more optional.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4854 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-21 20:06:27 +00:00
Spoike
afe18bec95 fix pointer lock.
r_nolerp should affect skeletal framegroups too.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4853 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-21 14:58:29 +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
18de6445ba rewrote huge chunks of qcc code to track which symbols were used where.
this makes inlining more efficient, and allows stripping irrelevant defs.
(there may still be things broken due to this)
gui version behaves a little better now, and saves debug+optimisation etc settings on a per-mod basis, instead of using the windows registry to store which engine+path+args to run.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4850 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-14 12:24:05 +00:00
Spoike
178a0117ff try to fix an omitted function that can apparently result in crashes where libpng is dynamically linked.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4849 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-03-20 12:53:43 +00:00
Spoike
e1269ddd35 much needed lerp fix.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4847 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-03-12 14:59:53 +00:00
Spoike
d2c6bb1c6e fix omc's lock-up bug.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4846 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-03-08 12:11:02 +00:00
Spoike
8dc525e53f fix brushlist clipping issue with submodels.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4845 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-03-06 03:20:59 +00:00
Spoike
1ba434bb17 finally implement stat_matchstarttime iiuc.
add a new gimmick. there's a cvar to enable it.
fix up rbe plugins to be usable in dedicated servers.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4844 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-03-05 22:14:21 +00:00
Spoike
086841f1b8 fix 64bit inconsistent types bug.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4843 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-03-03 07:55:49 +00:00
Spoike
f13a87f021 Added EF_BRIGHTFIELD to classic particles.
fix r_softwarebanding
fix r_waterstyle

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4842 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-03-03 07:54:10 +00:00
Spoike
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
8d81ed4a49 missed a spot.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4839 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-08 01:02:27 +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
052cba731d prevent generation of statements outside functions (inlining to constants is okay).
insert .qc files into tree view in .src order instead of alphabetically. make sure extra .src files appear at the root.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4837 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-07 18:07:30 +00:00
Spoike
8cb0834782 hopefully fix crash-on-shutdown of the ODE plugin. Make sure there's no active contexts before the ode dll is unloaded.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4836 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-06 04:24:25 +00:00
Spoike
23971df104 fix some other issues that exhibited themselves in aqueous.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4835 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-03 09:44:27 +00:00
Spoike
670a5d5992 fix particles spawned from csqc issue.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4834 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-02 20:18:14 +00:00
Spoike
13c2261c60 oops. msvc didn't care
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4833 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-02 08:09:10 +00:00
Spoike
911f98ffaa fix demo menu with system paths.
tweak some dp compatibility things. probably futile.
moved ode to a plugin.
added screenshot_mega command to take massive screenshots that are not tied to current video mode.
removed offscreen-gecko code completely.
added cvars to rescale offsetmapping from paletted sources, so it can be disabled where its ugly.
added support for zip weak encryption. the password defaults to 'thisispublic'. nothing is fool-proof.
gl: fix stereoscopic rendering.
gl: fix rendertargets with depth.
qc: added support for named builtins that do not have any specific number.
qc: added some new builtins. drawrotpic, drawtextfield, search_getfilemtime, and a few others.
qc: PF_Fixme now attempts to figure out which builtin you tried to call, for more friendly fatal error messages.
qccgui: stepover and stepout are now implemented, as is setnextstatement.
qccgui: added a way to annotate code with the asm statements generated from them.
qccgui: fixed double-clicking a src file.
qccgui: handles multiple .src files more usefully.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4832 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-02 08:01:53 +00:00
Spoike
d90095f511 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4831 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-01-21 22:02:20 +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
172532ba6d fix autoupdate. hopefully for the last time...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4827 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-09 08:24:58 +00:00
Spoike
7431c398d8 hack for skies and spectating from above.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4826 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-09 06:32:48 +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
8c553a5aa7 windows headers can be annoying.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4824 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-07 14:10:05 +00:00
Spoike
16868f1604 small fix
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4823 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-07 13:56:16 +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
fa850a988e small fix
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4821 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-07 13:47:35 +00:00
Spoike
a377ebff76 some fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4820 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-07 13:44:55 +00:00