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