$Id: changes.txt 646 2007-07-20 18:30:42Z vvd0 $ MVDSV v0.27 revision 643 (2007.07.20) ---- * Tonik * pm_pground is functional now. It cannot be changed directly; its value is set automatically when pm_airstep changes: pm_airstep 1 enables pm_pground, pm_airstep 0 disables. * qqshka - sending objects to qtv now even no players on server, but with low fps, this allow camera fly even no players on server. - qtv_streamtimeout default to 45 now - cmd demolist show right dir size now, even if qtv connected. - Adding evil hack, allowing ppl dl with ~370kb/s, admins must set sv_downloadchunkspersecond to 5 for that, by default that 2, it mean ~150kb/s, but u require latest ezquake 1.9 from CVS for that. That all haxed chunked download from FTE. - now setinfo "drate" optional and if not present assuming it 99999, sure still with respect to sv_maxdownloadrate, so empty value gives maximum download rate server allowed. - Print warning if can't open QTV port - Added: qtv_pendingtimeout and qtv_streamtimeout variables, this variables must help drop hanged TCP-QTV connections, unfortunatelly qtv_streamtimeout work not so good, timeout detection may take some long time, we need something like PING-PONG like IRC have. - client must sent command "nextdl -1" when file download ends(via reliable channel), this way mvdsv's queue functional ok. - "nextdl" command have second optional parammeter, percent, so mvdsv show client's download percent as packet lost in +showscores. - BUGFIX: now ignore sv_demomaxsize for qtv streams, so no unexpected disconnects I hope... * VVD - MAX_SIGNON_BUFFERS was increased from 8 to 16 for support single player map shadow with skill 3 (Thanks to Parboil) - added Con_DPrintf in demo recording for debuging 'cmd dl .' command * disconnect - fix mm1 crash - add glob_match like patterns to cmdlist and cvarlsit. this and prev. commits uses ezQuake's code - cvarlist and cmdlist now return qsor`ed lists, also they print ammount of items in list - fixed broken use of "long" on amd64 MVDSV v0.26 build 2666 (2007.04.09) ---- * qqshka - added PEXT_CHUNKEDDOWNLOADS, we support only this FTE's extension, at least atm. - added framework for FTE's protocol extensions, however here no checkfteextension() or something like this. - added 'airstep' user cmd, toggle pm_airstep, blocked in ktpro. - allow pm_airstep server variable, with value 1 you can run/jump over stairs, but you loose some speed still. - changed QVM API version to 12, G_FINDRADIUS worked now and also added G_MAKEVECTORS, both actually coded by SD-Angel, also i've add G_NEXTCLIENT which is similar to G_NEXTENT but G_NEXTCLIENT just help me walk over spawned clients fast - changed QVM API version to 11 due to i've add G_CMD_TOKENIZE, g_strlcpy, g_strlcat * VVD - cvar skill have no upper limit now - returned back md4 instead mdfour - default value for sv_demofps increased from 20 to 30 - bugfix from 0.19.20-develop: pause with sv_minping > 0 cause server inaccessible - bug in ZQuake's minping ported by disconnect (Tonik, disconnect, hello :-)) - changed internal 'cmd dl -N' - download the Nth to last demo from demodir - work like before changes in 0.21 - increased maximum of fps in qwdtools from 100 to 1000 * disconnect - qtv was updated to version v1 - new cvar qtv_password - password for connecting to qtv - renamed cvars mvd_streamport and mvd_maxstreams to qtv_streamport and qtv_maxstreams - Z_EXT_JOIN_OBSERVE protocol extensions (ported from ZQuake) - remove function SV_Check_ktpro. Use qbool is_ktpro instead * Tonik - add QSG extension framework. MVDSV starts up in QSG mode unless KTPro is detected or sv_ktpro_mode is enabled - add ZQ_CLIENTCOMMAND, ZQ_PAUSE, ZQ_QC_STRINGS, DP_QC_CVAR_STRING, DP_QC_RANDOMVEC, DP_QC_TRACEBOX - Remove 'msg', useless user command - Fixes join/observe problems - NetQuake-like PM_NudgePosition() (English: don't get stuck on hip2m5) - 'sv_cheats' cvar and 'devmap' command. Cheats can now be toggled without restarting the server - added MSVC 2005 project files MVDSV v0.25 build 2500 (2006.10.25) ---- * qqshka - allow player move even chat userinfo present * VVD - optimized SV_DirSizeCheck - used every time on demo record start - small optimization in Sys_listdir (used, for example, in 'cmd dlist') - replaced last 2 dangerous strcpy with strlcpy in qwdtools * disconnect - field offsets cacheing (ported from ZQuake) - made localcommand more verbose - kqueue was disabled on NetBSD and OpenBSD because it don't work ---- MVDSV v0.21-develop build 2480 (2006.10.05) * disconnect - Ported from QW262: new command admin - spy'ing on rcon usage Can be used only by connected player. When you enable `spy mode' and somebody use rcon - you will be noticed. Use rcon admin off to disable spy mode. - ZQuake's cmodel.c instead of original sv_model.c - bugfix: banned users can use master_rcon * jhodge - new cvar sv_allowlastscores 0 - disallow connection less command lastscores 1 - allow connection less command lastscores default: 1 - bugfix from 0.1727: possibility to run master_rcon commands with normal rcon * VVD - 'cmd stopdl' now clear download queue like 'cmd dl \' - changed internal 'cmd dl ' - download the Nth to last recorded demo on this server after start - work like ktpro's 'cmd dl '; limits: 0 < N < 16 (Thanks to B1aze) - optimized detection of ktpro and added detection of ktpro versions from 1.50 to 1.57 - bugfix from 0.20: qwdtools made "choppy" mvd demos from qwd (disconnect, hello :-)) - improved build number calculation - bugfix from 0.179: "99% downloaded" - sometimes after downloading client don't rename temporary file to real filename and don't hide download bar - show 99% (EXPERIMENTAL) (Thanks to Renzo) - bugfix from 0.1726: on *nix '-u ' didn't set uid (Thanks to mli) - improved -u and -g (setuid/setgid) support * qqshka - changed QVM API version to 10 due to i've add int QVMstrftime( char *valbuff, int sizebuff, const char *fmt, int offset ), allows me get system date/time in form i want, old mods may work without changes/recompilation. - for developers only: Tonik quote: Add ZQ_ITEMS2 extension - adds .items2 into the 9 highest bits of STAT_ITEMS sent to clients, a la NQ. Allows for per-client sigil display in the status bar, unlike serverflags which is the same for everyone. Unlike NQ, we don't discard serverflags if the .items2 field is declared by progs. Supported both by QVM and QC. - bugfix: u can use higher rate than sv_maxrate after some trix with downloading - for developers: for QVM mods only, now you can check is particular infokey(...) "extension" supported by server, in mod you must use something like this: infokey(world, "\\realip") which rerurn "yes" if infokey(edict, "realip") supported. - Removed *qwe_version from serverinfo, changed *version key in serverinfo so its looks like other server engines do, ktpro still happy because I made some work around (Tonik idea). We catch ktpro (in a new way) from 1.58 to 1.67, can't check for older ktpro since i have't qwprogs.dat from older ktpro. - extending "/addip" command, adding expiration time, and "type" of ipfilter. Now syntax looks like: /addip [type] [[+]time] Type may be: "ban" or "safe", "ban" is obvious while "safe" will be described below. Time param better describe via examples: "/addip 127.0.0.1 ban +10" will ban 127.0.0.1 for 10 seconds from current time "/addip 127.0.0.1 ban 1234567" will ban 127.0.0.1 for some seconds since 00:00:00 GMT, January 1, 1970 Second variant is not human frienly, and developed to be used in listip.cfg, which is generated after issuing "/writeip". Oh, and zero time ( 0s or 0m etc) treated as unexpired time value. - adding server side bans. First of all u must be an realAdmin for use serverside bans, also if mod have self ban commands (like ktpro), then mod commands will be used. Currently server side bans can be used only for KTX mod, but adding such support to any mod is just few lines of code. "/cmd ban