black [Wed, 22 Dec 2004 23:10:20 +0000 (23:10 +0000)]
-Fixed a wrong parameter type in netconn.
-Made hostcache_cachecount public again.
-Added altstr_set to the new VM.
-Started work on the new hostcache interface for the menu qc.
black [Tue, 21 Dec 2004 21:41:58 +0000 (21:41 +0000)]
-Added a new hostcache interface:
* Ascending und descending sorting by various fields is supported.
* Its possible to mask entries (substrings or comparisons for numbers).
molivier [Mon, 20 Dec 2004 09:58:41 +0000 (09:58 +0000)]
- Fixed JPEG support on Mac OS X
- Fixed Ogg Vorbis support on Mac OS X (the vorbis DLL is now also loaded manually since some OSes don't do that for us)
- Fixed loading of MD3 models on big-endian CPUs
black [Sun, 19 Dec 2004 22:55:00 +0000 (22:55 +0000)]
-Fixed a "bug" in PRVM_iscachedpic - it always returned true and thus no
images were precached (now it always returns false and the menu halts for
~4 seconds after starting)
black [Sat, 18 Dec 2004 11:22:10 +0000 (11:22 +0000)]
-Castrated the new CL_Video subsystem. It doesnt allow more than 1 video
stream at a time again. I've moved the texture pool stuff into OpenVideo
and CloseVideo, so it should work exactly like the old code.
havoc [Sat, 18 Dec 2004 02:40:48 +0000 (02:40 +0000)]
added Bloom effect (r_bloom* cvars)
added Bloom effect cvars to graphics options menu
cleaned up r_speeds variables (c_*) which were being declared and externed and cleared all over the place (that's most of these files)
havoc [Fri, 17 Dec 2004 15:51:24 +0000 (15:51 +0000)]
removed dangerous filename checks from FRIK_FILE code
added FS_CheckNastyPath function which is called by FS_Open, so now dangerous paths are rejected everywhere
black [Sun, 5 Dec 2004 13:58:16 +0000 (13:58 +0000)]
-Fixed a minor bug in CL_Video
-Changed func_t from int to unsigned int - probably this breaks some things
but at least it fixes an annoying crash of the DP with the current Nexuiz
build.
black [Sat, 4 Dec 2004 21:08:13 +0000 (21:08 +0000)]
-Added video streaming support to the new VM
-Changed again a lot of CL_Video (mostly bugs and logical errors)
-It doesnt append the prefix now, but only checks whether it matches
or not - if it doesnt it doesnt load the video.
black [Sat, 4 Dec 2004 16:15:17 +0000 (16:15 +0000)]
-Added the console command prvm_globalset
-Rewritten CL_Video to support multiple video streams
-Fixed a bug in the new VM's epair parser
The only problem CL_Video now has, is that it doesnt use TEXF_FRAGMENT
right now. Ive added a more general description of this problem to the
todo list.
molivier [Fri, 3 Dec 2004 08:32:08 +0000 (08:32 +0000)]
- DP now defines MACOSX when relevant
- added a "Mac OS X" string in Sys_Shared_EarlyInit
- removed an unused "rcsid" string
- fixed SDL audio on big endian systems
- fixed SDL video initialization on Mac OS X
black [Thu, 2 Dec 2004 14:25:48 +0000 (14:25 +0000)]
Ive done three todo items:
-Added support for ' strings in Com_ParseToken.
-Added support for " and ' as end tokens in Com_ParseToken.
-Added the NEXUIZ_PLAYERMODEL and NEXUIZ_PLAYERSKIN extensions.
The last needs to be tested though. Hopefully it works.
molivier [Thu, 2 Dec 2004 09:46:27 +0000 (09:46 +0000)]
- Removed Con_SafePrint and Con_SafePrintf since they now does the same things as Con_Print and Con_Printf
- Moved log initialization right after memory initialization to make the log functions available as early as possible
- Moved the removal of "qconsole.log" (when -condebug is in the command line) in FS_Init
- Moved the "Console initialized." message so it is actually printed at console
- Removed the declaration of "con_chars" (it doesn't exist anymore)
havoc [Wed, 1 Dec 2004 23:14:07 +0000 (23:14 +0000)]
changed a lot of Con_DPrint/Con_DPrintf calls to Con_Print/Con_Printf (non-technical things like device errors which should be seen even without developer on)
merged Sys_Print code into Con_Print and changed all other Sys_Print/Sys_Printf calls to calling Con_Print/Con_Printf or Con_DPrint/Con_DPrintf instead
rewrote Con_Print so that timestamps are printed only at the start of each line (or just after the 0x01 or 0x02 characters used for chat messages), not during partial line prints, and timestamps now apply to all output destinations (log, console, terminal)
havoc [Wed, 1 Dec 2004 21:48:21 +0000 (21:48 +0000)]
cleaned up CL_SendMove a lot, added notes on number of bytes used for different protocols
made CL_SendMove never send a clc_ackframe for frame 0 in any latestframenums slots
made CL_SendMove discard only the clc_move portion of the first two messages (the ones dropped to avoid input leftover from the previous level), still sending the clc_ackframe message
changed CL_SendMove to not accumulate move messages but just send the latest (may improve cursor issues in prydon gate using non-clientcursor mode)
havoc [Wed, 1 Dec 2004 07:20:42 +0000 (07:20 +0000)]
decals now render immediately rather than being transparency sorted, this generally resolves the issues with decals hiding sprites and lightning beams, though it's debatable whether the new interaction with water and transparent bmodels is really an improvement
havoc [Wed, 1 Dec 2004 05:39:03 +0000 (05:39 +0000)]
implemented PRYDON_CLIENTCURSOR extension (clientside mouse pointer that feeds back information to the QuakeC)
added DP_BUTTONUSE extension (+use/-use button)
added DP_BUTTONCHAT extension (true while input is not focused on the game)
reimplemented DP_ENT_COLORMOD extension due to popular request, and changed its definition to allow colors above '1 1 1' for brightening effects
implemented PROTOCOL_DARKPLACES6 protocol, featuring delta compression of ammo counts and other properties (using generic svc_updatestat and svc_updatestatubyte messages), precaching models and sounds during the game (svc_precache).
removed cmd parameter from a lot of input code (now uses cl.cmd. instead of cmd->)
added sv_gameplayfix_setmodelrealbox to allow disabling of the setmodel real model bounding box on alias models (may improve mod compatibility if set to 0, thus performing a setsize (self, '-16 -16 -16', '16 16 16') instead of the real alias model box).
added SV_ModelIndex and SV_SoundIndex functions to clean up the server's precaching and model lookup processes (code reduction/maintenance reduction).
changed sv.model_precache and sv.sound_precache to be real char arrays rather than pointers, so precache names no longer need to be constants as they're now copied.
added some modelindex bounds checks to a few pieces of code.
the dpfields array is now sorted and matches the supported fields list (added the missing ones).
client now acknowledges the last 3 frames in each input packet to reduce packet loss issues.
renamed clc_ackentities to clc_ackframe as it is now used for compressing stats as well as entities in PROTOCOL_DARKPLACES6, this also means it always produces a packet for every frame even if there's no changed entities (or room under the rate limit for that matter)
PROTOCOL_DARKPLACES5 and 6 now perform a non-harmful serverside packetlog reset (marking all packets as lost) if the packetlog fills up, this should eliminate choked-to-death cases where the client lost everything for a few seconds.
MAX_CL_STATS expanded from 32 to 256 (just incase more stats are added, this prevents protocol breakage on too many unknown extra stats)
fixed a bug with the worst case rtlight rendering (the color array was disabled, oops).
some cl.* fields converted to cl.stats elements (STAT_ITEMS for instance) to accomodate the PROTOCOL_DARKPLACES6 stats updates
black [Mon, 29 Nov 2004 20:43:28 +0000 (20:43 +0000)]
-Fixed an old qc bug that's already been existing in the original quake
(- hopefully it is a bug): ParseEpair was accessing the globals arrays
instead of writing an offset directly into the value.
-Removed the VM_CheckEmptyString from VM_drawstring.
black [Sun, 28 Nov 2004 13:10:38 +0000 (13:10 +0000)]
-Removed the NG Menu part, since it isnt used anymore (the old layout
works generally better)
-Fixed a bug in VM_max - it used one of the old VM's macro.
-Added a memory leak output of the "strzone" zone when the menu is shutdown
(only displayed if developer >= 2)
havoc [Fri, 26 Nov 2004 00:57:30 +0000 (00:57 +0000)]
redesigned drawing of loading plaque, it's now a separate refresh function which draws over the previous frame, rather than invoking a new render, which should fix crashes with level changes with rtlights on (trying to render an rtlight while the map the rtlight was for has already been unloaded tends to cause a crash)
havoc [Thu, 25 Nov 2004 20:38:37 +0000 (20:38 +0000)]
removed Sys_Sleep call from CL_KeepaliveMessage, as it's probably better to load as fast as possible than to yield cpu time during loading
removed an unnecessary CL_KeepaliveMessage call in model purging
havoc [Thu, 25 Nov 2004 16:19:56 +0000 (16:19 +0000)]
changed lhrandom to use the full RAND_MAX limit (more random, after all the low bits are the most predictable), and made the random() qc builtin use lhrandom
havoc [Thu, 25 Nov 2004 16:13:42 +0000 (16:13 +0000)]
redesigned Host_ServerFrame timing again, it now never runs more than 5 serverframes per host frame as a sanity limit (to remain playable in an overloaded game), and is just cleaner
molivier [Thu, 25 Nov 2004 09:04:37 +0000 (09:04 +0000)]
Fixed ambient sound volume (it was reset each frame, and cannot change by more than the value of the "ambient_fade" cvar each frame... you do the math). Thanks to Tomaz and Urre for the bug report
havoc [Wed, 24 Nov 2004 13:39:38 +0000 (13:39 +0000)]
fixed a critical bug with Vile and other midnight mods (dlights were being controlled by style 0, this meant they didn't appear in these mods, added style -1 as a special case)
molivier [Mon, 22 Nov 2004 14:38:33 +0000 (14:38 +0000)]
Several changes to the SFX lock code in the sound engine, mainly to make sure SFXs are automatically freed only at level change
Moved call to CL_InitTEnts after S_Startup so the tent sounds get properly precached
Added a developer warning when trying to play a non-precached SFX
Made the soundlist command more verbose
Added the ssize_t type for Win32 systems
Some comments and dead code removal