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
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
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
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