Commit Graph

1876 Commits

Author SHA1 Message Date
Bill Currie 13029212a8 don't ignore the size parameter to newstr
This is an imperfect revision of history.
2004-11-11 04:16:00 +00:00
Bill Currie 78d98ea787 remove the time pointer (not really needed)
This is an imperfect revision of history.
2004-11-09 22:32:00 +00:00
Bill Currie 8770df39e5 start documenting things (progs building still borked)
This is an imperfect revision of history.
2004-11-08 23:27:00 +00:00
Bill Currie 201252c1c0 FIXME cleanup and a missed win32 compile fix
This is an imperfect revision of history.
2004-11-06 02:21:00 +00:00
Bill Currie f5bc90a53a clean up some redundant progs functions (may be broken for a while)
This is an imperfect revision of history.
2004-11-05 11:49:00 +00:00
Bill Currie 2cb81b37f9 move the *_RecursiveHullCheck functions from pmovetst.c and world.c to MOD_TraceLine in libs/models/trace.c, at the same time rewriting the code to work itteratively rather than recursively.
This is an imperfect revision of history.
2004-11-02 08:40:00 +00:00
Bill Currie ca46503607 add -Wsign-compare (default for -Wall only in C++) and fix up the warnings 2004-07-13 19:14:01 +00:00
Bill Currie a89d8d23a3 grievre's patch to enable fullbright skins, controlled rotation and server
control of various features
2004-07-11 01:41:01 +00:00
Bill Currie 6d329e0118 work around "player name exploit" problems caused by qizmo (happens when
someone connects to the server)
2004-05-30 22:36:34 +00:00
Bill Currie 3fd7ed5b71 correct the skin format code as pointed out by Grievre 2004-05-17 00:31:56 +00:00
Bill Currie 6fd41b9e9d don't call SV_SendDemoMessage when it's only going to bail 2004-05-12 19:57:21 +00:00
Bill Currie 26a3b4fa54 make the server clients' pings visible 2004-05-12 04:20:58 +00:00
Bill Currie e9f19be2bb fix a thinko pointed out by zenja-b 2004-05-08 23:27:05 +00:00
Bill Currie 8a237169c3 patches to allow for multiple view ports 2004-05-07 03:54:35 +00:00
Bill Currie 5c82f48f41 fix logging of svc_deltapacketentities 2004-05-04 01:57:29 +00:00
Bill Currie 9ed9832789 bring back the alpha setting for dlights (finally found out what it was
for) and "fix" the wayward dlights in mvds: caused by svc_muzzleflash being
written before the player updates. Should probably fix properly that in the
server too.
2004-05-03 06:21:39 +00:00
Bill Currie 406d596178 don't allow recording while playing a demo 2004-05-03 03:49:02 +00:00
Brian Koropoff c16194cf76 Disable libQFobject from being built or used, since it doesn't serve
any purpose right now.
2004-04-27 21:58:21 +00:00
Bill Currie f88310ddd0 patch from Grievre to add a cvar to control "fake" filtering and change the
fake kick default
2004-04-27 03:45:26 +00:00
Brian Koropoff 7975d17f64 Remove references to the broken and soon-to-be-removed object system. 2004-04-20 05:34:35 +00:00
Bill Currie 37a5938b87 don't do hostname lookup on an empty string 2004-04-15 06:14:03 +00:00
Bill Currie cb7bbff49f oops, fix some minor breakage 2004-04-13 02:23:20 +00:00
Bill Currie 62cdbb5fc4 optionally allow recomte commands from a specified host address 2004-04-13 01:13:07 +00:00
Bill Currie 8fdd8a0888 make local command ip address checking sane 2004-04-12 23:38:09 +00:00
Chris Ison e148880ec6 oops, added append support to other functions that require it 2004-04-12 12:20:26 +00:00
Chris Ison fc40da217e append support added to cfopen 2004-04-12 11:25:53 +00:00
Bill Currie 4882005a49 compile fixes (oops) and start working on quaternion support in qfcc 2004-04-08 02:33:20 +00:00
Bill Currie c188159384 various mvd fixes for bots, especially getting the angles written 2004-04-06 22:02:45 +00:00
Bill Currie cd8486accc parenthesize a couple of casts. fixes the mvd recording crash
*taniwha dons his brown paper bag
2004-04-06 04:04:39 +00:00
Bill Currie 07e0682e28 make sure trace.allsolid gets set properly when skipping the
PM_RecursiveHullCheck call. Fixes the lg + pent + water map ejection bug.
2004-04-05 23:33:46 +00:00
Bill Currie 49f8787450 fix up some accidental asm compilation when it's not wanted 2004-04-04 05:34:20 +00:00
Bill Currie ab52e74874 Grievre's skin DoS fix 2004-04-04 02:34:05 +00:00
Bill Currie c1d5f230a9 minor cleanups 2004-03-31 19:14:55 +00:00
Bill Currie 16a90e17f2 cl_ents.c:
bring back the location markers
sv_ccmds.c:
	a few demo related fixes
sv_demo.c:
	minor cleanups
2004-03-23 22:39:17 +00:00
Bill Currie 476680b4e0 fix some new gcc warnings (from my experience with qfcc, such casts are
potentially dangerous anyway)
2004-03-21 04:54:56 +00:00
Bill Currie 482daf4fa8 add optional reason to kick and ban 2004-03-20 00:23:26 +00:00
Bill Currie 7f49727db5 bring back the missing chat logging 2004-03-15 20:41:34 +00:00
Bill Currie c4807a095d if we're not going to check the pvs, why bother calculating it? 2004-03-07 00:25:09 +00:00
Bill Currie bd358618da bit of a tidy up to make following things a bit easier 2004-03-06 04:42:43 +00:00
Bill Currie bd58f350dd remove debug print (oops) 2004-03-06 04:34:13 +00:00
Bill Currie 17afd25631 hide SV_Stop_f 2004-03-06 03:18:14 +00:00
Bill Currie a3934f8841 more progress for qtv 2004-03-05 23:42:15 +00:00
Bill Currie 4b9d978d44 initial commit of sv_qtv stuff. doesn't do much of anything yet but I need
to clean up DirectConnect first
2004-03-04 00:13:20 +00:00
Bill Currie 37024a4419 final (?) cleanup of center printing. turns out there's no reason to keep
it in the renderer and every reason to pull it out (ok, some might
disagree:)
2004-03-02 03:55:18 +00:00
Bill Currie 39fc0fe721 more centerprint cleanup. 2004-03-02 00:58:13 +00:00
Bill Currie d3dfb0ebd1 better screen function list selection 2004-03-02 00:02:09 +00:00
Bill Currie 2955fac550 first step of centerprint/finale cleanup. fixes the misplaced text for
end-of-episode text
2004-03-01 23:47:39 +00:00
Bill Currie f52b4e8aec beginnings of qtv support 2004-03-01 23:45:59 +00:00
Bill Currie a378581570 fix a couple places where reliable messages were getting sent to bots.
fixes the segs on bot_add in fbxa
2004-02-26 23:15:58 +00:00
Bill Currie 9878966625 whitespace 2004-02-24 20:58:30 +00:00
Ragnvald Maartmann-Moe IV 3acb2091ad Whitespace, plus inline a few small functions. 2004-02-24 20:06:53 +00:00
Bill Currie b502cfc3ce move ClientReliable* from sv_nchan to MSG_Reliabe* in msg_backbuf so the
backbuffer code can be shared between qw-server and qtv
2004-02-22 05:40:08 +00:00
Bill Currie a520c715ef remove some debug code (oops) 2004-02-22 01:32:55 +00:00
Bill Currie 6e6df349e4 move the ucmd message code into a common qw lib (more will likely follow) 2004-02-21 05:09:02 +00:00
Bill Currie 1033f7e322 move qw/include/protocol.h to include/qw/protocol.h making life easier
qtv can now connect to a server (won't stay connected though)
2004-02-21 02:31:22 +00:00
Bill Currie f4a06f3a37 fix a blooper discovered by nano 2004-02-20 20:35:13 +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 35e29b8f1d qf-client and qf-server haven't existed for a /long/ time 2004-02-19 01:29:08 +00:00
Bill Currie 768de2df0e work with progs that use @self instead of self 2004-02-17 05:12:50 +00:00
Bill Currie 46a3f91146 check if the physent bbox (if there is one available) interects with the
bbox of the move and don't bother calling PM_RecursiveHullCheck if it
doesn't. Results in PM_RecursiveHullCheck getting about 5% of the calls it
used to (for overkill).
2004-02-17 04:29:26 +00:00
Bill Currie 825e1f88fd partially reworked PM_RecursiveHullCheck on the path to non-recursive.
Doesn't seem to be any slower than the old version (still there for now,
but not used) and might even be slightly faster already even though there's
not difference in call counts. Committing this now so I don't lose my work
(mostly to me getting frustrated and killing it:)
2004-02-16 07:17:48 +00:00
Chris Ison 6642686e33 removal of legacy MGL block_drawing variable. Fixed window restore bug that prevented the screen from being updated. 2004-02-15 03:40:50 +00:00
Ragnvald Maartmann-Moe IV d599b651e0 Palespace. 2004-02-09 04:16:59 +00:00
Bill Currie 920b80fd8c fix a goofed hardcoding 2004-02-07 00:19:51 +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
Ragnvald Maartmann-Moe IV cb94d50500 Improvements in time accounting. Accurate to +-0.5ms, instead of -1,0 like
others.

Based on Grievre's and zquake's code.
2004-02-02 21:18:11 +00:00
Bill Currie 58ce134a3c implement an optimisation Griever found. hopefully doesn't cause any
problems
2004-01-25 07:19:11 +00:00
Bill Currie 8651fabfbc bah, my findradius fix got stomped on :P 2004-01-25 07:12:01 +00:00
Bill Currie 76d7fc2b6d arg, forgot to terminate the arrays again 2004-01-25 05:27:28 +00:00
Bill Currie d9ac6dd99a d'oh, forgot to fix this in qw 2004-01-21 23:09:00 +00:00
Bill Currie 390ca99a92 first step to making qfdefs redundant. "standard" progs now get resolved
staticly rather than looking up the defs. "broken" progs should now work.
2004-01-21 08:09:47 +00:00
Bill Currie 6d02004ca8 Mike Gorchak's <mike@malva.ua> second (final for now:) QNX patch. renames
msg_t to qmsg_t.
2004-01-20 06:11:00 +00:00
Bill Currie e154c9add5 be consistent with WIN32 and _WIN32 (now all _WIN32) 2004-01-20 03:47:27 +00:00
Bill Currie 77b2942982 several libs can now get built as dlls in windows: console, gamecode,
gamecode_builtins, gib, image, modules, object, ruamoko and util.
2004-01-19 07:47:41 +00:00
Bill Currie 7ba6756810 temporary hack to avoid crashing when s_explod.mdl isn't precached but
explosions are requested
2004-01-17 07:14:42 +00:00
Bill Currie 249aee2e9f move the OO runtime support code from libQFgamecode to libQFruamoko where
it really belongs :)
2004-01-16 08:02:31 +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 aee1554fad fix a missing terminator found by Grievre 2004-01-15 23:05:56 +00:00
Bill Currie c0561cd834 disable the "don't download sounds with -nosound" feature until I get
things sorted
2004-01-08 01:02:35 +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 187cef1d28 make dist fix 2004-01-07 00:14:39 +00:00
Bill Currie cca1558688 should have compile tested. oops 2004-01-06 23:23:38 +00:00
Bill Currie 89e6b8b2e6 ensure ucmd_unkown and sv_cbuf->unkown_command always point somewhere sane 2004-01-06 23:04:14 +00:00
Bill Currie 133879f8fa provide builtin mappings for id (none, really), qf and ktpro/qwe (qw only),
add qwe builtin extensions to qw-server. provide sv_progs_ext to control
the builtin mapping. valid values are "id", "qf" (our old static builtins),
"qwe"/"ktpro" (either works. for ktpro mod support) and "none" (no
mapping). any other value is equivalent to "none".
2004-01-06 07:00:39 +00:00
Bill Currie acd54afff7 move to using a hash table for builtin number -> builtin lookup so sparse
ranges can be used efficiently. move the auto-allocated builtins to
0x10000000-0x7fffffff. should be more than enough :)

use static builtin tables ("nul" terminated) instead of a series of
function calls to add builtins to a vm. should be more memory efficient.
2004-01-06 05:51:09 +00:00
Bill Currie dfc83c1f5f add PR_PushFrame and PR_PopFrame so temp strings are easy to use for
parameters to progs functions.

double the progs stack sizes (call depth of 32? eek)

allow one extra call on the progs stack :)

misc minor cleanups
2004-01-05 07:10:32 +00:00
Daniel Anderson d9db1a0c04 Treat cs_server clients like non-client entities for GIB "frag" event 2004-01-05 00:48:41 +00:00
Daniel Anderson 85beae40f0 Added the missing null terminator for a reliable message send. 2004-01-05 00:25:58 +00:00
Bill Currie dfe7f263c7 new internal printf engine for progs, mostly thanks to Deek.
also a few cleanup bits
2004-01-04 07:42:43 +00:00
Bill Currie a533761770 Nuke PR_GarbageCollect as it's both redundant with the new temp strings
and wrong anyway (could free strings it wasn't supposed to).

Don't free the string pointed to by a strref since it's already been
implicity freed (whole memory space nuked). Fixes new map crash.
2004-01-04 02:03:30 +00:00
Bill Currie c917233165 make sure outputbuf's mem gets initialized (oops:) 2003-12-22 23:40:20 +00:00
Bill Currie e53967b346 --disable-static now works (thanks for the heads-up, raorn) 2003-12-22 20:51:08 +00:00
Bill Currie e56e566bca eek, had the entity center-point calculation wrong. thanks, grievre 2003-12-09 04:29:12 +00:00
Brian Koropoff 991fc06360 Garbage collection:
Moved from reference counting over to a mark and sweep method.  Objects
are now required to implement an allRefs method which returns a pointer
to a list of all other referenced objects.  How the list is maintained
is up to each object.  The retain/release mechanism still works; objects
with any references will not be garbage collected, even if the collector
thinks they should be.
2003-12-09 02:01:05 +00:00
Brian Koropoff e498b196fe Fix a bug with ArrayList_Deinit_f (tried too hard to be clever), and add
an incremental, reference counting garbage collector for QFobjects.  A
different kind of collector will eventually be needed to run once in a
while to sweep up cyclic structures.
2003-12-07 22:45:32 +00:00
Brian Koropoff 7598ab35fb Move the QF object system into it's own library, fix up the standard
classes.
2003-12-07 04:50:46 +00:00
Bill Currie 53e382d3f8 fix an incorrect parameter bug found by Grievre 2003-12-06 05:06:27 +00:00
Bill Currie a726e33bf1 mask off non-light bits from effects in CL_NewDlight as EF_FLAG1 etc
shouldn't affect light effects.
2003-12-02 23:42:09 +00:00
Brian Koropoff 55181621bd First commit of an experimental low-level object system. At some point
GIB will be reworked to use it, and hopefully Rua will also so that the
two languages can share objects, events, etc.

Warning: This uses quite a few hacks and tortured macros, it might cause
breakage.
2003-11-29 04:40:25 +00:00
Bill Currie 82975dfe1f send the correct number of bytes 2003-11-25 03:22:51 +00:00
Bill Currie 5a49e9fea4 fixed an uninitialized variable. took reordering operations a bit to do so 2003-11-21 20:04:16 +00:00
Bill Currie ce745c8078 better command output redirection handling: maplist over rcon should show
all (or most, there are limits still) of the maps on a server with many
maps.

move the optional progs funcs into sv_funcs_t and add UserInfoChanged,
ChatMessage and LocalinfoChanged callback support.

clean up PF_setinfo (and SV_SetInfo_f and SV_Localinfo_f) using shared code
where possible und to use the UserInfoChanged and LocalinfoChanged
callbacks.

add chat message callback to SV_Say. if it returns zero, normal chat
handling is done, otherwise it's assumed to have been handled by the progs.

provide a hook for unkown user commands. non-zero return means it's been
handled.
2003-11-21 06:09:21 +00:00
Bill Currie 886b766295 whitespace 2003-11-21 05:01:50 +00:00
Bill Currie 0b44c78259 handle PF_QF bit iff the server is actually a qsg 2.0 server 2003-09-24 04:01:34 +00:00
Bill Currie 96f052a5e9 fix misplaced [ ] in teamplay mode 2003-09-24 02:24:30 +00:00
Bill Currie 12a90e9233 remove redundant calls to COM_InitArgv 2003-09-22 23:17:47 +00:00
Bill Currie 84ea81a770 fix E_POINTER and E_FUNCTION 2003-09-12 23:12:21 +00:00
Brian Koropoff 687a0845b6 Introducing the GIB Object System (TM). This breaks scriptable HUD for now
and probably has enough bugs to leave the Orkin man scratching his head,
but it works and allows you to do neat things like write classes in GIB
(amazing!) and subclass builtin classes (which are Object and Thread at the
moment, Hash should be coming soon as a replacement for stem and leaf
variables).
2003-09-11 06:03:13 +00:00
Bill Currie 2b5a3753ca nuke QF/texture.h moving it's contents into QF/image.h (yay, finally, a
real home for tex_t:)
2003-09-04 18:59:39 +00:00
Bill Currie 0a8867fde9 replace all VectorSubtract (vec3_origin, ... and
VectorCopy (vec3_origin, ... with VectorNegate (... and VectorZero (...,
respectively. Should be a small speedup.
2003-09-03 22:17:04 +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 8868a9d0bd get rid of some unneeded defines and ifdefs 2003-08-28 23:26:59 +00:00
Bill Currie db3e98ce75 make the waterjumptime <-> teleport_time interface work as intended 2003-08-27 23:11:57 +00:00
Ragnvald Maartmann-Moe IV c2053fbfb1 Prettier particles! Renderer is now informed of sv_gravity changes in qw. Not
supportable without protocol changes in nq.
2003-08-27 22:20:03 +00:00
Bill Currie 0d438e255d allow server clients to be tracked while spectating 2003-08-25 01:11:23 +00:00
Bill Currie 8e0a464ad7 get server clients updated properly 2003-08-21 20:35:36 +00:00
Bill Currie fd433442fb allow server clients to be initialized properly (SV_Spawn) and send server
client info to connecting clients
2003-08-21 03:50:30 +00:00
Bill Currie 59d321ded5 link in the hash functions for progs 2003-08-20 22:37:49 +00:00
Brian Koropoff 83334ce633 In response to an apparent server-side exploit that has shown up on
execpc's ProzacTF server, info strings for other players are checked to
ensure that they contain the "name" key.  If the key is not present, it is
set to "user-%i [exploit]", where %i is the userid of the player.  Players
using this exploit should now show up on the scoreboard and users list
and be visible during gameplay.  Although this renders the exploit useless
against players using QF, the exact way in which it bypasses the extensive
checks of a player's name by the server needs to be discovered so that it
can be fixed.  The server in question uses a bastarized version of QF
0.5.2, so it's possible that the problem still exists in QF today.
2003-08-20 07:22:34 +00:00
Bill Currie 5d14abb354 send server client info to the clients 2003-08-18 06:26:09 +00:00
Bill Currie 323a6182fd move pcx.c and tga.c out of libQFutil and into libQFimage with the hopes
for more image formats :)
2003-08-15 16:19:10 +00:00
Bill Currie d77addf552 don't record frame times until we've actually `started' the demo (ie, don't
record times for frames timedemo doesn't count in its fps calcs)
2003-08-13 21:53:40 +00:00
Bill Currie 34d2e0163c improve the timedemo fps output a little 2003-08-13 16:08:06 +00:00
Bill Currie 70ec073904 use a private cbuf for map_cfg 2003-08-12 23:22:30 +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 1c4c58f1a1 add a "demo_quit" cvar to cause qf to quit automaticly at the end of a
timedemo to make automation of profiling easier
2003-08-08 17:33:34 +00:00
Bill Currie 6a94607d9d rename VectorMA to VectorMultAdd, add VectorMultSub and use it in a few
places. Not certain how much speed difference it makes :/
2003-08-08 15:25:53 +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 797dc5ccae oops, stuff_view 1 cell too narrow 2003-07-27 22:51:31 +00:00
Bill Currie 830fab2a39 show_fps now updates every 0.2 seconds and displays 10ths of an fps 2003-07-27 22:25:45 +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 0234988c46 fix an exploitable overflow (owwie) 2003-07-17 22:14:50 +00:00
Bill Currie 454aa5c603 more mailing list corrections 2003-07-12 21:50:22 +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 a9dbdb5b9b clean up Cvar_Info, removing redundant code and a potential overflow 2003-07-08 15:07:59 +00:00
Ragnvald Maartmann-Moe IV 5808d08858 whitespace. 2003-06-03 06:01:47 +00:00
Bill Currie 5bafde58d2 blah, failed to notice the info string was getting freed earlier 2003-05-30 21:22:30 +00:00
Bill Currie 42ade2c507 clear the player slots properly when disconnecting 2003-05-30 20:16:30 +00:00
Bill Currie 016743c3ab diff reduction and maybe a couple speedups 2003-05-29 04:49:34 +00:00
Ragnvald Maartmann-Moe IV 1c1e6e17c4 Clean up sv_pr_cmds.c, and sync up nq's copy. 2003-05-29 02:40:34 +00:00
Brian Koropoff a4bc588947 Draw PL on the scoreboard in the correct spot. 2003-05-26 01:41:58 +00:00
Bill Currie 9297d2b192 bah 2003-05-24 02:04:16 +00:00
Bill Currie dc5e6d5487 clean up mvd easyrecord auto-creation 2003-05-24 02:03:17 +00:00
Bill Currie c2c3a62956 nuke Qexpand_squiggle. instead, expand ~ to $HOME on qfs initialization and
cache the value.

don't call Qopen directly in the engine. instead call QFS_Open (generic) or
QFS_WOpen (write only, zip flag).

rework QFS_NextFilename to use a dstring (avoiding a potential buffer
overflow), support 10000 files and work from the top-level fs_userpath
directory. adjust QFS_WriteFile and QFS_WriteBuffers etc to suit.

make sw32 screenshots actually get written.

hopefully everything gets written to the right places :)
2003-05-23 17:17:01 +00:00
Bill Currie 460c8f7f0f mindHog's qfpython patch. GIB info string event callbacks and a compile fix
for broken x11 headers.
2003-05-16 16:17:24 +00:00
Bill Currie 4260f55759 make sure the rest of the server gets to run even if there's no network
input (though I fixed this for windows too)
2003-05-14 21:36:41 +00:00
Bill Currie 9b9c435e47 don't draw the shotgun icon in hud mode if it won't fit and crop the lg
icon
2003-05-10 04:20:21 +00:00
Bill Currie 31db390df5 rename cl_overlay_gravity to cl_scoreboard_gravity, rename the hud/sbar,
stuff from cl_* to hud_*, add hud_scoreboard_gravity to nq.
2003-05-09 20:30:50 +00:00
Bill Currie 4bb1095951 stock sbar and hud seem to be working in nq (fps back, too:) 2003-05-08 21:22:33 +00:00
Bill Currie c81b1b549d make the fps etc display move with changing viewsize 2003-05-08 15:12:46 +00:00
Bill Currie 6e103fe928 add cl_overlay_gravity cvar to control the placement of the scoreboard
overlay
2003-05-08 06:29:53 +00:00
Bill Currie 0a5f3c31eb ping/pl/fps/time now stays put and is now in the client rather than the
renderer (so nq is currently missing it)
2003-05-08 05:49:57 +00:00
Bill Currie 878c1c59ba hud works again 2003-05-08 04:13:42 +00:00
Bill Currie 5fb3b4e547 fix a warning and correct some vid.height usages 2003-05-07 21:10:37 +00:00
Bill Currie e03ad81425 reduce the code duplication in the deathmatch overlay code 2003-05-07 21:03:58 +00:00
Bill Currie 52f96e2e3b whitespace 2003-05-07 19:53:08 +00:00
Bill Currie 5e56e01790 qw now has centered scoreboard :) 2003-05-07 17:23:18 +00:00
Bill Currie 1fcf04b0ae get the score overlays working again (not `viewed' yet) 2003-05-07 16:35:54 +00:00
Bill Currie c939351276 non-hud status bar now using the view api. hud version currently not
working but that should be fixed soon :)
2003-05-07 15:58:15 +00:00
Bill Currie c903cfdb78 still more inline guff 2003-05-07 05:41:46 +00:00
Bill Currie 63c804310c more inline avoidance 2003-05-07 04:24:50 +00:00
Bill Currie fa670c30da make sure Net_LogPrintf can't get inlined, tell gcc it's a printf style
function and clean up the resulting warnings
2003-05-07 01:49:31 +00:00
Bill Currie ff299c347b add map to admin commands for DrSpliff 2003-04-29 21:45:57 +00:00
Bill Currie 18ae5b7513 compile fixes for the alpha 2003-04-28 21:02:03 +00:00
Bill Currie c6094b9cea mindHog's patch for making Hash_DelElement work the way he wanted it to 2003-04-28 19:55:03 +00:00
Bill Currie 0985c90ce9 hash.h:
write some docs on mixing (eg) Hash_Add and Hash_DelElement
sv_user.c:
	fix a warning
2003-04-28 16:04:22 +00:00
Bill Currie a43d20fffa mindHog's user command patch (with change to builtin name) making the
function generally available (eg, for his python plugin)
2003-04-28 15:56:09 +00:00
Bill Currie e732cf591d remove all references to OFS_* from the C code. only the macros in progs.h
use them now
2003-04-22 18:20:15 +00:00
Bill Currie eb099ae0d3 make qf gcc 3.3 clean 2003-04-17 00:01:48 +00:00
Bill Currie ce44d350b7 allow the server to run when there's no input 2003-04-16 15:43:55 +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
Brian Koropoff c168b40661 Added map::current and map::timeElapsed GIB builtins. 2003-04-13 20:31:06 +00:00
Timothy C. McGrath f61d0f0d6a Fixed a bug Drspliff pointed out that was causing people to be kicked from sensitive servers for 'faking console messages'.
Tim McGrath
2003-04-10 01:36:02 +00:00
Bill Currie b80357afda change _FOpenFile to take a dstring for foundname plugging a potential
buffer overflow.
2003-04-09 05:55:41 +00:00
Bill Currie 255a7522bd merge IN_SendKeyEvents and IN_Commands into IN_ProcessEvents 2003-04-08 18:45:12 +00:00
Bill Currie 25a7216b8c ent file support 2003-03-25 17:49:27 +00:00
Ragnvald Maartmann-Moe IV 5fb8aa07f3 Code style, people. Love it or leave it! 2003-03-21 21:25:44 +00:00
Ragnvald Maartmann-Moe IV 265edd1fef Small optimization. 2003-03-21 00:52:30 +00:00
Bill Currie df148a3b4c more packet log spam 2003-03-17 05:52:45 +00:00
Bill Currie 6621bbee36 don't spam packet logs accidently :) 2003-03-17 04:39:33 +00:00
Bill Currie 2173151560 get packet logging working with mvds 2003-03-16 03:17:50 +00:00
Bill Currie 0f119c7cdb don't bother lowercasing download filenames now that they're forced
lowercase during the precache stage
2003-03-13 16:33:29 +00:00
Bill Currie 2dd3fab209 force model and sound names coming in from the progs to be lowercase 2003-03-13 16:29:55 +00:00
Bill Currie 82c7867be6 white space 2003-03-12 16:34:26 +00:00
Bill Currie 661b812fac call QFS_Gamedir only if the gamedir actually changes 2003-03-11 05:58:06 +00:00
Bill Currie a565f2f9ea `document' the new client functions 2003-03-10 16:49:01 +00:00
Bill Currie 4c7daebe89 provide SV_UserCmd builtin so progs can emulate a client but use the
engine's physics code
2003-03-10 16:39:40 +00:00
Bill Currie 7bdf1bdb90 don't count server clients as clients 2003-03-06 19:06:10 +00:00
Bill Currie f70b1fbafd actually free the client when SV_FreeClient is called (oops:) 2003-03-05 18:19:32 +00:00
Bill Currie 6c028a57bb bot player stats seem to be working working 2003-03-05 03:56:50 +00:00
Bill Currie d788d02716 for now don't allow bots to survive map changes 2003-03-04 17:38:42 +00:00
Bill Currie 3e05400175 add SV_SetUserinfo builtin 2003-03-04 17:28:31 +00:00
Bill Currie 2310e94df8 fix userid setup 2003-03-04 16:00:57 +00:00
Bill Currie e131ec5885 fix the status seg 2003-03-04 07:44:22 +00:00
Bill Currie cee4846743 hmm, that segs :), but then, so does doing "status" while bots are going 2003-03-04 07:36:34 +00:00
Bill Currie a10704f99d boundscheck the client entity 2003-03-04 04:10:25 +00:00
Bill Currie 9fbbadb788 disable the disconnect events for bots as I'm not yet sure how I'm going to
do things
2003-03-04 04:03:02 +00:00
Bill Currie fc7324485e implement SV_AllocClient and SV_FreeClient builtins 2003-03-04 03:35:12 +00:00
Brian Koropoff 34f3970847 Added the "map" GIB event to qw-server. 2003-03-04 03:23:41 +00:00
Bill Currie c07891826a break out the client slot allocation code into a separate function 2003-03-04 01:36:30 +00:00
Bill Currie da3cac2b6a oops, didn't notice the lack of {}s 2003-03-03 21:46:41 +00:00
Bill Currie c52ce7f202 slight optimisation 2003-03-03 21:41:13 +00:00
Ragnvald Maartmann-Moe IV 2000954a2c Whitespace, and a workaround for show_* misplacement. 2003-03-03 19:20:44 +00:00
Bill Currie d469a06620 move the maxclients and maxspectators range checks into callbacks 2003-03-03 18:30:09 +00:00
Bill Currie 389542fda7 first step in creating an interface for the snagging of client slots by
the progs
2003-03-03 17:08:45 +00:00
Bill Currie 1a40e5b6b4 implement WriteBytes for qc 2003-03-02 03:25:47 +00:00
Brian Koropoff 15cc02f17c Added client::print, client::printChat, client::printAll, and
client::printAllChat GIB builtins.
2003-02-28 06:51:16 +00:00
Bill Currie a99c859034 "main" in progs is never called 2003-02-28 05:53:40 +00:00
Brian Koropoff e9b117379f Added client.connect, client.spawn, and client.disconnect GIB events. 2003-02-28 05:09:46 +00:00
Bill Currie d2edce37a4 give qc access to WriteCoordV and WriteAngleV 2003-02-28 04:59:40 +00:00
Ragnvald Maartmann-Moe IV e959df1692 Whitespace. Grr! 2003-02-25 03:56:58 +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
Brian Koropoff 8f8d866cdf Oops, forget this. 2003-02-16 20:16:22 +00:00
Brian Koropoff 760210dc7b GIB: Many bugfixes and cleanups. Added bitwise math operations, expansion
of leaf names in a stem variable via %var, the builtin functions 'count'
and 'contains', and an initial interface between qw-server and GIB to allow
querying of clients and their info strings.  Also cleaned up the chat event
interface a bit.  Renamed a few builtins.
2003-02-16 19:46:34 +00:00
Brian Koropoff d626575091 Fixed use of a dstring without allocating one. 2003-02-15 21:26:15 +00:00
Bill Currie a98d4c5125 first stab at configurable downloads 2003-02-15 00:05:22 +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
Brian Koropoff 3c522a83bc Various cleanups and bugfixes. Added proper line number reporting to
errors.  A few new builtin functions, such as slice::find and thread::list.
2003-02-14 08:06:01 +00:00
Bill Currie 8ff653a142 forgot to clean up the net headers 2003-02-12 19:41:44 +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 eaa82b1439 IPv6 compile fixes from doneill (slightly modded) 2003-02-11 05:59:08 +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 920b5b2a29 cvs ignorage 2003-02-10 21:09:54 +00:00
Bill Currie 6df2c9679b white space 2003-02-10 21:04:08 +00:00
Bill Currie 92fc8109e6 change the master timeout to 10 minutes. 5 is too tight as that's the
heartbeat time on a server
2003-01-31 04:56:11 +00:00
Bill Currie bf3da64c43 flush the output each log call 2003-01-31 04:49:31 +00:00
Bill Currie cd553342e6 give qw-master timestamped logging 2003-01-31 04:11:06 +00:00
Bill Currie b668134f25 reset the client's msecs when resetting the rest of the network stats 2003-01-30 20:31:44 +00:00
Brian Koropoff 1668dd5c1a Whoops, missed these. 2003-01-28 22:37:34 +00:00
Bill Currie 0ec386dc76 create the demo path `properly' 2003-01-21 22:19:07 +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 a4dfef63c3 make all files with rcsid include config.h 2003-01-14 20:18:29 +00:00
Bill Currie 3b9e7db882 fix the skins dowload location issue (not really to my satisfaction, but it
will do for now)
2003-01-10 23:07:04 +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 33365ef00d Hurricane's patch for correcting time kick. (Closes: #67) 2003-01-10 18:09:09 +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 d02d502d30 check for socklen_t evailability 2002-12-20 23:53:34 +00:00
Bill Currie dbd5b16883 rename the convenience libs to avoid problems with libx11 vs libX11 on
darwin (damn case insensitive file systems :P)
2002-12-20 23:40:47 +00:00
Bill Currie a84b6bba5d make stuff static that can be and nuke some useless stuff 2002-12-16 23:26:14 +00:00
Bill Currie 15655c23cd get snaps working properly 2002-12-10 18:24: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 05bee9dc59 Use Cbuf_Execute_Stack instead of Cbuf_Execute. This guarantees that GIB
scripts executed from server.cfg will be run immediately.
2002-11-30 21:12:45 +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
Bill Currie 8d35d67997 clean up the multiple definitions of the DF_* flags 2002-11-22 17:45:30 +00:00
Bill Currie a089934338 fix a really nasty wrong index bug that would cause SIGFPE when recording demos 2002-11-22 05:22:07 +00:00
Bill Currie ee30860cef fix a bunch of ;; typos 2002-11-20 21:44:04 +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
Bill Currie 836c469737 sys.[ch]:
handle SIGFPE and allow the registered signal handler to do recovery
	rather than bail
progs.h, pr_exec.c, pr_load.c:
	if pr_faultchecks is 1 (0 is default), handle division by 0 gracefully
	by loading the maximum representable number into the answer
	Closes: #58
the rest:
	kill the SIGFPE stuff
2002-11-13 19:26:44 +00:00
Bill Currie f561d25a84 show what console says 2002-11-11 21:29:05 +00:00
Brian Koropoff 0f71b02fd7 Changed the name of GIB builtins from string.length to string::length, etc.
Made a few miscellaneous cleanups and enhancements to builtins and changed
all the GIB scripts in CVS to reflect the new naming conventions.
2002-11-11 01:57:34 +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 864b181b99 d'oh, COM_FOpenFile could probably do with a re-design of its api :P 2002-11-08 03:27:05 +00:00
Bill Currie ec0273e3dc do a pre and post pass for maps/mapname.cfg and use maps_default.cfg if
maps/mapname.cfg doesn't exist.
2002-11-08 02:43:04 +00:00
Bill Currie 8d736d7424 uptime (via status) for qw-server and map time and auto map start for
nq-server
2002-11-07 16:43:05 +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 d605394a8d fix a nasty buffer overflow found by OptiMus 2002-10-25 21:07:20 +00:00
Bill Currie bbb4574f01 need skill, too! :P 2002-10-24 04:38:59 +00:00
Bill Currie 9298204208 support tonik's single player/coop qw port 2002-10-24 02:45:16 +00:00
Bill Currie 3f8920e5a3 apply Lorenzo Colitti's IPv6 mask patch (Closes: #57) 2002-10-23 22:55:28 +00:00
Bill Currie cfffd05c71 missed these for mvd writing :P 2002-10-23 02:44:42 +00:00
Bill Currie 65033cbe64 make no_pogo_stick 3 force friction whether or not jump is active 2002-10-18 17:47:31 +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 ce2cfbcf45 clear beam end time when beams expire 2002-10-11 22:13:40 +00:00
Bill Currie eb8302170d hmm, missed that one 2002-10-11 20:54:34 +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 c1cad316fd fix some missing windows files 2002-10-11 17:43:51 +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 5f8118ce1f bah 2002-10-10 03:35:45 +00:00
Bill Currie 5e13394afc rewrite the user matching to assume a clean number refers to uid rathern
than an leet matched name (Closes: #56)
2002-10-10 02:17:11 +00:00
Bill Currie 8591a4cddb print the current map time with the map name for "map" 2002-10-09 22:41:07 +00:00
Bill Currie 95d504fade make sv_maxrate changes effective immediately 2002-10-08 04:08:07 +00:00
Bill Currie 80d2f8e27d make it so the demo recorder and normal protocol use common code to
calculate the client stats
2002-10-07 22:15:19 +00:00
Bill Currie cb368e0b3a support writing the extended stats to mvds 2002-10-07 18:58:54 +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 a0f49816e5 cl_parse.c:
print the name of the last svc parsed when a badread happens
sv_ents.c:
	allocate enough space for the svc_nails2 nails
2002-10-06 04:30:50 +00:00
Bill Currie afad07b8e7 never print the rcon password given as it may be a legitimate password for
another server (ie, confused person :)
2002-10-06 03:54:54 +00:00
Bill Currie 9145388750 /never/ write to the message buffers when playing a demo. This avoids the
"SZ_GetSpace: overflow" messages when playing denis (especially mvd in 1st
person mode).
2002-10-05 04:52:09 +00:00
Bill Currie 6e015bba1a d'oh, forgot to fix the FIXME :) fixes the seg on demo record start when
more than 1 player is invovled
2002-10-04 03:36:51 +00:00
Bill Currie e698af0208 cut some spam 2002-10-04 03:02:38 +00:00
Bill Currie 212e40b54a mvd recording :) (thanks to qwex 0.165b and highlander) 2002-10-04 02:29:03 +00:00
Bill Currie 30c8646e70 bring in sv_demo.c from qwex. This is only the beginning of the mvd server
side support.
2002-10-03 21:00:35 +00:00
Bill Currie d5117e27ee read excess nails correctly for nail2 2002-10-03 15:10:29 +00:00
Bill Currie d70caac6d5 whitespace 2002-10-02 22:56:34 +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
Bill Currie 533a74aa75 don't segfault if the client player temp info key is null (can happen in
mvd)
2002-10-02 15:42:39 +00:00
Jeff Teunissen 510ac98c9b PF_Fixme(): better error message. 2002-09-30 16:47:41 +00:00
Ragnvald Maartmann-Moe IV eb54acf140 Whitespace. 2002-09-28 02:33:39 +00:00
Bill Currie 5397ca66ca bring back the timekick code but make it an alternative (default) to the
new timecheck code.
2002-09-27 03:32:20 +00:00
Bill Currie 6bf98db650 kill most of the diffs 2002-09-26 20:58:03 +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
Bill Currie d9eff16941 allow players to run down ramps normally when no_pogo_stick bit 1 is set 2002-09-14 03:34:33 +00:00
Bill Currie f7b4dffcc0 get larger player skins working in gl 2002-09-13 05:32:28 +00:00
Bill Currie e8baa18abd correct a spelling error 2002-09-13 04:31:10 +00:00
Bill Currie a6318a3baf enhanced no_pogo_stick control 2002-09-13 04:30:18 +00:00
Bill Currie 028202ce3f silence the MAX_PACKET_ENTITIES warning for general use 2002-09-13 00:58:42 +00:00
Ragnvald Maartmann-Moe IV 7bf16df448 More QSG2 work. 2002-09-12 22:09:55 +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
Brian Koropoff 7f4cd09e9d Removed the old timecheat protection and added a system that adjusts
time to what the server thinks is correct when too much inaccuracy
builds up.  This nearly eliminates all speed cheating, both normal and
reverse, except for a brief burst before the protection kicks in.  Might
need cleaning up/tweaking.
2002-09-12 04:57:40 +00:00
Bill Currie f0c96dd15c fix a segfault causing silly 2002-09-11 19:26:44 +00:00
Ragnvald Maartmann-Moe IV 0b47b60129 Whitespace. 2002-09-11 18:58:19 +00:00
Bill Currie 9f6f50699d remove vid_basepal, creating vid.palette (current palette) and host_basepal 2002-09-10 03:51:10 +00:00
Ragnvald Maartmann-Moe IV ceb264ce87 Make nq lightning handling match qw, which also gets some cleanups. 2002-09-09 20:02:52 +00:00
Bill Currie 4001d2574b be sure to use the correct key for allocating effects dlights on players 2002-09-09 16:26:39 +00:00
Bill Currie 82b2f30a20 actually check that the entities match before returning the overridden beam 2002-09-09 15:56:29 +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 2cd6b68669 fix a redefined #define 2002-09-06 21:59:02 +00:00
Bill Currie 67b01ca5ba cleanup the output of connectionless prints a bit 2002-09-04 19:13:45 +00:00
Bill Currie 5597dc2408 make maplist work over rcon 2002-09-04 18:56:53 +00:00
Bill Currie 4373e4b4de just bail from SV_Map_f if the requested map doesn't exist so play doesn't
get interupted.
2002-09-04 18:26:34 +00:00
Bill Currie 7af8e2952e zinx' klik mod makes heavy use of makestatic and that was causing the
singon buffer to overflow. call SV_FlushSignon before writing the static
entity data.
2002-09-04 15:12:05 +00:00
Bill Currie ea7576286a diff-- 2002-08-30 02:18:53 +00:00
Bill Currie f6729e35e5 use MAX_CLIENTS instead of 32 for MAX_PHYSENTS 2002-08-29 17:42:41 +00:00
Bill Currie d8c1c735a6 up MAX_PHYSENTS from 32 to (32 + MAX_PACKET_ENTITIES) (ie, 96). While this
will potentially slow down both client and server, player collision physics
will be more accurate as more entities will be clipped against (and the
client should never complain about physent overflow again).
2002-08-29 17:32:16 +00:00
Ragnvald Maartmann-Moe IV 92f3e230af Physics bugfix. 2002-08-29 15:42:37 +00:00
Bill Currie d15177988d we haven't sent heartbeats to the id masters by default for a long time 2002-08-28 21:13:13 +00:00
Bill Currie 3be502630c don't call SV_FinalMessage in SV_Error until networking has been
initialized so bogus error messages don't get printed
2002-08-28 21:12:22 +00:00
Bill Currie a7380fef66 nuke msg_suppress_1 in favor of Sys_DPrintf 2002-08-27 18:05:59 +00:00
Bill Currie bb1adf63a9 fix the command appended to f_reply message (so-and-so: Average percent
fullbright for all loaded skins is 4.9%+forward 101) and make the cl_freply
time check work closer to properly
2002-08-27 16:28:58 +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
Brian Koropoff 5595cb848b Blue armor? Guess I shouldn't code too late at night... 2002-08-26 01:10:02 +00:00
Brian Koropoff 876eaa467c Added a few useful builtins and began adding GIB hooks into quakeworld.
The player global branch variable is now updated with useful information
and the location.get builtin is available to return the current location
of the player based on loc files.  Fixed a bug with zooming out in zoom.gib.
2002-08-24 05:14:46 +00:00
Ragnvald Maartmann-Moe IV 0085cd698f Lots of whitespace in sv_user.c, plus fix sv_timekick help strings, and up sv_timekick_fuzz from 15 to 30 ms. 2002-08-22 23:04:44 +00:00
Bill Currie 498eac3e90 hmm, missed that one 2002-08-21 03:57:36 +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 099e2739b5 various msvc fixes thanks to muzzy (hope he doesn't give up:) 2002-08-20 19:16:11 +00:00
Ragnvald Maartmann-Moe IV c91f1a2aea Rename Length to VectorLength. 2002-08-20 02:22:40 +00:00
Bill Currie 2b1fd8e8c0 fix the menu keybinding not working bug 2002-08-19 02:48:38 +00:00
Bill Currie f068b47c0c complain when MAX_PACKET_ENTITIES gets hit to see if this is our problem 2002-08-15 21:11:57 +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 0ebaa9834b fix a vim snafu 2002-08-15 03:22:58 +00:00
Bill Currie bfd02b6412 mess around with the builtin comments 2002-08-14 22:33:10 +00:00
Ragnvald Maartmann-Moe IV 520a3c0a90 Tiny speedup, cleanup. 2002-08-14 10:49:38 +00:00
Bill Currie ff02dfbbbc make the sdl clients link reliably (some versions of binutils don't cope well
with no .o files)
2002-08-12 16:42:26 +00:00
Ragnvald Maartmann-Moe IV a69b172f6f Cache grappling hook beam model loading, should speed up CTF beam handling. For mods with no beam model, wastes a pointer on a lightning bolt model. Better than crashing... ;)
Also copy the sound effects LUT for spikes into nq, which I never got around to.
2002-08-10 02:53:44 +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
Bill Currie 1354975692 clean out some unneeded includes and fix up model_t for sun (again:P) 2002-08-08 22:24:02 +00:00
Bill Currie ad03adb133 fix a couple of sillies with sdl 2002-08-08 01:47:32 +00:00
Bill Currie 0963c2476d improved server logging. "logfile" is gone from qw-server to be replaced
with "sv_logfile" and thus giving nq-server logging as well.
2002-08-07 18:46:53 +00:00
Bill Currie 64b608b20d put *sys_sdl.c into a lib so it doesn't get compiled more than once and do
more macroizing
2002-08-07 18:20: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
Ragnvald Maartmann-Moe IV e56404d242 Use LUT instead of case for spike sound effects. Faster and more compact, though less legible. 2002-08-06 19:46:13 +00:00
Bill Currie bd9092a626 per map config files (eg, maps/start.cfg for maps/start.bsp) 2002-08-06 05:45:03 +00:00
Bill Currie abf1ef37dc convert the flag offset calculation from switch to a lookup table. this
should be a touch faster avoiding the extra jumps
2002-08-06 03:52:38 +00:00
Ragnvald Maartmann-Moe IV f0be492c75 Optimize CTF flag handling. 2002-08-03 17:20:07 +00:00
Brian Koropoff cf48363c6e More of GIB done: builtins, functions, various cleanups, math, etc. 2002-08-03 06:04:00 +00:00
Brian Koropoff 3c3844d2ac Checked in the beginnings of GIB mark III and modified qw-server to use
it for its console.
2002-08-02 04:07:25 +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 a13a2283ae forgot to remove this 2002-08-01 19:49:52 +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 439f9838d3 Whoops, missed some stuff that needed to be in idparse.h 2002-07-31 22:13:15 +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
Ragnvald Maartmann-Moe IV c4cb25a83c LOTS of cleanups. Couple little optimizations, plus add `cl_showscoresuid 2` to show both pings AND uid. 2002-07-29 17:36:01 +00:00
Ragnvald Maartmann-Moe IV 4d74b80a38 Dead code removal. 2002-07-27 02:50:41 +00:00
Ragnvald Maartmann-Moe IV 227491d929 Remove cl_predict_static, it doesn't need a cvar to control it anymore. Also some minor related cleanups. 2002-07-27 00:44:54 +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
Ragnvald Maartmann-Moe IV 587de27849 Another step towards QSG2 compliance. 2002-07-25 14:43:36 +00:00
Bill Currie de22355371 use P_* for params and R_* for return values in builtins code 2002-07-24 21:42:33 +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
Ragnvald Maartmann-Moe IV 0d95bc71ff Fix cl_predict_static default! 2002-07-15 09:29:50 +00:00
Ragnvald Maartmann-Moe IV 6cef69545e Whitespace, prune dead code. 2002-07-07 02:33:00 +00:00
Bill Currie 7e052a5cc7 certain standard user commands (eg, say) can now be overriden by the progs,
but only once (ie, it's an error for the progs to try to add a command twice)
2002-07-05 21:15:19 +00:00
Bill Currie e85b3a3d97 blah, not all automake versions support that 2002-07-05 07:10:39 +00:00
Bill Currie a918790c2d evil hack, but this gets around the issue of libQFcsqc wanting the renderer 2002-07-05 07:05:52 +00:00
Bill Currie b4f9652535 give the server progs access to the Cmd api 2002-07-05 06:55:38 +00:00
Bill Currie cb814165f8 allow progs to register user commands (but not override any of the standard
ones (yet))
2002-07-05 06:43:47 +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 c8fcdd5813 Re-enable rendering lights on the player you are viewing from... 2002-07-03 00:37:28 +00:00
Ragnvald Maartmann-Moe IV 1478dcd9c9 Prune dead code. 2002-07-02 21:37:22 +00:00
Ragnvald Maartmann-Moe IV e1854315ac Clean out DDActive, except from -mgl, which isn't supported ATM. Clean up vid_mgl.c comments and dead code a bit. 2002-07-02 20:34:51 +00:00
Ragnvald Maartmann-Moe IV 5e5fdb7bc2 Kill MSG_WriteChar. 2002-07-02 19:13:53 +00:00
Ragnvald Maartmann-Moe IV ec5440fccc Whitespace, plus a sprinkling of FIXME markers... 2002-07-02 18:35:36 +00:00
Ragnvald Maartmann-Moe IV 1ca1154964 Speed up client nail packet parsing. 2002-07-02 18:07:51 +00:00
Ragnvald Maartmann-Moe IV aeab38fe4f Minor cleanups. 2002-06-30 16:19:37 +00:00
Ragnvald Maartmann-Moe IV d2dd6db51f More nail speedups for qw. 2002-06-29 18:28:32 +00:00
Ragnvald Maartmann-Moe IV 2a3c31edbe More nail fixes, more MSG_* cleanups. 2002-06-29 03:25:25 +00:00
Ragnvald Maartmann-Moe IV 1555324e0d Whitespace, and fixes for SV_EmitNailUpdate. 2002-06-28 02:11:13 +00:00
Ragnvald Maartmann-Moe IV 00d72be48d Whitespace. 2002-06-26 06:33:00 +00:00
Bill Currie 8ddca92dd9 fix a few allskins bugs 2002-06-25 17:07:52 +00:00
Chris Ison 70d8026067 Removing -3dfx's dependancy on clide 2002-06-24 15:56:01 +00:00
Bill Currie a83ecbd23a make sure we don't get stuck in the console when the server is in
intermission mode. As far as I can tell, it's pure luck wether the
svc_intermission comes before or after the first pass through the prediction
code, and if it comes before, the prediction code will never run and thus
never realise that it's ok to start rendering, so force the issue if in
intermission mode.
2002-06-21 05:15:16 +00:00
Bill Currie e5c470d5e4 realtime should not be affected by pause and also should not be used for
physics and progs, that's what sv.time is for. Things seem to work nicely,
including map changing, and this /should/ make long uptime servers work so
long as the map gets changes occasionally.
2002-06-20 16:38:16 +00:00
Bill Currie 7ab3095024 back out Misty's realtime reset work. It did achieve its goal, but winding
realtime back caused the problems with clients not reconnect on map change
and after my preliminary mucking around with time, I'm convinced there's a
better way.
2002-06-20 16:15:27 +00:00
Bill Currie 8234988835 yet more cleanup 2002-06-19 23:16:41 +00:00
Bill Currie a397ef953a Nuke Netchan_AckPacket because it didn't really achieve its goal ('twas a
server bug anyway), broke qizmo (not that I really care: that's still qizmo's
bug) and (most importantly) broke recording demos across map changes.
(Closes: #14)
2002-06-19 19:58:36 +00:00
Ragnvald Maartmann-Moe IV a246015053 Order of operations fix for R_AddEfrags. 2002-06-19 17:32:39 +00:00
Bill Currie f1ced33e92 a little more cleanup 2002-06-19 17:16:13 +00:00
Ragnvald Maartmann-Moe IV 1ebc5e6fa1 Whitespace. 2002-06-19 17:01:31 +00:00
Bill Currie 5e9baaa7c2 optimise PF_aim for when sv_aim is >= 1 or when the client's noaim is 1 2002-06-19 16:03:01 +00:00
Bill Currie b4d7f0ec96 move the pps code into it's own function 2002-06-19 05:03:24 +00:00
Bill Currie 85a6c5aa06 remove a redundant call to IN_Move 2002-06-19 04:11:27 +00:00
Bill Currie 5052e3db1f add qsg support for players and actually send EFFECTS2 and FRAME2 for
packet entities
2002-06-19 02:55:57 +00:00
Ragnvald Maartmann-Moe IV d2fadb2978 Temporary workaround for invisible players. 2002-06-18 23:50:53 +00:00
Ragnvald Maartmann-Moe IV c8bc5dfb4c QSG2 glows almost working. Plus lots of typos killed. 2002-06-18 21:41:24 +00:00
Ragnvald Maartmann-Moe IV 632683e703 Change `sv_maxrate 0` to unlimited. Change default to 10000. Remove forced ceiling of 10000. 2002-06-17 16:18:34 +00:00
Ragnvald Maartmann-Moe IV 3900c75cbb Spelling correction in printf. 2002-06-17 05:40:56 +00:00
Bill Currie 9482c151c2 fix the missing view model 2002-06-14 07:55:19 +00:00
Bill Currie c23a74ecd9 fix the recvfrom address size 2002-06-12 20:26:30 +00:00
Ragnvald Maartmann-Moe IV 2da6bd4907 Rename cl_nopred to cl_predict, cl_nostatpred to cl_predict_static, and disable prediction of static players by default. 2002-06-12 04:45:21 +00:00
Ragnvald Maartmann-Moe IV bc4c4588cc Minor cleanup. 2002-06-10 23:05:29 +00:00
Ragnvald Maartmann-Moe IV dd52072c9c Whitespace. 2002-06-10 23:04:34 +00:00
Timothy C. McGrath ee3f85cf55 Whoops! I got slap happy with ()'s. I'll learn, just let me make more
bugs ;)

Tim McGrath (Misty)
2002-06-09 02:44:11 +00:00
Timothy C. McGrath 814b1b5f2b Reworked logging and heartbeats so they use realtime again, instead of
directly calling sys_doubletime () - managed to remove six calls. Proboably I
should look through the code some more and find more ways to remove more calls
... The server works fine with them on my system as is, but I've gotten the
impression from people in the know that spamming the clock this often is bound
to cause non x86 arches to have problems.

Tim McGrath (Misty)
2002-06-08 23:29: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
Bill Currie ebfdbd9285 the fpu manipulation stuff seems to be better off in the one place that
actually uses it...
2002-06-07 15:09:20 +00:00
Bill Currie 4e07810f0d a little cleanup of unneeded lines 2002-06-07 14:44:02 +00:00
Ragnvald Maartmann-Moe IV ceb73449bb Order of operations cleanup, QSG2 alpha is now colormod[3] in entities. 2002-06-07 11:25:47 +00:00
Ragnvald Maartmann-Moe IV 90f4bf5fa7 Improve dlight flag combination behaviors, plus some more dlight initialization cleanups. 2002-06-07 05:21:53 +00:00
Timothy C. McGrath b552aceced This should fix bans and heartbeats to work with realtime resets.
Also of note, I found a line I missed for logging from the last checkin. Doh.

Did not test heartbeats, although the code is so dead simple it ought to
function.

I did not test logging, although the code is rather simple so unless I missed
something, it ought to work this time. ;)

Tim McGrath (Misty)
2002-06-06 23:38:35 +00:00
Timothy C. McGrath c848bf5c0c Fixed logging to work with realtime resets.
Tim McGrath (Misty)
2002-06-06 23:15:26 +00:00
Timothy C. McGrath bd82405643 Fixed automatic muting/mute to work properly with realtime resets.
Timothy C. McGrath (Misty)
2002-06-06 23:05:57 +00:00
Timothy C. McGrath 8f2b541b25 This fixes cuffs so they work with realtime resets.
Tim McGrath (Misty)
2002-06-06 22:41:34 +00:00
Ragnvald Maartmann-Moe IV f6c6d9f03e Add EF_DIMLIGHT to qw, make it work identically in nq. 2002-06-06 04:14:23 +00:00
Timothy C. McGrath 25ec0b8efd I figured out why realtime 0 caused progs to crash }:) ph33r me. Or
not. Your choice.

if sv_frametime is less than or equal to zero, progs does not enjoy life.
Don't make progs suicide, join the > 0 club today!

Tim McGrath (Misty)
2002-06-06 00:32:04 +00:00
Ragnvald Maartmann-Moe IV 46949068a2 Check return value on R_AllocDlight. Small optimization, people cutting r_dlight_max heavily should like it. 2002-06-05 22:07:38 +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 0f9adc182d win32 compile fixes 2002-06-04 16:17:10 +00:00
Timothy C. McGrath 6ead7c9ad4 Removed an unneeded check now that realtime = 0 in sv_init.c while map is
loading went byebye.

Tim McGrath (Misty)
2002-06-03 23:11:09 +00:00
Bill Currie 4039452297 more sys cleanup. server consoles may be broken for non-curses. 2002-06-03 19:11:48 +00:00
Jeff Teunissen b1ccfce60a Remove the resetting of realtime -- there's a better solution coming, and this
breaks a lot of stuff subtly.
2002-06-03 03:01:46 +00:00
Bill Currie f00e892d4e mingw gcc 3.1 is freaking weird 2002-06-02 05:27:32 +00:00
Timothy C. McGrath 9a18bda805 Gee, I seem to have had time reset *after* progs was loaded. ...
Fixed. This was dumb.

Timothy McGrath. (Misty)
2002-06-02 05:20:42 +00:00
Bill Currie 3b7ddfb22a fix a silly typo 2002-06-01 03:04:11 +00:00
Bill Currie 9630a23391 more Sys_* cleanup 2002-06-01 03:00:13 +00:00
Bill Currie fc0bb7e175 move Sys_DebugLog 2002-05-31 22:50:43 +00:00
Bill Currie e8026d9c76 touch, think and blocked now support methods
also a little whitespace cleanup
2002-05-31 21:05:58 +00:00
Bill Currie cf9e1de5a6 sv_progs_zone controls the size of the zone for the progs. defaults to
256kb (64k `globals').
2002-05-31 15:27:56 +00:00
Bill Currie c25051e60e link the obj runtime into the servers' progs engines 2002-05-31 15:04:23 +00:00
Bill Currie 7a3b63418b `adequate' temporary fix for r_lightmap_components 1 2002-05-28 04:11:40 +00:00
Bill Currie 37335f4ec3 alpha doesn't like 0 for va_list :/ 2002-05-28 00:02:59 +00:00
Bill Currie 7ebede0517 don't run a physics frame if sv_frametime is 0 2002-05-27 20:49:16 +00:00
Timothy C. McGrath 9666243498 Fixed my mistake - Had added a bracket which caused physics only to be
done every maxtic instead of every *mintic* which is what it was supposed
to be doing. Ooops.

Also minor whitespace cleaning in sv_init.c

Tim McGrath (Misty)
2002-05-26 20:30:12 +00:00
Timothy C. McGrath 8ebd2c6243 This hack makes realtime get reset on map load (in sv_init.c, set to 0)
and also prevents old_time in sv_main.c from getting screwed up in the head
and pausing the physics indefinitely (check and see if there is a faster way
to do it :)

What does this let us do? LEAVE THE SERVER RUNNING! Imprecision due to the
server being on for long periods of time should now no longer be a problem,
so long as you have a map rotation going at least once a day. :)

I plan on committing updated versions of my glspeed cfgs next, and then
looking at timeleft - just to make sure when sys_dead_sleep is 1 it can't
overflow accidentally.

Tim McGrath (Misty)
2002-05-25 21:54:41 +00:00
Bill Currie 030b8a7a05 add ' fps' to the std deviation line 2002-05-24 02:59:10 +00:00
Bill Currie 33e055209e Semi-major (more than minor:) progs convenience macro cleanup. There will
be more to come.
2002-05-22 22:35:37 +00:00
Bill Currie 69c6bb767b forgot to fix the server error printing 2002-05-21 21:06:27 +00:00
Bill Currie fe866e264e hopefully fix the nq-wgl crash 2002-05-14 21:30:23 +00:00
Bill Currie 6a5bbf6f0a memory allocation checking cleanup 2002-05-14 06:37:28 +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
Bill Currie 6240c62cec this should fix the problems with building the master server on bsd systems 2002-05-13 21:53:52 +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 c04785fe0f move sys/types.h 2002-05-10 18:39:59 +00:00
Bill Currie b93f37fb00 a nother tiny optimisation: no nead to recalculate non-player beams every
frame
2002-04-27 04:08:30 +00:00
Bill Currie 8a8e62f4c2 turns out that beams coming from the player entity get their start position
updated which can cause the beam to shrink which can cause lightning ents
to get stranded.
2002-04-27 03:22:09 +00:00
Bill Currie a1c6547f16 when comparing addresses, it helps if the /whole/ address is compared :P 2002-04-26 16:05:24 +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 0deb11eeae this might fix the lightning bug (produces better code anyway) 2002-04-25 19:04:25 +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 13071a2d23 Clear up some comments. 2002-04-25 12:53:42 +00:00
Jeff Teunissen 6126eeeb1d Clarify the meaning of the watervis serverinfo/Cvar in the server help 2002-04-25 12:52:11 +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
Bill Currie 2b2c0401cf stuff player, beam and explosion entities into the map (rather than
building the render entity lists directly) so they get vis-clipped. The
benefits of this to newer gl cards/drivers or sw is negligable, but is a
pretty serious boost for the voodoo2 (~24%).
2002-04-25 04:30:03 +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 44a905e98c forgot to delete the (commented out) calls to Cmd_Process 2002-04-20 03:22:14 +00:00
Bill Currie 4ccc9d6322 dstring.c dstring.h:
add dstring_replace. this replaces a string of lenth rlen at position
	pos with data of lenth len, growing, shrinking and shuffling data as
	appropriate. At this rate, the dstring `class' will get buffer gap
	editing capabilities :)
cmd.c:
	Cmd_TokenizeString builds cmd_active_buffer->line again.
	Cmd_Process bails out instantly if cmd_active_buffer is a legacy buffer
	and uses dstring_replace to modify the parameters in
	cmd_active_buffer->line. This last change results in drastic
	simplification (and accuracy) of the commandline reconstruction code,
	both in Cmd_TokenizeString and Cmd_Process.
2002-04-19 22:54:27 +00:00
Bill Currie 1ff8c715b9 currently, Cmd_Process needs to be called after Cmd_TokenizeString, even
for legacy buffers. I'm not terribly happy with this, but it fixes the
broken "say" problem.
2002-04-19 21:18:25 +00:00
Bill Currie 97029c0689 rearrange the svc_stufftext code so stuffbuff doesn't even get allocated if
it's not needed. This should speed things up fractionally for well behaved
mods/servers that send atomic svc_stufftext packets (ie, always ending in
\n).
2002-04-19 17:58:52 +00:00
Brian Koropoff ea3c2f0d78 Changed stufftext behavior so that commands are built up until a \n is
found at the end of the string.  This works around a stupidity in some
servers where stufftext commands are sent in pieces and might not reach
the client before execution occurs, resulting in parse errors.
2002-04-19 06:26:08 +00:00
Bill Currie d4cc899d33 even id has that blasted bug :/ 2002-04-16 17:18:28 +00:00
Bill Currie ed0342e996 clean up the mess of {send,recv}msg vs {sendto,recvfrom} 2002-04-15 19:06:25 +00:00
Bill Currie 4ac2fc0a52 add the -b dotted.quad option so qw-master can bind to a specific address.
Useful on multi-homed machines where either you want qw-master to listen on
only one address or your operating system is lame.

While (currently) ugly, compiles for win32 again.
2002-04-15 18:13:17 +00:00
Bill Currie 9fa9f6af52 need to explicitly include sys/uio.h on older libc 2002-04-15 14:35:10 +00:00
Bill Currie 599e0f4b0a make sure reply packets go out the same interface they cam in on.
This breaks win32 builds :/
2002-04-14 03:44:16 +00:00
Bill Currie c310cd2235 correct some email addresses 2002-04-12 17:54:12 +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 0d525189f4 fix some problems with error printing, especially when using the curses
console
2002-04-10 21:03:02 +00:00
Bill Currie 76d004f9cf fix confim_quit 2002-04-09 17:00:39 +00:00
Bill Currie 63909922d7 damn sun's model_t :P 2002-04-07 05:03:54 +00:00
Brian Koropoff 676bf39d9d Beautified GIB, improved looping and backtraces slightly. Old buffers are
now recycled, not freed.  Fixed some bugs in exp.c.  Ready to add embeded
functions (read: function calls with return values) and for loops.
Probably some other misc. fixes, I tend to go on debugging streaks.
2002-03-27 06:24:19 +00:00
Robin Redeker 264e9b1617 Added teamname to the playerconfig dialog.
Made noskins a archived var.
Added a network menu.
-> just realized, that menu-code is still to blown
and still sucks too much. i am thinking about a
more templated menu-code. (tanwha: i will design something nice ;)
2002-03-20 16:13:32 +00:00
Bill Currie e386a02292 make sure unused player slots are skipped when linking (should fix elmex'
segfault)
2002-03-15 16:49:40 +00:00
Robin Redeker 54037f1115 Fixed cl_fraglog and fs_fraglog cvar for being archived.
Fixed fraglogging when playing demos.
2002-03-15 13:31:05 +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 777495e069 hopefully fix our rocket trail problem 2002-03-14 21:33:56 +00:00
Robin Redeker 706de39c06 Made fraglogging switchable. And added it to the features-menu.
cl_fraglog is the new cvar for toggling fraglogging.
2002-03-14 19:41:49 +00:00
Bill Currie 33513ce67b demo autorecord patch from RvB 2002-03-14 18:48:04 +00:00
Robin Redeker 650912e75a Added my fancy automatic fraglog to the qw-client.
Cvar fs_fraglog is a new cvar for the filename of the fraglog (default: qw-score.log)
Any devel should take a look at qw/source/cl_parse.c and qw/source/sbar.c to verify
the place where the function is placed and called, i am not shure if its correct there.
2002-03-14 15:43:08 +00:00
Bill Currie 6aa4a690d6 demo auto-naming patch from RvB 2002-03-13 18:09:33 +00:00
Bill Currie 7c3f58e08e this should fix elmex's segfault 2002-03-12 19:44:10 +00:00
Bill Currie 87e4148ffc fix the client getting stuck trying to download (eg) "skins/ .pcx" 2002-03-11 18:47:14 +00:00
Brian Koropoff e0e9084ad7 Merged in the new command parser. No major bugs or incompatibilities could
be found.
2002-03-05 21:51:12 +00:00
Brian Koropoff 8d124f9c2b Implemented variable substitution and did various cleanups to the parser.
Changed Cmd_TokenizeString to accept a flag that controls the application
of filters (tags, variables, escape characters) to the tokens and modified
a few places in the source that called it.  Added a secondary command
buffer that is parsed without filters for legacy command support.
Currently, it is only used for commands stuffed into the console from the
server.  It is hacky, and I hope to eventually generalize the console
interface to support any number of buffers and audit the rest of the code
to recognize it.  For now, the legacy buffer at least keeps escape
character parsing from destroying info strings.
2002-03-03 23:28:57 +00:00
Brian Koropoff f78ec56975 Added escape characters, the <i> tag to ignore tags enclosed within it, and
generally cleaned the parser up.  If a line begins with |, it will be
stripped off by the tokenizer and no tags or escape characters will be
processed.  Commands stuffed into the console from the server are prepended
with | to ensure backward compatibility.  This can also be used anywhere
backward compatibility is needed, such as where info strings are stuffed
into the console, or as an alternative to using escape characters in the
entire string.
2002-03-03 08:29:28 +00:00
Bill Currie 26d7463be7 the majority of raptor's sgi build patch. I'll look at the last two bits
(server.c and vid_sdl.c) later.
2002-03-03 06:03:51 +00:00
Bill Currie 5d3830eeb1 move SV_SetMoveVars 2002-02-26 07:32:23 +00:00
Bill Currie 6ba5e823b2 use sv_gravity->value instead of movevars.gravity 2002-02-25 23:11:39 +00:00
Bill Currie 3e4c200430 more evil hacks to get nq's and qw's sv_phys.c similar. 2002-02-25 22:57:17 +00:00
Bill Currie 676527a0d3 if the velocity is 0, don't bother clipping it. 2002-02-25 18:40:51 +00:00
Bill Currie da1f9fcf44 cut&paste + 1am = crippled quakeguy. d'oh :P 2002-02-25 17:41:21 +00:00
Bill Currie 9ea013888b eliminate GetEdictFieldValue, mostly merge SV_AddGravity, and clean up
some whitespace in sv_phys.c
2002-02-25 07:44:17 +00:00
Bill Currie cd29f8b9a0 remove an unneeded prototyp 2002-02-25 06:34:06 +00:00
Bill Currie d5ed3bea75 when touching entities, it is possible for the next linked entity to be
freed, and thus unlinked. when this mappens, make sure the pointer to the
next entity to be touched gets updated appropriatly.
2002-02-25 03:24:46 +00:00
Bill Currie 8e31211266 don't link in a MOVETYPE_NONE edict that has freed itself via its think
function.
2002-02-25 03:22:32 +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 96d3a997c9 bring sv_phys.c closer to being mergable. I've temporarily(?) disabled
Maddes' max velocity `fix' (yeah, it's physicly correct, but...). I'll
probably cvar it.
2002-02-22 05:28:17 +00:00
Bill Currie 5a1c0af8ca more cloning :) 2002-02-20 20:53:41 +00:00
Bill Currie 87cb9647ab reduce the fluffy diffs 2002-02-20 20:21:08 +00:00
Bill Currie c9432fd92d remove unneeded stuff 2002-02-20 20:20:17 +00:00
Bill Currie 8ee5acb208 redo Sys_Error so it's more usable throughout quake 2002-02-20 19:22:52 +00:00
Bill Currie ea79349c2d nq world.c and qw world.c are now identical ignoring the $Id line 2002-02-20 18:35:49 +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 234305f0ab make sure networking is initialized before doing /anything/. this should
fix the host lookup failurs for win32 when using -f.
2002-02-13 17:58:30 +00:00
Bill Currie 2c1173aadf totally zap a client slot when the server sends an svc_updateuserinfo with
a blank info string as the only way this should ever happen is when the
server is dropping the relevant client so our client might as well drop it
too.
2002-02-13 17:52:53 +00:00
Bill Currie f1ea286a44 don't bother writing client info for unused client slots. If demo
compatability breaks, this is one place to check for why (but I don't think
it will).
2002-02-13 17:50:47 +00:00
Bill Currie 2e8f780e03 return "" from PF_infokey when the client the key is being requested from
has been dropped. This fixes a nasty crash at the end of a match in tf 2.8+
2002-02-13 05:49:24 +00:00
Bill Currie b4000200e3 move the getopt files from qfcc/source to libs/util, link qw-master against
libQFutil and enable the option parsting in qw-master for win32.
2002-02-12 17:44:41 +00:00
Bill Currie a9547414f3 compile fixes for win32 2002-02-12 04:17:31 +00:00
Bill Currie 6f7b3fa0ef more magic number nukage and add a couple comments 2002-02-11 21:28:18 +00:00
Bill Currie 7c0d8f2345 remove some evile magic numbers 2002-02-11 21:23:28 +00:00
Bill Currie 6c6b8ca4c3 at rxr's request, allow the master server to read in a static list of
servers (qw-master -f servers.txt). These servers can not be removed from
the master server without editing the file and restarting the server. The
format of the server list file is a simple line-by-line list of the servers'
addresses and their port (optional: defaults to 27500):

servername([ :]port)?

one per line.
2002-02-11 20:50:54 +00:00
Bill Currie 0ea713eda4 redo the progs loader to allocate all the memory needed for progs in one
shot, allowing for caller specified alloc and edicts and zone memory sizes.
(progs + edicts + zone).
2002-01-29 20:53:44 +00:00
Bill Currie 2aa2066019 FPH column for the score list from RvB 2002-01-27 21:19:29 +00:00
Bill Currie 7dc9a93d46 clear the download name on failures 2002-01-23 19:01:19 +00:00
Bill Currie e8f6fced0b call BI_Init in the clients 2002-01-20 04:10:36 +00:00
Bill Currie 14ac3acc17 add a builtin (gametype) for detecting the, well, game type (ie, netquake
or quakeworld) which just returns the apprproate string. the single player
menu is now acessable in nq but not qw :)
2002-01-20 03:09:03 +00:00
Bill Currie 39d432b6a6 make sure force_commandline in the console data gets set appropriatly 2002-01-20 00:04:50 +00:00
Chris Ison 60e1b2caf3 fixed 3dfx not building due to mis-named lib 2002-01-19 23:06:28 +00:00
Bill Currie 786a88ba25 blah, bloody separate LDADD and DEPENDENCIES. well, this'll fix 'em :P 2002-01-19 05:45:48 +00:00
Bill Currie 6af9a5d8e6 make the builtins an array of pointers so the hash table doesn't get royally
screwed up
2002-01-19 03:31:51 +00:00
Bill Currie 10acad1ee4 first tie-in for the renderer (Draw_Pic: the interface will likely change
to better match the real interface, but this will do for now)
2002-01-18 22:35:46 +00:00
Bill Currie bb96a5b736 first use of client side QuakeC :) (and having more than one progs instance
seems to work, too). The menu code gets loaded, but is currently otherwise
unused as of yet.
2002-01-18 19:19:33 +00:00
Chris Ison e3b2bfb81a clear key states on game start 2002-01-17 22:04:58 +00:00
Bill Currie 5a1c7ecd2b init order cleanup 2002-01-17 04:11:36 +00:00
Bill Currie 5e8d69589d make sure the download progress bar gets erased when a dl is done 2002-01-17 02:37:52 +00:00