Commit Graph

431 Commits

Author SHA1 Message Date
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 2e1a70e319 rewrote ban code, merging bans+nonbans+cuffs+mute+cripple+deaf+lagged+vip. added timeouts. new penalties have no dedicated command. use the addip command for it.
maplist command now generates links.
implemented skin objects for q3. added a csqc builtin for it. also supports compositing skins.
playing demos inside zips/pk3s/paks should now work.
bumped default rate cvar.
added cl_transfer to attempt to connect to a new server without disconnecting first.
rewrote fog command. alpha and mindist arguments are now supported. fog change also happens over a short time period.
added new args to the showpic console command. can now create clickable items for touchscreen/absmouse users.
fixed menus to properly support right-aligned text. this finally fixes variable-width fonts.
rewrote console tab completion suggestions display. now clickable links.
strings obtained from qc are now marked as const. this has required quite a few added consts all over the place.
probably crappy attempt at adding joypad support to the sdl port. no idea if it works.
changed key bind event code. buttons now track which event they should trigger when released, instead of being the same one the whole time. this allows +forward etc clickable buttons on screen. Also simplified modifier keys - they no longer trigger random events when pressing the modifier key itself.
Right modifiers can now be bound separately from left modifiers. Right will use left's binding if not otherwise bound. Bind assumes left if there's no prefix.
multiplayer->setup->network menu no longer crashes. added rgb colours to the translation view (but not to the colour-changing keys).
added modelviewer command to view models.
added menu_mods menu to switch mods in a more friendly way. will be shown by default if multiple manifests exist in the binarydir.
clamped classic tracer density. scrag particles no longer look quite so buggy.
added ifdefs to facilitate a potential winrt port. the engine should now have no extra dependencies, but still needs system code+audio drivers to be written.
if it can't set a renderer, it'll now try to use *every* renderer until it finds one that works.
added experimental mapcluster server mode (that console command). New maps will be started up as required.
rewrote skeletal blending code a bit.
added cylinder geomtypes.
fix cfg_save writing to the wrong path bug.
VFS_CLOSE now returns a boolean. false means there was some sort of fatal error (either crc when reading was bad, or the write got corrupted or something). Typically ignorable, depends how robust you want to be.
win32 tls code now supports running as a server. added connect tls://address support, as well as equivalent sv_addport support.
exposed basic model loading api to plugins.
d3d11 backend now optionally supports tessellation hlsl. no suitable hlsl provided by default. !!tess to enable.
attempted to add gamma ramp support for d3d11.
added support for shader blobs to speed up load times. r_shaderblobs 1 to enable. almost vital for d3d11.
added vid_srgb cvar.
shadowless lights are no longer disabled if shadows are not supported.
attempt to add support for touchscreens in win7/8.
Wrote gimmicky lua support, using lua instead of ssqc. define VM_LUA to enable.
updated saved game code. can again load saved games from vanilla-like engines.
changed scale clamping. 0.0001 should no longer appear as 1.
changed default mintic from 0.03 to 0.013 to match vanilla qw. I don't know why it was at 0.03. probably a typo.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4623 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-03-30 08:55:06 +00:00
Spoike 1bb752b582 sdl2 support.
hacky rendertarget stuff. not polished. don't use except for testing. feedback desired.
switched file system to use a qofs_t type instead. define FS_64BIT to make it 64bit (standard on 64bit cpus).
rewrote zip support, ditching unzip.c. this provided zip64 support, and unicode in zips.
changed local address enumeration to not be so stupid.
updated ode support a little to match some dp features.
changed fs_cache scheme, to not rebuild needlessly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4596 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-02-07 08:38:40 +00:00
Spoike 38a9770253 add support for symlinks in zips.
try to fix normalmaps on q3bsps. could do with verification, but at least I'm not the only one with a bug if its still buggy.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4578 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-01-13 02:42:25 +00:00
Spoike bfe545222e added con_textsize to resize console separately from everything else.
qcc: added support for variable arguments via the va_arg intrinsic.
qcc: fix up some comment/whitespace issues with the preprocessor.
random hacks to try to improve dp compatibility a little.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4573 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-12-29 22:48:28 +00:00
Spoike e2081b565f webquake-compatible websocket support. yuck.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4563 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-12-09 01:18:27 +00:00
Spoike f438694f28 msvc sucks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4553 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-12-02 14:33:22 +00:00
Spoike 218006198d fix q2 bsp texture animations.
fix q2 prediction.
fix q2 saved games issues.
fix q2bsp fullbright/fullwhite lights.
fix potential issues from svs.clients no longer being preallocated.
fix rtlights not doing q1 bsp texture animations.
misc crash fixes.
hack to allow a clickable hud when using a touchscreen.
gl_max_size no longer affects 2d images.
select faithful fps preset option by default.
gl_font a,b,c works to select fallback fonts. freetype fonts reused to reduce memory usage when the same font is used multiple times either with different sizes or as fallbacks as part of other fonts.
allow static member functions. allow static locals.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4552 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-12-02 14:30:30 +00:00
Spoike 87564c9d79 stripped out my ancient form of in-engine translation. Implemented gettext style translation instead. Automatically determine language from environment settings.
try to imitate cyrillic chars if the charset doesn't support them using koi8 mappings, so russian-speaking users don't get so easily pissed about not knowing how to select a font that actually contains chars for their language.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4544 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-11-29 14:36:47 +00:00
Spoike ad8d634916 misc tweaks to support:
opening (qtv) urls with android browser. mvds should stream using the same mechanism, if they have the right mime type.
arbitrary unicode basedirs in windows should work, and commandlines. not sure what else still doesn't work.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4539 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-11-28 00:45:22 +00:00
Spoike f08489f141 .po support for qc.
rewrote messagemode to support utf8 properly, as well as left-arrow etc keys.
support for mouse-over images on console links and stuff.
added r_lerpmuzzlehack for certain viewmodels.
use libtool's dlopen stuff on cygwin to try to cover some cygwin path differences.
try to support utf-8 in filenames even in windows (only in nt, 9x is still ascii only).
added certificate validation for gnutls. gnutls now enabled by default in linux.
d3d11 tweaks. shadowmapping works.
tweaks for updated terrain format, to try to fix some inefficiencies/limitations.
xmpp plugin can now display avatars (xmpp /set avatars 1)
xmpp file transfers supported by default, but capability is disabled by default (can be enabled by hacking config).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4523 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-11-21 23:02:28 +00:00
Spoike 365e104f88 a couple of fixes for things that didn't compile.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4515 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-10-29 17:58:20 +00:00
Spoike fb86222fc7 made max_clients more dynamic on the server to attempt to reduce bss usage. hopefully this will help the webgl port without resulting in extra crashes.
tweaked shadowmaps. now seems faster than stencil shadows. cubemap orientation should now match other engines.
tweaked terrain. rtlights work. added pvs tests for embedded terrain. sections are now saved in chunks instead, which should mean windows doesn't have a panic attack at 16 million files in a single directory. hurrah.
first pass at realigning menu options to cope with variable-width fonts. still need to do pure-text items.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4514 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-10-29 17:38:22 +00:00
Spoike d396450a0a log file defaults changed to be more readable. timestamps now included by default. also fixed a bug in the location the log is written.
fixed numerous shadowmapping bugs. actually seems to work now. appears to draw more lights than is actually needed, however.
changed how keyboard focus works. can now have menu+console open at once, although you probably need shift+escape to get at it.
fixed a few issues with nexuiz compat. there are *still* other issues.
greatly refactored cd playback code. cd driver code is now a backend only and does not provide its own commands. track remapping accepts named faketracks. worked around missing notifications in vista+, so looping will now work.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4491 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-10-08 14:28:11 +00:00
Spoike 4cd41b9e49 just in case
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4476 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-09-12 06:55:52 +00:00
Spoike 28c910fd84 don't use chunked downloads with ezquake. its just too buggy.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4474 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-09-09 01:16:03 +00:00
Spoike 763cef2441 added mic input device option.
reworked prediction code, now more generic.
added cl_lerp_smooth, cl_predict_extrapolate, cl_predict_timenudge cvars to allow tweaking player prediction/smoothness in a few different ways. cl_lerp_smooth's default changed to not smooth out live games in order to avoid unnecessary lag (was effectively set to 1, and would be 0 in vanilla).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4471 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-09-06 22:57:44 +00:00
Spoike e0aab1c134 try to fix shader vertex lighting issue.
fix issue where ftenq protocol positions were sticking.
fixed manifest file windowless infinite wait.
Added support for ^[\img\foo^] images on the console if they are at the start of the line.
Console objects may now be drawn by csqc. Key input is blocked for now, lest csqc get access to things its not allowed to access. Will add provisions later.
fixed sound menu crash.
added ultrawide speex codec.
clamp micamp levels to try to boost audio quality/audiability.
rtp control plugins are now allowed to use opus, speex support is correctly queried instead of assumed.
WriteFloat now works properly, and not just for ents.
no longer sending prespawn/precaches/signon commands to clients that do not expect them.
fix sql column header queries.
more verbose about active nq protocol verions.
-condebug overrides config.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4461 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-08-21 07:14:39 +00:00
Spoike 3b51dae2c9 misc fixes/tweaks/stuff intended to get the emscripten port working better.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4456 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-08-07 14:20:24 +00:00
Spoike c1fde0e079 fix join/observe not updating spectator userinfo properly in mvds. fix a couple of other recent mvd bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4422 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-07-14 16:39:21 +00:00
Spoike 4a1416a5d2 removed hunk memory (as well as -mem argument).
removed cache memory.
added fallback normalmap texture.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4421 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-07-14 12:22:51 +00:00
Spoike b2f5ae8f1c removed userinfobasic, things should be kept in sync more easily now.
xmpp got some major tweaks. more sasl methods etc. multiple accounts.
misc other tweaks.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4418 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-07-13 12:14:32 +00:00
Spoike 0823eb0968 xmpp NAT holepunching (ICE) is now implemented. it doesn't know how to do relays.
xmpp voip support (speex only). just because.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4413 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-29 16:01:07 +00:00
Spoike cebd0583a9 allow_luma is no more.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4407 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-26 03:36:02 +00:00
Spoike fa9252cefa splitscreen cleaned up more.
demo menu can now leave quake dir.
scissor+line rendering abstracted from csqc.
added a rain particle effect to the 'high' particle set.
added support for parsing ezquake's koi stuff. Still only generates utf-8.
implemented some string-buffer builtins from dp that have been stubs for quite some time.
http code now supports/uses gzipped downloads properly.
added support for non-blocking tcp connects.
#pragma optimize makes more sense with the gui version now.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4397 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-23 02:17:02 +00:00
Spoike b076b8e7de Don't crash from q3 bots.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4365 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-05-14 12:56:26 +00:00
Spoike ffc2a08589 pass network addresses around as a pointer rather than as a struct. They've grown quite a bit from vanilla code and can now be quite large. this should give more efficient network filtering+matching.
Added version+time+date to segfault lots.
try to use vbo+vao as needed.
added a manifest file in order to disable uac emulation and its virtual store lies.
particles now support a sort of namespace. eg: an effect called "cfg.effect" will load up the 'cfg' particle config and use its 'effect' effect (but not replace any explicit effects). You can still create particle effects called 'cfg.effect' with no issue.
Added support for fsarchive plugins.
Added a sys_register_file_associations command. .bsp not yet handled, but demo playback should work fine.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4324 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-05-03 04:28:08 +00:00
Spoike 577419de37 improve handling of writing to world entity.
split left and right alt. binds+gamecode still use left-alt exclusively. alt-for-red-chars only works with left alt. right alt is alt-gr, so text input now works fine.
fixed support for keypad and text entry.
sdl2 clipboard support, if we're compiled with sdl2.
fixed issues with sdl sound. shouldn't be so terrible now.
soundinfo command now more verbose.
support for interpolated ramps.
removed input line length limitations, although some limitations still remain.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4315 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-04-13 08:15:18 +00:00
Spoike 6a831e2f99 qwsvdef.h is no more. Many files changed because of this.
enabled ssl support in windows for plugins.
updated jabber plugin.
tweaked downloading logic in an effort to end the madness.
Updated sql code to support sleeping the qc thread until query completion, as a more readable alternative to callbacks.
Client updates should be more explicit now, removing a potential bug.
networked terrain editing should now be in a better state.
updated the dir command to show paths too (so when the same file is listed twice, the pak its in will at least be different). Many files changed because of this.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4273 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-31 04:21:08 +00:00
Spoike c1a80e5ba8 ------------------------------------------------------------------------
r4256 | acceptthis | 2013-03-12 21:07:07 +0000 (Tue, 12 Mar 2013) | 5 lines

Don't mess up/crash when the snap command is used (in multiple ways).
Misc NQ+csqc compat tweaks/hacks/fixes.
Added pointsound.
Don't rely upon fragmentation support with downloads. its a bad idea.
Fixed up the text editor to be able to debug properly again.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4252 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 23:24:15 +00:00
Spoike 2e009e1d26 ------------------------------------------------------------------------
r4227 | acceptthis | 2013-02-26 16:29:38 +0000 (Tue, 26 Feb 2013) | 2 lines

numerous small fixes and tweaks for the nacl+npfte ports.
support for q3bsp tangent-space deluxemaps.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4223 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 23:09:25 +00:00
Spoike 165a9006c7 ------------------------------------------------------------------------
r4206 | acceptthis | 2013-02-16 20:31:17 +0000 (Sat, 16 Feb 2013) | 1 line

Misc fixes.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4204 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:57:40 +00:00
Spoike a77bd67602 ------------------------------------------------------------------------
r4196 | acceptthis | 2013-02-12 19:06:07 +0000 (Tue, 12 Feb 2013) | 9 lines

split in/out client frames, so that we can cope with separate packet/movement sequences for nq+prediction.
Make default ports a little more explicit.
interpolate input frames. should make things smoother when the input rate does not match video rate.
fix centering of crosshairs
make sure skins are flushed properly on vid_restart, so 24bit skins don't get messed up.
keep sounds ticking even when inaudible.
qc addressable block now has a max of 2gb.
.__variant works as a function argument.
NQ clients now receive player physics consistant with QuakeWorld.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4194 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:53:23 +00:00
Spoike 0ecf71adaf ------------------------------------------------------------------------
r4189 | acceptthis | 2013-02-05 12:54:29 +0000 (Tue, 05 Feb 2013) | 1 line

clipboard, icon, fullscreen support for glx. Numerous fixes for compile-time warnings.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4187 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:47:42 +00:00
Spoike 630af9dc7c ------------------------------------------------------------------------
r4187 | acceptthis | 2013-02-04 04:52:32 +0000 (Mon, 04 Feb 2013) | 9 lines

fix particle effect index insanity.
.modelflags support.
fix laggy mvds issue.
replacementdeltas works in mvds.
fix issues with not knowing which mvd is currently being recorded.
input line now permanently functions as utf-8.
cope with double-chevron links in the input line.
Add support for ^{xxxx}, but don't generate it. can only cope with 16bit anyway.
fix skins issues.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4185 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:44:00 +00:00
Spoike a339c727d0 ------------------------------------------------------------------------
r4175 | acceptthis | 2013-01-26 18:23:37 +0000 (Sat, 26 Jan 2013) | 8 lines

improved replacementdeltas+nq a little, still needs work.
embrace the menuqc! pr_dumpplatform now includes MENU defs+builtins.
swapped search ordering of paks+dirs, so progs.dat will be used instead of pak0.pak/progs.dat.
fteqcc slightly more sensible with if statements and void+vector types.
fteqcc shows the first line where models are precached/used instead of showing no line at all.
fix missing explosions when running qw gamecode.
accept channels between 8 and 255. 
support for sending fitzquake's increased stat limits.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4173 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:35:33 +00:00
Spoike 8d5b217266 ------------------------------------------------------------------------
r4169 | acceptthis | 2013-01-17 08:55:12 +0000 (Thu, 17 Jan 2013) | 31 lines

removed MAX_VISEDICTS limit.
PEXT2_REPLACEMENTDELTAS tweaked, now has 4 million entity limit. still not enabled by default.
TE_BEAM now maps to a separate TEQW_BEAM to avoid conflicts with QW.
added android multitouch emulation for windows/rawinput (in_simulatemultitouch).
split topcolor/bottomcolor from scoreboard, for dp's colormap|1024 feature.
now using utf-8 for windows consoles.
qcc warnings/errors now give clickable console links for quick+easy editing.
disabled menutint when the currently active item changes contrast or gamma (for OneManClan).
Added support for drawfont/drawfontscale.
tweaked the qcvm a little to reduce the number of pointers.
.doll file loading. still experimental and will likely crash. requires csqc active, even if its a dummy progs. this will be fixed in time. Still other things that need cleaning up.
windows: gl_font "?" shows the standard windows font-selection dialog, and can be used to select windows fonts. not all work. and you probably don't want to use windings.
fixed splitscreen support when playing mvds. added mini-scoreboards to splitscreen. 
editor/debugger now shows asm if there's no linenumber info. also, pressing f1 for help shows the shortcuts.
Added support for .framegroups files for psk(psa) and iqm formats.
True support for ezquake's colour codes. Mutually exclusive with background colours.
path command output slightly more readable.
added support for digest_hex (MD4, SHA1, CRC16).
skingroups now colourmap correctly.
Fix terrain colour hints, and litdata from the wrong bsp.
fix ftp dual-homed issue. support epsv command, and enable ipv6 (eprt still not supported).
remove d3d11 compilation from the makefile. the required headers are not provided by mingw, and are not available to the build bot, so don't bother.
fix v *= v.x and similar opcodes.
fteqcc: fixed support for áéíóú type chars in names. utf-8 files now properly supported (even with the utf-8 bom/identifier). utf-16 also supported.
fteqcc: fixed '#if 1 == 3 && 4' parsing.
fteqcc: -Werror acts on the warning, rather than as a separate error. Line numbers are thus more readable.
fteqcc: copyright message now includes compile date instead.
fteqccgui: the treeview control is now coloured depending on whether there were warnings/errors in the last compile.
fteqccgui: the output window is now focused and scrolls down as compilation progresses.
pr_dumpplatform command dumps out some pragmas to convert more serious warnings to errors. This is to avoid the infamous 'fteqcc sucks cos my code sucks' issue.
rewrote prespawn/modelist/soundlist code. server tracks progress now.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4167 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:29:40 +00:00
Spoike 4519fe7035 ------------------------------------------------------------------------
r4166 | acceptthis | 2012-12-22 07:03:26 +0000 (Sat, 22 Dec 2012) | 1 line

Should fix 3 bugs in the server. One crash, one that breaks server browsers, and one minor.
------------------------------------------------------------------------


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

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

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4152 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-11-27 03:23:19 +00:00
Spoike 5d9ba4b548 Added console-links support.
Shift click IPs/words/links on the console to enter them as arguments.
Fixed some utf-8 issues.
Fixed issue with csaddon.dat not loading in release builds.
Fixed berkelium inputs, should have a full range of keys now, though there's still no 'back' support.
Bad name rejection made more paranoid.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4124 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-10-13 00:56:31 +00:00
Spoike b937bb8161 server now claims to be proquake-compatible, so will use 16bit angles for proquake and its nq clones.
fixed an angle size issue with fitzquake. this was not an issue when only the rmq protocol was used as the server forced all angles to 16bit anyway, but does matter if the server is using the same basic protocol without angle extensions.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4108 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-10-01 14:29:44 +00:00
Spoike c6c3d3f4e0 Trimmed some dead files.
Quick hack preliminary d3d11 renderer. I'm not likely to touch this again for quite some time.
Sys_Error works properly on android, with an error message shown. Should be less of a stab in the dark if you get errors. Seg faults are still instantly fatal. Not much I can reliably do about those - most of the juicy ones will likely occur within the gl drivers (even if its my fault) and java will still call in to it.
Stereoscopic (quad-buffered) rendering is in the gl renderer. You'll likely need a quatro to use it despite it being a gl 1.0 feature. No idea about ati. See r_stereo_method for non-quad-buffered alternatives.
Tweaked networking to not overflow so much. Needs testing against other qw clients.
Fixed an issue with surface numbers > 32k on limit-breaking maps.
Fixed a preparse issue resulting in QW clients dying with the ne_ruins map's progs.
Support for the DP-variant of BSP2. The depricated RMQ variant is still supported.
QTV proxy now uses ipv6 hybrid sockets where possible. Preliminary pext support.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4105 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-09-30 05:52:03 +00:00
Spoike f58b9802b8 misc fixes, mostly for q3bsp+no pvs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4062 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-07-07 05:17:43 +00:00
Spoike fe23d72d69 Android tweeks
memory freeing tweeks
batch data rearranged a little (to try to reduce memory).
RBSP/FBSP fixed. lightstyles now supported.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4059 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-07-05 19:42:36 +00:00
Spoike 4db8b46c4b implement ripplemaps. currently requires explicit mod support to use properly.
fix hexen2 conchars
fix audio sample mixups
fix recent beam-related crashes.
added orthographic bsp culling routines.
fix crash on vid_restart.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4050 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-05-14 01:41:08 +00:00
Spoike 1dcc435bca added args to the bloom shader for better tweekage.
Committing my lame water shader. r_water_refract/r_water_reflect 1 to use.
Bugfix for crepuscular arrays (r_sun_colour to easily enable).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4047 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-05-11 01:57:00 +00:00
Spoike 48d03aff82 mingl fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4044 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-05-10 19:14:25 +00:00
Spoike 33a540806e Small tweeks, bugfixes, breakages, cleanups...
Added $reflection texture map for (water) shaders. Just renders the screen to an fbo before rendering the surface.
hub/savegame fixes.


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

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4031 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-04-24 07:59:11 +00:00
Spoike 82542ae037 Committing this before I break it any more.
Massive terrain system rewrite.
Added a Native Client port (sound is stereo 44khz only, rendering is gles2, networking is websockets only (sv_port_tcp supports acting as a qw websockets server with non-nacl servers, filesystem is downloads-only - no saves/configs). Blame Zalon. Grr.

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

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

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

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3979 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-02-12 05:18:31 +00:00
Spoike 4496bb6ea0 Removed limit on strcat builtin's length.
Fixed issues with DP7 protocol.
Fixed .fatness.

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

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

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3957 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-17 07:57:46 +00:00
Spoike 1693ba6c58 revamped fog to use glsl. shouldn't harm framerate quite so much.
tweeked d3d renderer. certain shader constructs might be broken now so don't try q3 with it, but framerates are up when playing quake.
tweeked gl rendering too, timedemo results seem a little higher also.

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

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3926 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-12-05 15:23:40 +00:00
Spoike b91b32cd38 Just breaking stuff, trying to get axfte stuff working.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3916 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-10-29 19:01:33 +00:00
Spoike f33873ddb7 committing for fixes for OMC
some minor changes. Mostly bug fixes and internal reorganisation.
Added code to provide an activex control as part of the npfte.dll plugin. If the dll is registered the regsvr32 way, the plugin can be used with IE as well.
fisheye/panoramic view enable is now controlled by rulesets instead of serverinfo.
server will list all pak files it has loaded. client will probably do the wrong thing and still needs fixing properly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3910 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-10-27 16:16:29 +00:00
Spoike 788cce8b36 Added new cvar: sv_fullredirect.
This cvar will cause connecting clients to instead connect to the ip:port specified in the cvar whenever the server is full. Must be a full globally-routable ip and port.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3899 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-09-06 20:53:38 +00:00
Spoike 5a7f34bd50 Couple of tweeks, breakages, and fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3898 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-09-05 01:48:23 +00:00
Spoike e8c1f669cc Couple of changes.
D3D now supports hlsl shaders. Much functionality is still missing, but sky and water surfaces are in.
IQM models now supported.
Engine physics code is now potentially callable from csqc, but there are some issues which need to be resolved before its enabled.
FTEQCC has had some pointer/struct/array functionality improved. Complex trees can now be navigated properly.
added r_dumpshaders command to dump internal glsl scripts for editing.

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

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3893 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-08-16 04:12:15 +00:00
Spoike 729d6181c2 Misc bugfixes, including q3bsp-rtlights and bloom. Matrix use clarifications. Working towards skeletal glsl code.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3890 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-30 14:14:56 +00:00
Lance eadc1d9a1e Got rid of master servers that don't exist anymore (client server browser, big speed up), added existing master servers that previously weren't being sent heartbeats
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3863 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-09 09:14:05 +00:00
Lance b92571839e Updated the master servers the client server browser uses (Q1, Q2 & Q3), and also updated the master server list the server reports heartbeats to (Q1).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3862 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-09 06:32:29 +00:00
Spoike 6dd9bab565 Apparently it wasn't heartbeating by default, due to apparently-stale dns cache.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3858 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-08 19:07:05 +00:00
Spoike 174ba9f64b Trying to fix lingering d3d bugs. Added support for proquake's angles extension. Various other hacks and changes and tweeks. Mostly trying to fix D3D issues. Also added con_separatechat cvar.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3818 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-16 02:03:57 +00:00
Spoike 4264bb8d48 boost the default maxdrate, for slightly faster downloads.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3816 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-15 21:29:54 +00:00
Spoike 78d4632097 Added -dumpstack option to catch fatal signals for stacktrace dumping. Writes to both stderr and a crash.log in the WORKING directory. Admins are expected to email a copy or something to an FTE dev, then delete it. Clients connecting will be notified, but unable to obtain actual details via quake.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3813 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-06 01:41:33 +00:00
Spoike d039841d21 Does this fix anything?
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3812 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-05 23:53:33 +00:00
Spoike f66110b5e6 Trying to fix mvd recording/playback a little.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3811 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-05 01:36:14 +00:00
Lance afa29b36fb Wrapped #pragma comments()'s with MSVC specific macros so GCC can be read more easily. Also undeprecated edict_size in world.h.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3800 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-05-29 04:26:29 +00:00
Spoike d5ab16befc heightmap semi-functional again, but still useless.
A few bugs fixed.
Slightly better compatibility with DP.
Added breakpoint_csqc command to set breakpoints in csqc to better debug csprogs.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3793 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-05-20 04:10:46 +00:00
Spoike cea945ad5e Fix Q2 server issues (broken predition, deltaing, gamecode cvar crashes, choke info).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3773 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-04-20 03:34:32 +00:00
TimeServ e4e2399c69 change out build number/version number logic, remove some unused variables
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3757 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-03-30 15:17:55 +00:00
TimeServ cdb6dccb97 remove bulleten support, rename vidgles -> videgl
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3756 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-03-24 14:35:24 +00:00
Spoike 9b6ea1c114 Fix for recent timing issues, hopefully.
Fixed a couple of warnings.
Added voip options to menus.
GL+D3D merged builds compile, but d3d is probably broken still.
Added vid_gl_context_es2 cvar to attempt to init a gles context. Note that you also need to set the requested gl version correctly.
Changed qtv's webpage view slightly, for slightly updated npfte usage.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3714 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-01-04 02:56:16 +00:00
Spoike f0a1318c2b Misc attempts at fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3708 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-23 03:55:10 +00:00
Spoike 4505f7321b various small bugfixes, mvd+voip should work again, qcjit changes, towards usability.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3700 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-18 17:02:47 +00:00
Spoike ca9028ef76 Lets see if this works in loonix.. ehehe.
Added win7 recently opened links, so rightclicking pinned icons gives recent servers. Perhaps not the best implementation (lol) but yay, only a little bit of horrible COM crap.
Hacked about with the scripted particle system. Classic is now the default set, but the scripted system is still active and can be used by mods or whatever if they wish.
Interpolation changes: should feel better on non-fte QW servers now. Not sure about other server types.
Added svc_setanglesdelta.
Fixed vwep+skins.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3682 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-05 02:46:07 +00:00
Spoike 6553fbe917 Support NQ queries, and NQ max player counts slightly better.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3674 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-28 19:12:50 +00:00
Spoike 540830d955 Voice activation detection for voicechat, with a few cvars for it.
Added mic level indicator.
Able to record voice into mvds.
Fixed mvd recording.
Fixed mvd player sizes.
Fixed interpolation.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3665 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-20 22:01:16 +00:00
Spoike da09f7ba44 Me having lots of fun with voice chat.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3656 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-15 02:40:31 +00:00
Spoike 35468b7a19 git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3624 fc73d0e0-1445-4013-8a0c-d673dee63da5 2010-11-07 02:17:45 +00:00
Spoike 2937f9d861 Now understands spams setangles.
D3D is a little more complete, lighting on models appears correct.
Added rate scaling to the sound system. Not sure on the configuration yet, and its not queryable in any way. Misc sound related cleanups.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3619 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-06 23:05:29 +00:00
Spoike 789197f58f Working towards d3d+gl dual support again.
Fixed slow-rockets bug with high framerates.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3608 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-10-02 02:25:39 +00:00
Spoike 2e9336eb91 Don't let spammed centerprints/h2plaques result in disconnections.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3598 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-21 22:12:43 +00:00
Spoike e4b02f6c6c Fix the annoying server-starts-paused bug that I added with a recent commit.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3593 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-18 21:56:46 +00:00
Spoike a4ed95a376 Fixed hexen2 plaques.
Fixed hexen2 new game menu ignoring class the first time around.
Fixed hexen2 pickup glows.
Slight loading speed improvement due to testing less texture paths.

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

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

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

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3582 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-14 00:15:07 +00:00
Spoike fd16657900 Hexen2 fixes, compile fix, and splitscreen fixes although you won't see other players yet - I know why but its not an easy fix, and I don't want to break other things any more than I have to (R_ShouldDraw+external models).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3581 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-12 09:04:05 +00:00
Spoike ce07219448 Fixes, workarounds, and breakages. Hexen2 should work much better (-hexen2 says no mission pack, -portals says h2mp). Started working on splitting bigcoords per client, far too much work still to go on that. Removed gl_ztrick entirely. Enabled csprogs download by default. Added client support for fitzquake's 666 protocol, needs testing, some cleanup for dp protocols too, no server support, couldn't selectively enable it anyway. Now attempting to cache shadow meshes for explosions and stuff. Played with lightmaps a little, should potentially run a little faster on certain (intel?) cards. Tweeked npfte a little to try to avoid deadlocks and crashes. Fixed sky worldspawn parsing. Added h2mp's model format. Fixed baseline issue in q2 client, made servers generate q2 baselines. MOVETYPE_PUSH will not rotate extra if rotation is forced. Made status command show allowed client types. Changed lighting on weapons - should now be shaded.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3572 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-11 03:36:31 +00:00
Spoike 1e1084bed7 Changes merged from trunk. Also additional extensive changes. Q3 portals work.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3541 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-11 02:22:39 +00:00
Spoike e6f90bea14 Tweeks to the d3d renderer. Supports various shader features now. Other changes/fixes/breakages also.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3531 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-05-01 22:47:47 +00:00
Spoike c0680334c7 What could possibly go wrong?...
Multiple consoles can now be printed/cleared via extra con commands.
Fixed the tab-completion alignment, by adding support for \t characters.
Changing the download mechanisms. Don't try downloading an ftp:// file. It'll probably crash you for now.
Trying to fix load time issues on q3bsps with a lot of curves.
Fixed sprites.
Added warning prints/spam where the new backend is bypassed, thus marking things that still need to be fixed.
QTV proxy fixed to not sit on qw servers unless someone is actually watching. Will ping for status requests still.
QTV proxy now supports ipv6.
QTV proxy now attempts to use the fte browser plugin.
Reworked the browser plugin code, now uses threads instead of ugly hacks. This should make cooperation with other such plugins work. Fixes unresponsiveness of opera, and gives an API that can be used from any other bit of software you want, tbh (read: internet explorer/activex plugins).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3516 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-03-14 14:35:56 +00:00
Spoike 589ef03c05 FTE, now with added C support - no longer treating enums as regular ints.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3509 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-02-06 01:25:04 +00:00
Molgrum b6f1cf12da Fix compile error.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3468 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-18 21:21:56 +00:00
Spoike 25f3653d9f The lame but easy way to fix that error.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3467 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-18 20:41:30 +00:00
Spoike 1f34680832 Random hacks, ODE works in csqc.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3464 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-17 00:15:44 +00:00
Spoike 9eabcdcd56 Lots of misc changes in an attempt to reduce ODE jitter, and make it work a little better.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3456 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-15 03:20:17 +00:00
Spoike e6d1ae1a8f more cleanups: csqc now shares collision code with ssqc. Still lacks physics.
gl_rsurf.c has been split into gl specific and generic code - the d3d renderer can now draw the world.
ifdef removed the old server-side mvd playback which had been disabled all this time anyway.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3426 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-07 13:29:15 +00:00
Spoike 4c37c34c13 Fixed some stuff. Cygwin stuff compiles now, so maybe linux will too. I've not tested it though cos cygwin uses software gl rendering, and I'm impatient. Also boosted NUM_SPAWN_PARMS a little, so saved games will break.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3408 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-05 03:07:52 +00:00
Spoike a5d741c592 Ripped LordHavoc's ODE physics support. It'll probably crash and burn. 99.995% untested.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3406 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-05 01:22:27 +00:00
Spoike 66b78c0b11 Work In Progress branch.
In this version: replacement GL backend. Replacement D3D backend sharing code with GL. Lots of code reorganisation.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3401 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-04 21:16:50 +00:00
Spoike cf62594631 Well that was a stupid bug. Allocate frames for the correct client type, instead of q1.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3342 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-08-08 12:42:12 +00:00
Spoike ba368d0210 FTE isn't mvdsv. But just in case someone thinks it is...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3302 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-18 20:09:07 +00:00
Spoike 57c9515b39 Updated QVM apiFixed up some of the slowness in the sky/water warping code.
Enabled freetype in gl builds. It'll try to link dynamically. Headers are included for windows users. unix users will need the freetype2-dev package for their system, sorry. you could probably get away with editing the makefile to include the headers if that's a problem.
Fixed occasional missing skies.
Updated q1qvm api stuff version (to 13).
Cleaned up the ban code. There are no longer two separate mechanisms to ban people.

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

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

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

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3195 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-05-24 10:11:17 +00:00
Spoike 5f1a9d8cbf added cprint console command.
fixed nq client loading-screen persisting bug
fixed nq clients getting flooded by packets.
fixed nq clients not receiving any entities
removed a bit of redundant code in pmove
fteqcc: merged array function calls with real function calls, fixing return values in the process.
vid_preservegamma now defaults to off. windows sucks.
tweeked the prototype FTE_CSQC_SKELETONOBJECTS a bit. still not official nor advertised.
added a little bit more functionality to halflife support
csqc got some pmove tweeks. this is how I want it to work. nothing has been changed that is really incompatible with darkplaces in this commit.
added markers around some ext_csqc_1 features.

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

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3148 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-01 22:03:56 +00:00
Spoike b763b5594d My monthly commit. I wonder what I broke.
Contains some stuff to get twig working a little better.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3132 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-03-03 01:52:30 +00:00
Spoike d18566f4e8 My god. I suck. I really do. I really really apologise. Sorry. Really really sorry. GAH!
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3125 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-02-21 22:27:51 +00:00
Spoike 3b402813d8 Don't resolve master servers at startup. This stops huge stalls when you don't have complete internet access (lan games/single player).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3123 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-02-08 19:05:28 +00:00
Spoike e4c9d744a8 Why do I still have commit access?
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3073 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-11-30 05:31:16 +00:00
Spoike bf53bd5577 more stuff broken
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3072 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-11-29 16:15:04 +00:00
Spoike 6fb100e8b5 more stuff broken
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3071 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-11-28 20:34:51 +00:00
Mark Olsen 71ade84614 Empty enums are boring.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3066 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-11-14 20:32:28 +00:00
Spoike dce284811e Minor update...
Q3 clients can connect to q1 gamecode (sv_listen_q3).
hacked support for SendFlags. It'll work compatibly, just not efficiently.
Unified shared qc builtins.
fteqcc supports int |= float, more params in macros, &~= operator.
Additional recent DP QC extensions.
Particle system abstraction. 'r_particlesystem classic' (vs null or script) will revert to truly classic particles.
Nexuiz might run again.
Network address revamp (sv_port and sv_port_ipv6 can both be used to specify an ipv4 address:port and both corrently accept clients). localhost now properly favours ipv4 (use ::1 for ipv6 localhost).
Download system revamp.
Numerous other changes.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3051 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-11-09 22:29:28 +00:00
Mark Olsen 24e178bc37 Buffer overflows are bad for you, m'kay?
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3029 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-08-23 19:17:19 +00:00
Molgrum 33140dbf24 Ruleset expanded with ruleset_allow_localvolume. Set to 0 in 'nqr' and 'strict'. Made NET_AdrToString return a non-static pointer.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3002 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-06-08 14:37:57 +00:00
Spoike 0479526cfe okay, guaranteed no collisions on realip challenges.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2983 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-05-26 21:58:26 +00:00
Spoike 4afc4aa4e6 Randomized the realip challenge.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2982 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-05-26 21:51:19 +00:00
Spoike 654eabc4c2 Reworked stats for csqc to match LH's suggestion. CSQC can read the 'delta' entities (experimental). Fixed up sv_getrealip, made banning work based on realip too. Added a ban command to easily ban a single client. Renamed some svcs for clarification. Added pvsflags to ssqc for greater control over how ents are sent to csqc. Broke some stuff.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2977 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-05-25 22:23:43 +00:00
TimeServ ce5cb75832 this commit will most likely break things: main Z_*/BZ_* calls no longer have zone logic, tagged allocs redone and now partially thread safe (still Sys_Error), code using reallocs should no longer assume new memory is zeroed, minor mysql fixes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2951 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-05-09 14:22:37 +00:00
TimeServ 7f73771ba2 mysql includes and libmysql.dll loader code for win32
added preliminary FTE_SQL code (not in a usable state), current problems: 
WINDOWS ONLY, database connect is hardcoded to a local server, conditional wait needed for worker thread (currently consumes 100% cpu), query requests and results should be a queue not a stack, sql init and deinit is in the wrong place, project and defines need updating, tons more things

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2941 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-04-14 07:47:30 +00:00
TimeServ 1673ca7a7a PROTOCOL_VERSION to PROTOCOL_VERSION_QW to resolve a future header conflict
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2940 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-04-12 23:24:19 +00:00
Spoike 04bdd8d827 Fixed a minor bug that has never occurred.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2910 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-02-05 02:44:01 +00:00
Spoike bd6e6cb2b8 More meaningful name for unnamed clients
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2843 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-08 19:36:30 +00:00
Molgrum ef3c7621af Warning fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2768 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-10-29 06:46:04 +00:00
Molgrum 0f02f12b8b s/compatable/compatible (take notice that sv_compatablehulls will have a changed name too)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2717 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-10-05 18:08:47 +00:00
Molgrum 379efc8376 s/thier/their
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2716 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-10-05 17:43:26 +00:00
Spoike fb99c6f501 I suck
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2713 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-10-05 14:17:55 +00:00
Spoike f9277a9e74 Made minimal builds compile again, hopefully.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2712 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-10-05 14:11:17 +00:00
Spoike 8935096360 this looked dodgy
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2642 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-09-08 20:28:59 +00:00
Molgrum 2b3dbb3d15 Forgot some files.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2639 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-09-06 23:25:14 +00:00
Spoike 06da06f9b3 improved q1qvm support - now runs on 64bit servers with 32bit qvm
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2635 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-09-03 22:37:13 +00:00
Spoike dc3e0d5872 Added support for q1-like qvms (mvdsv style). only tested with ktx so disabled by default for now, couple of related cleanups too
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2633 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-09-02 19:55:17 +00:00
Spoike 6e211078fd Added sv_minping
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2623 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-08-30 20:45:01 +00:00
Spoike 75ea97a08f Added sv_cullplayers_trace and sv_cullentities_trace
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2621 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-08-30 18:55:44 +00:00
Molgrum f5c9311935 Added pm_pground by Tonik, just some copy/paste, hope nothing broke :P
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2590 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-08-14 17:07:40 +00:00
Molgrum 2dfb03ee03 Fixed 1000 warnings, changed switch-statements to handle all enumerations. Sorted it up abit too.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2585 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-08-07 19:16:32 +00:00
Spoike 7b4f6508b9 A few changes, I hope it makes people very happy
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2555 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-07-27 21:24:31 +00:00
Spoike dcec305bd9 Fixed Ogg support a bit. Enhanced DarkPlaces/Nuxuiz compatability. Fixed a couple other minor bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2519 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-06-20 00:02:54 +00:00
Spoike d74c6f738a Added some new bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2515 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-06-10 21:33:24 +00:00
Spoike 36f35cff78 added gl_texturemode2d
fixed an nq network message corruption bug with large reliables.
CSQC is supported on the server with the DP7 protocol
sv_listen_qw can be switched off leaving sv_listen_dp enabled in order to force DP to connect with a specific protocol. This needs to be improved, but works well enough for what it was added for.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2514 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-06-10 05:14:38 +00:00
Spoike 35c93f1f60 Some Q3 fixes some plugin improvements so qvms can actually function correctly, and a couple of minor things.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2469 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-02-23 00:21:33 +00:00
Spoike b698a1148b Should fix the slow rockets bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2449 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-12-26 18:19:35 +00:00
Spoike 83bcdc0cc7 Cleaning up some logic and coding style.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2400 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-10-05 22:10:09 +00:00
Spoike 42c43d960f mostly miscilaneous changes (some old stuff that I don't remember), lightsampling changes, qtv changes, avi sound changes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2379 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-09-17 00:59:22 +00:00
TimeServ 3b0c07281d don't expand certain cvars from insecure command calls, fix server stuffcmd command
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2326 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-06-12 22:05:41 +00:00
TimeServ a10f1f22a6 cleanup, change TE_BLOB to TE_TAREXPLOSION in particle sets, change TE_BIGEXPLOSION to TE_TEI_BIGEXPLOSION, fix centerprints/stuffcmds not being written to mvds (maybe), misc fixes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2310 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-06-02 17:42:36 +00:00
TimeServ c91b804c1e added writeip back, writes all bans and filters to listip.cfg
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2307 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-29 16:12:21 +00:00
TimeServ 4942e86843 remove floodprot and floodprotmsg commands, add sv_floodprotect_messages/sv_floodprotect_interval/sv_floodprotect_silencetime cvars to replace old functionality, needs testing
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2306 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-29 06:12:12 +00:00
TimeServ 31eaf52ce9 fix to master cvars, don't crash when worldmodel doesn't get loaded for the client, misc fixes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2296 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-25 21:32:32 +00:00
TimeServ 116faaf0c9 bug fixes to ban logic, partial ipv4 addresses work for bans, ban with reasons (ex. ban 192.168.0.0/16 "I hate people on LANs"), addip/removeip/listip can use the same format as ban (and now work for ipv6/ipx), writeip removed and will be fixed/replaced later
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2295 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-25 04:47:03 +00:00
TimeServ c19474d271 fixed sw build, fixed server banning, banip works properly and accepts the format x.x.x.x/n and x.x.x.x/x.x.x.x, added unban and banlist
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2294 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-22 22:51:14 +00:00
TimeServ 3a8ae069c4 fix a few more possible overruns
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2285 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-18 02:24:38 +00:00
TimeServ 0634baab20 r_drawflat/r_floorcolour/r_wallcolour for software, use alpha blending instead of stippling for alpha surfaces in software, misc cleanups
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2277 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-14 20:52:13 +00:00
TimeServ 244084ad32 fixes to win32 dedicated server, fix to "-port" being parsed too soon
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2276 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-13 21:11:06 +00:00
TimeServ c32061184e sv_tcpport -> sv_port_tcp, added sv_port/sv_port_ipx/sv_port_ipv6 defaulting to 27500, use 0 to disable and shutdown protocol, -port/-svport redirect to these cvars
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2256 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-09 00:02:05 +00:00