molivier [Sat, 11 Jun 2005 13:12:43 +0000 (13:12 +0000)]
Basic support for Q3's "getstatus" message, for a better integration with Q3 compatible server browsers. Thanks to divVerent for an early version of this patch
havoc [Sat, 11 Jun 2005 00:44:08 +0000 (00:44 +0000)]
changed searchpath directories to have a trailing / (allowing %s%s instead of %s/%s for more consistency)
fixed FS_Search to support empty paths (*.cfg and such), and use %s%s concatenation as the rest of the filesystem does, this required changing listdirectory slightly
some cleanup of the opendir implementation of listdirectory
havoc [Thu, 9 Jun 2005 16:28:57 +0000 (16:28 +0000)]
added r_shadow_glsl_geforcefxlowquality cvar (automatically on if running a GeForce FX card) to use half floats instead of full floats where possible, and r_shadow_glsl_surfacenormalize cvar (slight quality improvement to bumpmapping)
havoc [Thu, 9 Jun 2005 11:57:24 +0000 (11:57 +0000)]
replaced uses of VectorNormalizeFast with VectorNormalize as it was broken on x86_64 (probably just because it used long * casts of floats) and was never much faster on modern CPUs anyway
made a lot of internal functions in portals.c static, and replaced two vector subtracts and a crossproduct with TriangleNormal
black [Wed, 8 Jun 2005 20:12:37 +0000 (20:12 +0000)]
New Key_Event is still disabled.
Changed it back, so keys bound to toggleconsole that arent used as
console keys can hide the console again when pressed in the console.
molivier [Wed, 8 Jun 2005 06:06:44 +0000 (06:06 +0000)]
Changed default sound module for linux to ALSA. Modified makefiles to allow people to choose the sound module easily at compile time (ex: "make DP_SOUND_API=OSS release" compiles release binaries with OSS sound output). Available sound modules are: NULL, OSS, ALSA, BSD, WIN, and COREAUDIO (not functional yet).
black [Tue, 7 Jun 2005 20:55:08 +0000 (20:55 +0000)]
My Key_Event is disabled (yet).
-Changed it to only toggle the console with ESCAPE when you're in the console,
so binding toggleconsole to a normal key wont toggle it while typing.
-Changed the panic console key to shift-escape since ctrl-escape open the start
menu.
Feel free to test it.
@ETG: since I can probably only reach you this way: it is intended that the console
toggle key now appears in the console input line and is also send to e.g. message.
This is because the color tag ^ key opens the console on some keyboard layouts and
couldnt be typed in otherwise.
black [Mon, 6 Jun 2005 20:37:00 +0000 (20:37 +0000)]
If the new Key_Event breaks anything for you, you can set #if 0 and activate the old
one again.
-Moved _Con_DrawString to cl_screen and changed its name to DrawQ_ColoredString.
-Changed all the code to allow colored nicks.
-Changed Win32 code to support two-char keys (it takes the second byte - may
need some more testing).
-Rewrote Key_Event to support typing in the ^ key on Germany keyboards (or
at least mine). Press ^ two times, once to open the console and once to close it.
If you type in a message, there will be a ^ char waiting for you (same in the console if you open it again).
havoc [Sun, 5 Jun 2005 09:27:19 +0000 (09:27 +0000)]
fix lagged prydon cursor trace bug (it was using renderer variables, now uses V_CalcRefdef to get an up to date view matrix before this frame is even rendered)
fixed 'shooting at world origin' bug due to a misplaced CL_UpdatePrydonCursor call (now in CL_SendMove so it works properly)
havoc [Fri, 3 Jun 2005 14:11:07 +0000 (14:11 +0000)]
rewrote PRVM_AllocString and PRVM_FreeString to deal with string offsets directly (rather than pointers) to avoid unnecessary GetString/SetString calls
havoc [Fri, 3 Jun 2005 12:49:36 +0000 (12:49 +0000)]
shut down local server when connected to a remote server
some cleaning of NetConn_QueryQueueFrame (and it now goes to sleep when there are no remaining queries to run as an optimization)
added net_slist_queriespersecond and net_slist_queriesperframe cvars
black [Thu, 2 Jun 2005 19:21:26 +0000 (19:21 +0000)]
Didnt know that Host_StartVideo works this way (called randomly around the code), so now the menu should be loaded at the right time (or just-in-time :))
black [Thu, 2 Jun 2005 19:00:05 +0000 (19:00 +0000)]
-Changed host_abortserver to host_abortframe.
-Added a hack to allow the menu crash in Host_Init without it taking down
the whole host (please intergrate this into the general design somehow ASAP).
-Changed the hostcache code to always add servers at the right position and
to eject 'worse' servers from the viewlist.
black [Wed, 1 Jun 2005 19:21:09 +0000 (19:21 +0000)]
-Added Host_AbortCurrentFrame to hide the longjump and make it usable by
the VM error functions.
-Moved the static variables of Host_Error into the function body.
-Changed the definition of error_cmd to be called instead of Host_Error,
so the VM control code is in full control of the error processing.
-Added MP_Error to the menu, so a menu crash wont shutdown the server anymore.
-Fixed an annying bug caused by a typo, that crashes Nexuiz if you query for
a string in the serverlist.
-PRVM_Crash resets the prog pointer now.
-PRVM_Begin use Con_Printf again (but PRVM_DEBUGPRSTACK has been disabled again).
havoc [Wed, 1 Jun 2005 08:37:33 +0000 (08:37 +0000)]
shortened movement queue back to 64 items to prevent a runaway loop (falling behind and not being able to run the collisions fast enough) in Nexuiz maps on my machine
havoc [Mon, 30 May 2005 08:38:51 +0000 (08:38 +0000)]
made bmodel trails (if anyone ever dares to try them) come from the center of the bmodel, this also cleaned up the sound code (and fixed a weird bug with a sound played in the same frame as an entity is removed)
black [Fri, 27 May 2005 15:43:48 +0000 (15:43 +0000)]
-CVS: ----------------------------------------------------------------------
-Merged the old VM into the new one. The pr_* files are mess right now and
will be removed as soon as they are not needed as semi-reference (to trace
bugs)
-There is a certain risk that the server could crash now and then since some
parts of the code can only be debugged (- checking them by looking at the code
would be quite tedious to put it nicely)
-Changed all references to the old VM to point to the new VM (also hopefully
all todo items)
-Im working on a cleanup for the SV_VM_Begin/End mess.
havoc [Tue, 24 May 2005 23:58:04 +0000 (23:58 +0000)]
reordered the protocolversion_t values to have preferred protocols first
changed client connect message to list all supported protocols
shortened PROTOCOL_DARKPLACES* names to "DP1" and such to make connect message shorter
black [Tue, 24 May 2005 22:30:18 +0000 (22:30 +0000)]
-Split prvm_cmds.c into prvm_cmds.c, prvm_cmds.h and mvm_cmds.c (clvm_cmds.c
and svm_cmds.c will perhaps be added soon)
-Added another union to prvm_edict_s to have different pointers to the
edict fields.
-Changed the naming of some fields in prvm_edict_s (longer names instead of
single letter ones)
-Changed PRVM_LoadProgs to only reset the CMD system if it has be initialized
before.
havoc [Tue, 24 May 2005 21:37:32 +0000 (21:37 +0000)]
rewrote protocol version system (including splitting PROTOCOL_QUAKE into PROTOCOL_QUAKE, PROTOCOL_QUAKEDP, and PROTOCOL_NEHAHRAMOVIE)
made server able to host PROTOCOL_NEHAHRAMOVIE protocol for completeness
added PROTOCOL_DARKPLACES7 protocol (still in development, not enabled by default) which allows players to use QW-style movement messages (makes prediction rock solid but has speedcheat/lagaport potential)