Bill Currie
12a90e9233
remove redundant calls to COM_InitArgv
2003-09-22 23:17:47 +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
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
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
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