Commit graph

286 commits

Author SHA1 Message Date
Bill Currie
8fdd8a0888 make local command ip address checking sane 2004-04-12 23:38:09 +00:00
Bill Currie
0e1a9e5082 a bit more netchan cleanup 2004-02-19 23:06:47 +00:00
Bill Currie
fa58b795f2 except for packet logging, netchan is much cleaner (no more cls in the
server!)
2004-02-19 08:58:42 +00:00
Bill Currie
9784ba5954 Grievre's gamedir callback patch to fix mangled sounds on gamedir change
plus a couple minor tweaks I notcied needed doing.
2004-02-03 03:01:06 +00:00
Bill Currie
e7ffad8772 more rua cleanups: now just one init function to call (it calls the rest) 2004-01-16 07:03:58 +00:00
Bill Currie
01392c78bb move the bulk of what whas libQFcsqc to libQFruamoko. 2004-01-16 05:46:19 +00:00
Bill Currie
9537640b1c don't write config.cfg until /after/ it's been read :) 2004-01-07 06:29:34 +00:00
Bill Currie
0b0f8bb613 make sure all + commands have been executed 2003-09-03 01:30:35 +00:00
Ragnvald Maartmann-Moe IV
da4015d8d1 Typo fix. 2003-09-01 03:23:52 +00:00
Ragnvald Maartmann-Moe IV
dc8e9422a2 Qize's patches. Add some more backwards-compatibility aliases to ln.gib,
remove a dead cvar, and don't display a message about what to do to connect
when use +connect already...
2003-09-01 01:52:20 +00:00
Bill Currie
b3f99a70be rename cl_timeframes to demo_timeframes and make it /not/ archive.
move call to CL_TimeFrames_AddTimestamp from cl_main.c to cl_demo.c.

add a hacky little python script to create a pnm (portable anymap file
format) graph from timeframes.txt
2003-08-12 06:33:13 +00:00
Bill Currie
ada828bdc9 remove a whole swath of potential buffer overflows by removing the buffer.
Also audit a few of the "FIXME: overflow" tags
2003-08-05 01:45:52 +00:00
Ragnvald Maartmann-Moe IV
0a7b56f003 show_fps -> hud_fps, show_ping -> hud_ping, show_pl -> hud_pl,
show_time -> hud_time, show_scoresuid -> hud_scoreboard_uid
2003-07-27 23:20:11 +00:00
Bill Currie
6063fb75d9 make the console run at full speed no matter what demo_speed is at. what a
lot of work for such a simple concept :P
2003-07-25 22:21:47 +00:00
Brian Koropoff
9b63402f12 Added llist.[ch], a set of general-purpose linked list routines. Added
cl_chat.[ch] to qw to hold advanced chat features, the first of which is
the ability to ignore chat messages from annoying players.  Some polishing
in this area still remains, but the current implementation seems to work.
2003-07-18 06:27:26 +00:00
Bill Currie
4f66e1e9da fix a bunch of the previous FIXMEs. needs a bit more work for win32
compiling
2003-07-08 22:39:45 +00:00
Bill Currie
dddf045221 put "FIXME: overflow" on all the char arrays I could find that weren't
obviously safe
2003-07-08 20:11:10 +00:00
Bill Currie
42ade2c507 clear the player slots properly when disconnecting 2003-05-30 20:16:30 +00:00
Bill Currie
878c1c59ba hud works again 2003-05-08 04:13:42 +00:00
Bill Currie
eb099ae0d3 make qf gcc 3.3 clean 2003-04-17 00:01:48 +00:00
Brian Koropoff
e707e9bb89 Moved gib_*.h into include/ and moved the necessary declarations and struct
definitions to QF/gib.h to interface with libQFgib.
2003-04-13 22:07:58 +00:00
Bill Currie
255a7522bd merge IN_SendKeyEvents and IN_Commands into IN_ProcessEvents 2003-04-08 18:45:12 +00:00
Ragnvald Maartmann-Moe IV
5fb8aa07f3 Code style, people. Love it or leave it! 2003-03-21 21:25:44 +00:00
Bill Currie
2173151560 get packet logging working with mvds 2003-03-16 03:17:50 +00:00
Bill Currie
d93fceea38 fix a snafu in SVC_DirectConnect related to info strings, make
Info_ParseString take (and pass on to Info_SetValueForStarKey) a flags arg
and simplify the flags handing in Info_SetValueForStarKey.
2003-02-19 17:39:21 +00:00
Bill Currie
851d203916 work towards a more secure qfs 2003-02-14 22:36:10 +00:00
Bill Currie
6a687f5e45 rename all the globals in quakefs.[ch] to be QFS_* or qfs_* 2003-02-14 19:46:07 +00:00
Bill Currie
21d8b4f8dc link in hw, move the qw and nq networking code into libs/net and make
hw-master use libnetchan. there are evil include hacks that will need to be
taken care of in net*.[ch]
2003-02-11 22:48:57 +00:00
Bill Currie
4bd1718475 re-arrange viewsize handling to fix the hud bug in glx 2003-02-11 21:24:27 +00:00
Bill Currie
f4fdbeee4d make the low level network code and packet logging less incentuous 2003-02-10 21:41:22 +00:00
Bill Currie
761a7546dd re-arrange things so __attribute__ and __builtin_expect are properly
autoconfiscated so rcsid will continue to work with gcc 3.3
2003-01-15 15:31:36 +00:00
Bill Currie
2e0ed3377c basic (very!) implementation of the new filesystem directory struture code.
All the details of game directories will be fully configurable (search
paths and gamecode file name currently supported). Downloading of skins to
qw/skins only currently broken (will download to $gamedir/skins for now).
2003-01-10 22:47:18 +00:00
Bill Currie
71196fedf6 make gcc more anal about prototypes, string constants and function
visibility (ie, global functions must have a prototype)
2003-01-06 18:28:13 +00:00
Brian Koropoff
c522970a88 Added a GIB event system for registering GIB callback functions to be
started when a named event occurs.  Added a few test events to the qw
client and server.  Cleaned up the range GIB builtin a bit.
2003-01-03 04:30:38 +00:00
Bill Currie
b62795217a make m_forward, m_side, m_yaw get saved in qw clients 2002-12-09 22:34:18 +00:00
Brian Koropoff
714f2ced4c Fixed several GIB bugs, optimized Cbuf_Execute_Stack a bit, changed QW
clients to use a separate buffer for stufftext commands.
2002-12-01 07:22:42 +00:00
Brian Koropoff
034af573c0 User info keys besides *ver are no longer explicitly set to default values
because registering their respective cvars already does this.  Closes bug
#42.
2002-11-23 07:00:59 +00:00
Brian Koropoff
625e1e36d6 Added Sys_PathType, which reports whether a path is absolute, relative
below, or relative above (uses .. to ascend the filesystem). Changed
file functions in GIB to use this.  GIB can now be initialized in a
non-sandboxed mode, which at the moment means that GIB scripts run with
carne can access the entire filesystem.
2002-11-14 05:28:54 +00:00
Brian Koropoff
b40400d59c Moved GIB into libs/gib and made util no longer depend on it. Cleaned up
some cruft from a previous incarnation of GIB.
2002-11-09 07:13:52 +00:00
Bill Currie
3d44623b57 change Cmd_Exec_File's api so it can conditionally use normal or quake
file system accesses. fixes the map.cfg exec problem
2002-11-08 16:39:28 +00:00
Bill Currie
ca4b3acd6c big protototype cleanup. Now, except for a few cases, all non-static
prototypes are in headers files.
2002-11-05 19:12:51 +00:00
Bill Currie
ef33b9754b support as many packet entities in demos as qwex does (ie, 196). Makes me
wonder if I should make the server support sending 196 packet entities to
qf clients.
2002-10-17 16:03:18 +00:00
Bill Currie
9f7c669370 various win32 compile fixes for the latest mingw (not fully working due to
LPCWAVEFORMATEX)
2002-10-11 20:47:17 +00:00
Bill Currie
347815f3e3 Call CL_UpdateScreen a few extra times to make sure the screen gets updated
before any lengthy pauses occur
2002-10-11 03:40:41 +00:00
Bill Currie
fb8a5afda5 fix a bunch more potential message writes while playing demos 2002-10-07 03:58:08 +00:00
Bill Currie
212e40b54a mvd recording :) (thanks to qwex 0.165b and highlander) 2002-10-04 02:29:03 +00:00
Bill Currie
2383340031 mvd playback support. seems to work (get some weird entities hanging around
but I suspect that's the mod used in the demo I was testing with), but
probably needs some cleanup.
2002-10-02 21:56:45 +00:00
Ragnvald Maartmann-Moe IV
eb54acf140 Whitespace. 2002-09-28 02:33:39 +00:00
Bill Currie
ef49e4cf17 get the skybox serverinfo working 2002-09-18 04:23:58 +00:00
Bill Currie
6fa4205675 tidy up SV_Serverinfo_f, move Cvar_Info from sv_cver.c to sv_ccmds.c and
make the client no_pogo_stick cvar properly reflect the serverinfo
2002-09-17 05:11:28 +00:00
Ragnvald Maartmann-Moe IV
5547c56342 Fix fps limiting. 2002-09-14 20:16:15 +00:00
Ragnvald Maartmann-Moe IV
17a71cc151 Allow float cl_maxfps settings, clean up code a bit. 2002-09-12 20:49:40 +00:00
Bill Currie
9f6f50699d remove vid_basepal, creating vid.palette (current palette) and host_basepal 2002-09-10 03:51:10 +00:00
Bill Currie
cc6c82007c clear validsequence on disconnect so we don't do prediction before we get a
world model when reconnecting
2002-09-09 04:20:15 +00:00
Chris Ison
460ce5c0e6 clear cl.worldmodel on disconnect. make sure we don't parse server messages when we are disconnected 2002-09-08 03:21:53 +00:00
Bill Currie
67b01ca5ba cleanup the output of connectionless prints a bit 2002-09-04 19:13:45 +00:00
Ragnvald Maartmann-Moe IV
92f3e230af Physics bugfix. 2002-08-29 15:42:37 +00:00
Bill Currie
a0807c762f fix the handling of escape when in the console before ever connecting 2002-08-27 08:33:21 +00:00
Bill Currie
ec47e08e1c go back to using QFile, quakeio.h and quakefs.h 2002-08-27 07:16:28 +00:00
Brian Koropoff
98fc04e041 Added threads and callbacks to GIB, as well as several QW callbacks dealing
with player status.
2002-08-27 04:47:49 +00:00
Bill Currie
5009213564 Move the signal handling code from video/targets/* to sys.c (I'm leaving
the SDL target files for Despair since he's working on the currently). Also
make progs segfault handling much more robust (and general: sigill etc too:)
2002-08-20 23:04:57 +00:00
Bill Currie
2b1fd8e8c0 fix the menu keybinding not working bug 2002-08-19 02:48:38 +00:00
Ragnvald Maartmann-Moe IV
c86565307b Use function pointers for DeathmatchOverlay, instead of a ridiculous if/else tangle. Bulkier, but considerably faster. 2002-08-15 09:38:23 +00:00
Bill Currie
b5783866ad fix model_t issues for solaris (now that I know which headers cause the
problem...:)
2002-08-09 02:44:23 +00:00
Brian Koropoff
5c60be3a49 If and while now work, and embedded commands use backticks instead of <> now
to prevent conflicts with math expressions.  All clients and servers are set
to create buffers with the normal parser.  However, scripts ending in .gib
are now executed in a GIB buffer, and the export command can be used to
make specific GIB functions available to normal command buffers (i.e. the
console).
2002-08-07 06:17:50 +00:00
Brian Koropoff
cf48363c6e More of GIB done: builtins, functions, various cleanups, math, etc. 2002-08-03 06:04:00 +00:00
Bill Currie
5f4c21d796 casting from (signed) char to int does not one whit of good towards avoiding
the problems associated with signed chars being used to index arrays. must
cast to usigned char so the bit expansion is done on an unsigned value to
avoid the sign extension.
2002-08-02 03:22:32 +00:00
Bill Currie
2ce0f2ded2 we now require modern autoconf (2.52+), automake (1.6+) and libtool (1.4+).
This gives us a bunch more flexibility. plugins no longer have the "lib"
prefix or the version suffix, they're now installed in
$fs_sharepath/QFplugins,, builds should take much less time (in general,
only one of pic or non-pic versions are build), bins and libs can have
individual CFLAGS
2002-08-01 19:49:10 +00:00
Brian Koropoff
a93b221272 Split off the old console parser into idparse.[ch] and prepared the cbuf
struct and support functions for GIB mark III.

Oh yeah, I'm back.
2002-07-31 22:03:53 +00:00
Bill Currie
0bb6769204 fix the non-parsing of quakeforge.conf 2002-07-31 06:06:44 +00:00
Bill Currie
ad6e025a91 take cmd.[ch] back to basics. the gib code is temporarily gone pending
renovations. cmd_source handling is a little hacky in nq, but it's working.
2002-07-31 05:19:03 +00:00
Bill Currie
81af9b14e9 move the VID_SetCaption call into CL_SetState where it belongs and fix
CL_SetState for when connecting to the server (dunno how I mangled that one)
2002-07-26 20:50:53 +00:00
Bill Currie
dd08f4ff58 fix some operation order issues (might fix the stuck key issue) 2002-07-22 21:47:01 +00:00
Bill Currie
4cc39a07bc hopefully make CL_SetState a little more sensible 2002-07-22 21:25:51 +00:00
Bill Currie
73b68e788e close a small security hole where a malicious challenge could potentially
wreak havoc with info strings.
2002-07-03 18:29:36 +00:00
Ragnvald Maartmann-Moe IV
64df22aa8c Whitespace, dead code removal, and a couple of tiny cleanups. 2002-07-03 05:40:33 +00:00
Ragnvald Maartmann-Moe IV
1478dcd9c9 Prune dead code. 2002-07-02 21:37:22 +00:00
Ragnvald Maartmann-Moe IV
5e5fdb7bc2 Kill MSG_WriteChar. 2002-07-02 19:13:53 +00:00
Bill Currie
9482c151c2 fix the missing view model 2002-06-14 07:55:19 +00:00
Bill Currie
1747c07da6 rename cl_demospeed to demo_speed and add demo_gzip (yeah, compressed demos) 2002-06-08 23:22:26 +00:00
Bill Currie
442ccc3deb no more Sys_* functions defined in nq or qw :) 2002-06-07 15:46:15 +00:00
Brian Koropoff
7369224f25 Added the getinfo command to grab client info keys in GIB. I might add
the ability to grab info about any user, but this has potential abuses.
I'll need to think it over.
2002-06-05 00:13:46 +00:00
Bill Currie
44dcf74627 strip the \n from all(?) of the Sys_Error calls (Sys_Error itself will be
adding \n).
2002-05-14 06:12:29 +00:00
Brian Koropoff
3fffa26fb4 Added thread support to GIB and cleaned up escape characters yet again.
With any luck it should actually work this time.  Added the getimpulse
command so that GIB scripts can check if an impulse command is pending
before sending their own.  Fixed all the memory leaks I could find.
QuakeC and GIB seem to be clean except for maybe one or two sneaky leaks
I can't track down.
2002-05-11 00:36:12 +00:00
Bill Currie
7ca3ea20b1 got a little too agressive with that optimisation :P (I'm surprised it worked
at all)
2002-04-25 19:38:15 +00:00
Bill Currie
4223aaa4c0 a couple of very minor optimisations 2002-04-25 17:16:40 +00:00
Jeff Teunissen
b2579dca98 WOOHOO! The hardcoded framerate cap is gone! cl_maxfps 0 now allows an
unbounded frame rate (you can still set it to clamp your fps to, for example,
your monitor's refresh rate), and cl_maxnetfps 0 is now based on your network
rate.

The NetQuake-compatible targets now also have an unbounded framerate. This is
OK, because the built-in server uses its own tick rate.
2002-04-25 16:50:56 +00:00
Jeff Teunissen
7c134a6f95 Fix up the watervis stuff. Whoops! :) 2002-04-25 14:34:15 +00:00
Jeff Teunissen
5b069de40c Redo r_wateralpha so that it doesn't force its value based on the watervis
serverinfo. Instead, create a new cl_wateralpha float variable that is set to
r_wateralpha->value in Host_Frame, and use that float during rendering.
2002-04-25 12:51:04 +00:00
Brian Koropoff
7f295d61ee Added the getserverinfo command to return the value of a server info key
to GIB.  Fixed a bug in dstring_replace that was causing too much data to
be copied when the incoming string was larger than what was being replaced.
Very minor reorganization in cmd.c (1 function moved around I think).
cmd.c should probably get broken up into separate files soon.
2002-04-23 07:47:24 +00:00
Bill Currie
a974eb2333 move buildnum.c to util and make nq and qw init more similar 2002-04-11 18:42:55 +00:00
Bill Currie
76d004f9cf fix confim_quit 2002-04-09 17:00:39 +00:00
Bill Currie
bde0f94d1a don't process server packets when a client packet has been read from a demo
file. this was causing server packets to sometimes be processed multiple
times.
2002-03-15 07:35:22 +00:00
Bill Currie
33513ce67b demo autorecord patch from RvB 2002-03-14 18:48:04 +00:00
Bill Currie
3e4422a9f3 ok, the usleep is back, but it's controlled via cl_usleep which defaults to
off.
2002-02-22 05:48:59 +00:00
Bill Currie
b6c331736a give nq host_mem_size so -mem can be a cvar (similar to sv_mem_size and
cl_mem_size in qw).
2002-02-19 20:47:45 +00:00
Bill Currie
9aace57b07 fix a core dump when failing to allocate the hunk 2002-02-19 19:24:18 +00:00
Timothy C. McGrath
301eb4b8fd Changed show_fps, show_time, show_pl and show_ping into archived cvars. They
were archived originally, but apparently some insane little gremlin keeps
reverting my change without telling me why :)

Tim/Misty/Misty-chan
2002-02-19 00:58:17 +00:00
Bill Currie
70194567fe kill the usleep. I don't know why, nor do I really care, but it causes qw to
not run at full speed even though it shouldn't.
2002-02-18 19:21:53 +00:00
Bill Currie
e8f6fced0b call BI_Init in the clients 2002-01-20 04:10:36 +00:00