Commit graph

923 commits

Author SHA1 Message Date
Bill Currie
7a3b63418b `adequate' temporary fix for r_lightmap_components 1 2002-05-28 04:11:40 +00:00
Bill Currie
37335f4ec3 alpha doesn't like 0 for va_list :/ 2002-05-28 00:02:59 +00:00
Bill Currie
7ebede0517 don't run a physics frame if sv_frametime is 0 2002-05-27 20:49:16 +00:00
Timothy C. McGrath
9666243498 Fixed my mistake - Had added a bracket which caused physics only to be
done every maxtic instead of every *mintic* which is what it was supposed
to be doing. Ooops.

Also minor whitespace cleaning in sv_init.c

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

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

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

Tim McGrath (Misty)
2002-05-25 21:54:41 +00:00
Bill Currie
030b8a7a05 add ' fps' to the std deviation line 2002-05-24 02:59:10 +00:00
Bill Currie
33e055209e Semi-major (more than minor:) progs convenience macro cleanup. There will
be more to come.
2002-05-22 22:35:37 +00:00
Bill Currie
69c6bb767b forgot to fix the server error printing 2002-05-21 21:06:27 +00:00
Bill Currie
fe866e264e hopefully fix the nq-wgl crash 2002-05-14 21:30:23 +00:00
Bill Currie
6a5bbf6f0a memory allocation checking cleanup 2002-05-14 06:37:28 +00:00
Bill Currie
44dcf74627 strip the \n from all(?) of the Sys_Error calls (Sys_Error itself will be
adding \n).
2002-05-14 06:12:29 +00:00
Bill Currie
6240c62cec this should fix the problems with building the master server on bsd systems 2002-05-13 21:53:52 +00:00
Brian Koropoff
3fffa26fb4 Added thread support to GIB and cleaned up escape characters yet again.
With any luck it should actually work this time.  Added the getimpulse
command so that GIB scripts can check if an impulse command is pending
before sending their own.  Fixed all the memory leaks I could find.
QuakeC and GIB seem to be clean except for maybe one or two sneaky leaks
I can't track down.
2002-05-11 00:36:12 +00:00
Bill Currie
c04785fe0f move sys/types.h 2002-05-10 18:39:59 +00:00
Bill Currie
b93f37fb00 a nother tiny optimisation: no nead to recalculate non-player beams every
frame
2002-04-27 04:08:30 +00:00
Bill Currie
8a8e62f4c2 turns out that beams coming from the player entity get their start position
updated which can cause the beam to shrink which can cause lightning ents
to get stranded.
2002-04-27 03:22:09 +00:00
Bill Currie
a1c6547f16 when comparing addresses, it helps if the /whole/ address is compared :P 2002-04-26 16:05:24 +00:00
Bill Currie
7ca3ea20b1 got a little too agressive with that optimisation :P (I'm surprised it worked
at all)
2002-04-25 19:38:15 +00:00
Bill Currie
0deb11eeae this might fix the lightning bug (produces better code anyway) 2002-04-25 19:04:25 +00:00
Bill Currie
4223aaa4c0 a couple of very minor optimisations 2002-04-25 17:16:40 +00:00
Jeff Teunissen
b2579dca98 WOOHOO! The hardcoded framerate cap is gone! cl_maxfps 0 now allows an
unbounded frame rate (you can still set it to clamp your fps to, for example,
your monitor's refresh rate), and cl_maxnetfps 0 is now based on your network
rate.

The NetQuake-compatible targets now also have an unbounded framerate. This is
OK, because the built-in server uses its own tick rate.
2002-04-25 16:50:56 +00:00
Jeff Teunissen
7c134a6f95 Fix up the watervis stuff. Whoops! :) 2002-04-25 14:34:15 +00:00
Jeff Teunissen
13071a2d23 Clear up some comments. 2002-04-25 12:53:42 +00:00
Jeff Teunissen
6126eeeb1d Clarify the meaning of the watervis serverinfo/Cvar in the server help 2002-04-25 12:52:11 +00:00
Jeff Teunissen
5b069de40c Redo r_wateralpha so that it doesn't force its value based on the watervis
serverinfo. Instead, create a new cl_wateralpha float variable that is set to
r_wateralpha->value in Host_Frame, and use that float during rendering.
2002-04-25 12:51:04 +00:00
Bill Currie
2b2c0401cf stuff player, beam and explosion entities into the map (rather than
building the render entity lists directly) so they get vis-clipped. The
benefits of this to newer gl cards/drivers or sw is negligable, but is a
pretty serious boost for the voodoo2 (~24%).
2002-04-25 04:30:03 +00:00
Brian Koropoff
7f295d61ee Added the getserverinfo command to return the value of a server info key
to GIB.  Fixed a bug in dstring_replace that was causing too much data to
be copied when the incoming string was larger than what was being replaced.
Very minor reorganization in cmd.c (1 function moved around I think).
cmd.c should probably get broken up into separate files soon.
2002-04-23 07:47:24 +00:00
Bill Currie
44a905e98c forgot to delete the (commented out) calls to Cmd_Process 2002-04-20 03:22:14 +00:00
Bill Currie
4ccc9d6322 dstring.c dstring.h:
add dstring_replace. this replaces a string of lenth rlen at position
	pos with data of lenth len, growing, shrinking and shuffling data as
	appropriate. At this rate, the dstring `class' will get buffer gap
	editing capabilities :)
cmd.c:
	Cmd_TokenizeString builds cmd_active_buffer->line again.
	Cmd_Process bails out instantly if cmd_active_buffer is a legacy buffer
	and uses dstring_replace to modify the parameters in
	cmd_active_buffer->line. This last change results in drastic
	simplification (and accuracy) of the commandline reconstruction code,
	both in Cmd_TokenizeString and Cmd_Process.
2002-04-19 22:54:27 +00:00
Bill Currie
1ff8c715b9 currently, Cmd_Process needs to be called after Cmd_TokenizeString, even
for legacy buffers. I'm not terribly happy with this, but it fixes the
broken "say" problem.
2002-04-19 21:18:25 +00:00
Bill Currie
97029c0689 rearrange the svc_stufftext code so stuffbuff doesn't even get allocated if
it's not needed. This should speed things up fractionally for well behaved
mods/servers that send atomic svc_stufftext packets (ie, always ending in
\n).
2002-04-19 17:58:52 +00:00
Brian Koropoff
ea3c2f0d78 Changed stufftext behavior so that commands are built up until a \n is
found at the end of the string.  This works around a stupidity in some
servers where stufftext commands are sent in pieces and might not reach
the client before execution occurs, resulting in parse errors.
2002-04-19 06:26:08 +00:00
Bill Currie
d4cc899d33 even id has that blasted bug :/ 2002-04-16 17:18:28 +00:00
Bill Currie
ed0342e996 clean up the mess of {send,recv}msg vs {sendto,recvfrom} 2002-04-15 19:06:25 +00:00
Bill Currie
4ac2fc0a52 add the -b dotted.quad option so qw-master can bind to a specific address.
Useful on multi-homed machines where either you want qw-master to listen on
only one address or your operating system is lame.

While (currently) ugly, compiles for win32 again.
2002-04-15 18:13:17 +00:00
Bill Currie
9fa9f6af52 need to explicitly include sys/uio.h on older libc 2002-04-15 14:35:10 +00:00
Bill Currie
599e0f4b0a make sure reply packets go out the same interface they cam in on.
This breaks win32 builds :/
2002-04-14 03:44:16 +00:00
Bill Currie
c310cd2235 correct some email addresses 2002-04-12 17:54:12 +00:00
Bill Currie
a974eb2333 move buildnum.c to util and make nq and qw init more similar 2002-04-11 18:42:55 +00:00
Bill Currie
0d525189f4 fix some problems with error printing, especially when using the curses
console
2002-04-10 21:03:02 +00:00
Bill Currie
76d004f9cf fix confim_quit 2002-04-09 17:00:39 +00:00
Bill Currie
63909922d7 damn sun's model_t :P 2002-04-07 05:03:54 +00:00
Brian Koropoff
676bf39d9d Beautified GIB, improved looping and backtraces slightly. Old buffers are
now recycled, not freed.  Fixed some bugs in exp.c.  Ready to add embeded
functions (read: function calls with return values) and for loops.
Probably some other misc. fixes, I tend to go on debugging streaks.
2002-03-27 06:24:19 +00:00
Robin Redeker
264e9b1617 Added teamname to the playerconfig dialog.
Made noskins a archived var.
Added a network menu.
-> just realized, that menu-code is still to blown
and still sucks too much. i am thinking about a
more templated menu-code. (tanwha: i will design something nice ;)
2002-03-20 16:13:32 +00:00
Bill Currie
e386a02292 make sure unused player slots are skipped when linking (should fix elmex'
segfault)
2002-03-15 16:49:40 +00:00
Robin Redeker
54037f1115 Fixed cl_fraglog and fs_fraglog cvar for being archived.
Fixed fraglogging when playing demos.
2002-03-15 13:31:05 +00:00
Bill Currie
bde0f94d1a don't process server packets when a client packet has been read from a demo
file. this was causing server packets to sometimes be processed multiple
times.
2002-03-15 07:35:22 +00:00
Bill Currie
777495e069 hopefully fix our rocket trail problem 2002-03-14 21:33:56 +00:00
Robin Redeker
706de39c06 Made fraglogging switchable. And added it to the features-menu.
cl_fraglog is the new cvar for toggling fraglogging.
2002-03-14 19:41:49 +00:00
Bill Currie
33513ce67b demo autorecord patch from RvB 2002-03-14 18:48:04 +00:00
Robin Redeker
650912e75a Added my fancy automatic fraglog to the qw-client.
Cvar fs_fraglog is a new cvar for the filename of the fraglog (default: qw-score.log)
Any devel should take a look at qw/source/cl_parse.c and qw/source/sbar.c to verify
the place where the function is placed and called, i am not shure if its correct there.
2002-03-14 15:43:08 +00:00
Bill Currie
6aa4a690d6 demo auto-naming patch from RvB 2002-03-13 18:09:33 +00:00
Bill Currie
7c3f58e08e this should fix elmex's segfault 2002-03-12 19:44:10 +00:00
Bill Currie
87e4148ffc fix the client getting stuck trying to download (eg) "skins/ .pcx" 2002-03-11 18:47:14 +00:00
Brian Koropoff
e0e9084ad7 Merged in the new command parser. No major bugs or incompatibilities could
be found.
2002-03-05 21:51:12 +00:00
Brian Koropoff
8d124f9c2b Implemented variable substitution and did various cleanups to the parser.
Changed Cmd_TokenizeString to accept a flag that controls the application
of filters (tags, variables, escape characters) to the tokens and modified
a few places in the source that called it.  Added a secondary command
buffer that is parsed without filters for legacy command support.
Currently, it is only used for commands stuffed into the console from the
server.  It is hacky, and I hope to eventually generalize the console
interface to support any number of buffers and audit the rest of the code
to recognize it.  For now, the legacy buffer at least keeps escape
character parsing from destroying info strings.
2002-03-03 23:28:57 +00:00
Brian Koropoff
f78ec56975 Added escape characters, the <i> tag to ignore tags enclosed within it, and
generally cleaned the parser up.  If a line begins with |, it will be
stripped off by the tokenizer and no tags or escape characters will be
processed.  Commands stuffed into the console from the server are prepended
with | to ensure backward compatibility.  This can also be used anywhere
backward compatibility is needed, such as where info strings are stuffed
into the console, or as an alternative to using escape characters in the
entire string.
2002-03-03 08:29:28 +00:00
Bill Currie
26d7463be7 the majority of raptor's sgi build patch. I'll look at the last two bits
(server.c and vid_sdl.c) later.
2002-03-03 06:03:51 +00:00
Bill Currie
5d3830eeb1 move SV_SetMoveVars 2002-02-26 07:32:23 +00:00
Bill Currie
6ba5e823b2 use sv_gravity->value instead of movevars.gravity 2002-02-25 23:11:39 +00:00
Bill Currie
3e4c200430 more evil hacks to get nq's and qw's sv_phys.c similar. 2002-02-25 22:57:17 +00:00
Bill Currie
676527a0d3 if the velocity is 0, don't bother clipping it. 2002-02-25 18:40:51 +00:00
Bill Currie
da1f9fcf44 cut&paste + 1am = crippled quakeguy. d'oh :P 2002-02-25 17:41:21 +00:00
Bill Currie
9ea013888b eliminate GetEdictFieldValue, mostly merge SV_AddGravity, and clean up
some whitespace in sv_phys.c
2002-02-25 07:44:17 +00:00
Bill Currie
cd29f8b9a0 remove an unneeded prototyp 2002-02-25 06:34:06 +00:00
Bill Currie
d5ed3bea75 when touching entities, it is possible for the next linked entity to be
freed, and thus unlinked. when this mappens, make sure the pointer to the
next entity to be touched gets updated appropriatly.
2002-02-25 03:24:46 +00:00
Bill Currie
8e31211266 don't link in a MOVETYPE_NONE edict that has freed itself via its think
function.
2002-02-25 03:22:32 +00:00
Bill Currie
3e4422a9f3 ok, the usleep is back, but it's controlled via cl_usleep which defaults to
off.
2002-02-22 05:48:59 +00:00
Bill Currie
96d3a997c9 bring sv_phys.c closer to being mergable. I've temporarily(?) disabled
Maddes' max velocity `fix' (yeah, it's physicly correct, but...). I'll
probably cvar it.
2002-02-22 05:28:17 +00:00
Bill Currie
5a1c0af8ca more cloning :) 2002-02-20 20:53:41 +00:00
Bill Currie
87cb9647ab reduce the fluffy diffs 2002-02-20 20:21:08 +00:00
Bill Currie
c9432fd92d remove unneeded stuff 2002-02-20 20:20:17 +00:00
Bill Currie
8ee5acb208 redo Sys_Error so it's more usable throughout quake 2002-02-20 19:22:52 +00:00
Bill Currie
ea79349c2d nq world.c and qw world.c are now identical ignoring the $Id line 2002-02-20 18:35:49 +00:00
Bill Currie
b6c331736a give nq host_mem_size so -mem can be a cvar (similar to sv_mem_size and
cl_mem_size in qw).
2002-02-19 20:47:45 +00:00
Bill Currie
9aace57b07 fix a core dump when failing to allocate the hunk 2002-02-19 19:24:18 +00:00
Timothy C. McGrath
301eb4b8fd Changed show_fps, show_time, show_pl and show_ping into archived cvars. They
were archived originally, but apparently some insane little gremlin keeps
reverting my change without telling me why :)

Tim/Misty/Misty-chan
2002-02-19 00:58:17 +00:00
Bill Currie
70194567fe kill the usleep. I don't know why, nor do I really care, but it causes qw to
not run at full speed even though it shouldn't.
2002-02-18 19:21:53 +00:00
Bill Currie
234305f0ab make sure networking is initialized before doing /anything/. this should
fix the host lookup failurs for win32 when using -f.
2002-02-13 17:58:30 +00:00
Bill Currie
2c1173aadf totally zap a client slot when the server sends an svc_updateuserinfo with
a blank info string as the only way this should ever happen is when the
server is dropping the relevant client so our client might as well drop it
too.
2002-02-13 17:52:53 +00:00
Bill Currie
f1ea286a44 don't bother writing client info for unused client slots. If demo
compatability breaks, this is one place to check for why (but I don't think
it will).
2002-02-13 17:50:47 +00:00
Bill Currie
2e8f780e03 return "" from PF_infokey when the client the key is being requested from
has been dropped. This fixes a nasty crash at the end of a match in tf 2.8+
2002-02-13 05:49:24 +00:00
Bill Currie
b4000200e3 move the getopt files from qfcc/source to libs/util, link qw-master against
libQFutil and enable the option parsting in qw-master for win32.
2002-02-12 17:44:41 +00:00
Bill Currie
a9547414f3 compile fixes for win32 2002-02-12 04:17:31 +00:00
Bill Currie
6f7b3fa0ef more magic number nukage and add a couple comments 2002-02-11 21:28:18 +00:00
Bill Currie
7c0d8f2345 remove some evile magic numbers 2002-02-11 21:23:28 +00:00
Bill Currie
6c6b8ca4c3 at rxr's request, allow the master server to read in a static list of
servers (qw-master -f servers.txt). These servers can not be removed from
the master server without editing the file and restarting the server. The
format of the server list file is a simple line-by-line list of the servers'
addresses and their port (optional: defaults to 27500):

servername([ :]port)?

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