Commit Graph

1187 Commits

Author SHA1 Message Date
Ragnvald Maartmann-Moe IV 46949068a2 Check return value on R_AllocDlight. Small optimization, people cutting r_dlight_max heavily should like it. 2002-06-05 22:07:38 +00:00
Brian Koropoff 7369224f25 Added the getinfo command to grab client info keys in GIB. I might add
the ability to grab info about any user, but this has potential abuses.
I'll need to think it over.
2002-06-05 00:13:46 +00:00
Bill Currie 0f9adc182d win32 compile fixes 2002-06-04 16:17:10 +00:00
Timothy C. McGrath 6ead7c9ad4 Removed an unneeded check now that realtime = 0 in sv_init.c while map is
loading went byebye.

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

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

Also minor whitespace cleaning in sv_init.c

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

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

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

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

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

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

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

servername([ :]port)?

one per line.
2002-02-11 20:50:54 +00:00
Bill Currie 0ea713eda4 redo the progs loader to allocate all the memory needed for progs in one
shot, allowing for caller specified alloc and edicts and zone memory sizes.
(progs + edicts + zone).
2002-01-29 20:53:44 +00:00
Bill Currie 2aa2066019 FPH column for the score list from RvB 2002-01-27 21:19:29 +00:00
Bill Currie 7dc9a93d46 clear the download name on failures 2002-01-23 19:01:19 +00:00
Bill Currie e8f6fced0b call BI_Init in the clients 2002-01-20 04:10:36 +00:00
Bill Currie 14ac3acc17 add a builtin (gametype) for detecting the, well, game type (ie, netquake
or quakeworld) which just returns the apprproate string. the single player
menu is now acessable in nq but not qw :)
2002-01-20 03:09:03 +00:00
Bill Currie 39d432b6a6 make sure force_commandline in the console data gets set appropriatly 2002-01-20 00:04:50 +00:00
Chris Ison 60e1b2caf3 fixed 3dfx not building due to mis-named lib 2002-01-19 23:06:28 +00:00
Bill Currie 786a88ba25 blah, bloody separate LDADD and DEPENDENCIES. well, this'll fix 'em :P 2002-01-19 05:45:48 +00:00
Bill Currie 6af9a5d8e6 make the builtins an array of pointers so the hash table doesn't get royally
screwed up
2002-01-19 03:31:51 +00:00
Bill Currie 10acad1ee4 first tie-in for the renderer (Draw_Pic: the interface will likely change
to better match the real interface, but this will do for now)
2002-01-18 22:35:46 +00:00
Bill Currie bb96a5b736 first use of client side QuakeC :) (and having more than one progs instance
seems to work, too). The menu code gets loaded, but is currently otherwise
unused as of yet.
2002-01-18 19:19:33 +00:00
Chris Ison e3b2bfb81a clear key states on game start 2002-01-17 22:04:58 +00:00
Bill Currie 5a1c7ecd2b init order cleanup 2002-01-17 04:11:36 +00:00
Bill Currie 5e8d69589d make sure the download progress bar gets erased when a dl is done 2002-01-17 02:37:52 +00:00
Bill Currie c86c5a78bf finally, the client console is merged 2002-01-16 21:53:42 +00:00
Seth Galbraith 778af4276e external tga skin loading, doesn't work for players (teamcolor stuff) 2002-01-16 20:32:39 +00:00
Seth Galbraith 93116bc827 external mip texture loading 2002-01-16 01:02:50 +00:00
Bill Currie 5c2a17f7a8 the /much/ better fix for the server crashing when dropping a client 2002-01-14 17:41:38 +00:00
Bill Currie 9d59d953bd more cleanups 2002-01-12 05:32:21 +00:00
Bill Currie 140f806d40 more Draw_{Character,String,nString} optimisations 2002-01-10 07:48:41 +00:00
Chris Ison 2fb1d13ba9 fix potential bug in mini score display 2002-01-10 04:28:17 +00:00
Chris Ison 859c18dc07 tidy up Draw_String calls and switched to Draw_nString were needed 2002-01-10 03:54:00 +00:00
Chris Ison f01cc24267 minor bug fixes to Draw_nString changes and Draw_Character tidy up, ie: typos and miss understanding 2002-01-09 23:51:32 +00:00
Chris Ison 6073ff8d58 added Draw_nString for displaying a non \0 terminated string 2002-01-09 21:20:22 +00:00
Ragnvald Maartmann-Moe IV b13efc3a83 Particle updates. Some cleanups, small speedups, and reimplement id's effects. r_particle_styles 0 to see id's effects. 2002-01-04 03:32:59 +00:00
Bill Currie 013f503738 start getting const-correct on vec3_t params 2002-01-03 05:29:38 +00:00
Bill Currie 1721831b3a fix r_netgraph_box 2001-12-20 18:07:10 +00:00
Timothy C. McGrath 0c4d220e8e Fixed a typo in a comment, (modifiefs) changed ancient word 'Quakespy' to
more modern 'Gamespy' in help, fixed typos in show_ping and show_pl, (o is not
0) added a more descriptive help line to show_time so people will know it
actually has TWO settings, and localid finally has a description.

Tim (Misty-chan)
2001-12-19 00:40:34 +00:00
Bill Currie 86d05b1df0 heh, they already got dropped (zombie packets). Turns out the problem was
SV_DropClient not aborting processing of a client packet, so do the evilness
of using setjmp/longjmp to do so.
2001-12-15 04:58:16 +00:00
Bill Currie cac001e035 zombied connections get their packets dropped on the floor 2001-12-15 04:13:56 +00:00
Bill Currie 9b4e21a914 minor prototype cleanups 2001-12-14 00:06:58 +00:00
Bill Currie 69e1a9aab5 bah, installed headers made my compile tests fail 2001-12-13 22:56:43 +00:00
Ragnvald Maartmann-Moe IV 2db08923e8 MSG_(Read|Write)(Coord|Angle|CoordAngle)V. Cleanups, and preparation for use of vector ops in msg.c. 2001-12-12 21:56:09 +00:00
Ragnvald Maartmann-Moe IV f66b7a93e5 Major particle interface cleanup, several bugfixes, and minor performance improvements. Oh, check out "/help easter_eggs" (gl-only, at the moment). 2001-12-11 22:37:30 +00:00
Seth Galbraith 8a47406dcd allow server to control player angles as in Hack and Slash mod\nclient's player model stands up straight\nmouse and joystick work properly in chase_active 2 and 3 modes 2001-12-11 20:49:10 +00:00
Bill Currie 0bb01f310f don't crash when there are too many entities for update messages. just ignore
the excess.
2001-12-10 03:17:21 +00:00
Ragnvald Maartmann-Moe IV d4a8224d9b Change hudswap to use a callback, and instead of passing a swap variable to 10 functions, where only 2 use it, use a global variable. Make a few scr functions static inline, too. Got a totally unexpected ~0.45fps speedup. 2001-12-09 14:05:30 +00:00
Bill Currie d222f25f0b correct some error messages 2001-12-07 17:24:16 +00:00
Bill Currie d4df29de02 cl_paranoid: setting to 0 will disable printing the server address for
connectionless packets
2001-12-05 21:56:52 +00:00
Bill Currie e0364392c7 don't print the highchars flag 2001-12-05 21:38:08 +00:00
Bill Currie 8c9daf023e possible optimisation for PF_findradius. needs more testing 2001-12-05 19:59:55 +00:00
Bill Currie f6ef79b7e3 cleanup skin's namespace polution 2001-12-04 20:13:12 +00:00
Bill Currie be4d2f57ea clean up Con_Print a smidge 2001-12-04 17:12:16 +00:00
Bill Currie c130d38c6c fix more bugs caused by the Hunk_TempAlloc changes and do some more jump
prediction fixes for msg_t and sizebuf_t
2001-12-03 22:11:21 +00:00
Bill Currie 650d682d2c fix some nasty security holes causes by oversized connection strings. slows
down overkill slightly :/
2001-12-03 21:06:57 +00:00
Ragnvald Maartmann-Moe IV 5a356259f5 Port a few of Tonik's networking improvements, under different names.
cl_maxnetfps (his cl_c2spps), controls number of frames worth of command packets sent per second. So you can now crank your cl_maxfps, and tweak networking independently.

Also, cl_spamimpulse (his cl_c2sImpulseBackup), controls number of duplicate packets spammed to attempt to make impulses reliably reach the server. 3 is default, same as id. Experiment with lowering it at your risk (higher does nothing).
2001-12-03 09:01:17 +00:00
Bill Currie 44b36e4d6b sadly, I have to revert my low-copy code. it doesn't gain /enough/ to be
worth the bugs it's introduced (it's extremely difficult to do both low-copy
/and/ correct entity updates).
2001-12-03 05:36:39 +00:00
Bill Currie a619739bab fix the server console for static builds (hmm, non-curses only?) 2001-12-02 20:11:21 +00:00
Bill Currie f233c9edc9 nuke an obsolete function 2001-12-02 06:27:38 +00:00
Bill Currie b436fb62a2 print a message when quitting (to help find a misterious silent shutdown) 2001-12-02 04:14:44 +00:00
Bill Currie 27ff29214e print a warning and recover instead of crashing when the model is null 2001-12-02 00:38:44 +00:00
Bill Currie 5b13c1a07d fix rocket trails in demos 2001-12-02 00:18:09 +00:00
Bill Currie 13d67a4c67 fix an oopsie with low-copy and software clients 2001-12-01 22:26:17 +00:00
Bill Currie 6a51021f86 low-copy networking code. gives about 3-4% speed boost to overkill (null
renderer).
2001-12-01 22:16:50 +00:00
Ragnvald Maartmann-Moe IV fc8d9417cb Remove commented out code. 2001-11-30 22:32:17 +00:00
Ragnvald Maartmann-Moe IV f4af73cd00 Commit serplord's camera bugfix. 2001-11-30 22:30:23 +00:00
Bill Currie 4f2f686834 r_netgraph_alpha works again 2001-11-30 03:51:43 +00:00
Bill Currie 95fe4d07b1 more PARANOID nukage 2001-11-29 07:04:31 +00:00
Ragnvald Maartmann-Moe IV f192287a3b U_EXTEND fixes taniwha wanted me to commit for him. 2001-11-28 23:51:49 +00:00
Bill Currie 0652a9d90c initialize the projectiles array so nails are visible 2001-11-28 03:17:41 +00:00
Bill Currie b5162177b2 tiny speed gain (0.1%) 2001-11-28 00:54:20 +00:00
Bill Currie f7c90759af clean out the non-renderer fields from entity_t. not yet a noticable gain
but more work needs to be done on the linking code in the client. However,
there /does/ seem to be a slight gain with possibly less variance.
2001-11-27 21:42:49 +00:00
Bill Currie 4689350283 fix qport 2001-11-27 04:50:41 +00:00
Bill Currie c4646b9685 take care of \r*\n line endings 2001-11-26 23:23:29 +00:00
Bill Currie e2db0ed434 allow oolormap to be set for the last client 2001-11-26 05:16:04 +00:00
Bill Currie 87d6278a87 move the physent overflow tests to the correct locations 2001-11-26 01:52:08 +00:00
Bill Currie d99da515f7 cl_ents.c:
catch and moan about physents overlows (needs more work, but I don't
	grok the code well enough yet to do more).
pmovetst.c:
	correct a spelling error
2001-11-25 23:25:53 +00:00
Bill Currie e99b422628 extinguish gl_fires. it's semi-broken, generally nasty (code wise) and
kinda tacky. also results in a slight speed boost:)
2001-11-25 06:24:26 +00:00
Ragnvald Maartmann-Moe IV 4d406337b6 Move gl_fires into gl, where it belongs.
Also some small cleanups in particles.
Brighten grenade smoke a tiny bit, so it's not so invisible in the typically dark quake areas.
And some minor cleanups to water rendering.
2001-11-24 08:21:07 +00:00
Bill Currie 4eebbb8ae6 take the hull/line fixes to the server internals and re-merge world.c for
nq and qw. This fixes the corner sticking for everything.
2001-11-23 18:58:23 +00:00
Bill Currie 7cad26038e fix the getting stuck on corners bug 2001-11-23 06:27:32 +00:00
Bill Currie 0060c9cc91 disable denormal exceptions on alpha 2001-11-21 21:47:00 +00:00
Bill Currie 0be2a31f2e lots of code cleanup. Merge Mod_LoadAllSkins, merge the sw32 model loading
code into the sw model loading code, remove all refs to r_pixbytes from the
sw renderer (it was never anything but 1), kill libQFmodels_sw32, remove
all the 16 bit code from the 8 bit sw renderer.
2001-11-21 19:13:53 +00:00
Chris Ison 3e34fc83e4 -3dfx re-enabled 2001-11-21 02:36:48 +00:00
Bill Currie d991feb2d0 fix some compile issues 2001-11-21 02:07:55 +00:00
Bill Currie 2e97cfddac freebsd compile fix 2001-11-20 06:27:48 +00:00
Bill Currie 4dfc6b1285 don't bother speed cheat checking spectators (does it /really/ matter?) and
don't use va for SV_BroadcastPrintf.
2001-11-20 01:13:30 +00:00
Bill Currie 9d0320cc89 various portability improvements 2001-11-18 23:40:01 +00:00
Bill Currie f0c03f8331 minor cleanups of Sys_ConsoleInput. Cleaning it up properly will take more
work, but this removes most of the redundant instantces. nq-sdl (or -sgl)
-dedicated won't have console input, nor will dedicated servers that don't
load a console plugin.
2001-11-18 22:08:24 +00:00
Bill Currie 46835e79fe more quakeforge compiling on alpha patches 2001-11-17 05:26:30 +00:00
Bill Currie 1a99fe74ab fix one of who knows how many issues with gcc 2.96 (at least I don't have to
worry about not being able to reproduce them on a non-intel box:)
2001-11-17 04:30:51 +00:00
Bill Currie fade981a40 spelling and grammar corrections to the spead cheat message 2001-11-16 04:41:39 +00:00
Bill Currie cc66577f1c fixes for building on alpha (linux) 2001-11-16 01:09:17 +00:00
Bill Currie 288ec4251c various fractional speedups 2001-11-15 19:37:29 +00:00
Bill Currie 06622fa164 -mem now also works as a cvar (and there was much rejoycing:). sv_mem_size
(server) and cl_mem_size (client), in megabytes (ie, same as -mem). I haven't
done nq yet as I'm uncertain what to /call/ it :)
2001-11-14 20:18:37 +00:00
Bill Currie 748dc49218 report the type number of the bad type for temp ents 2001-11-13 03:14:34 +00:00
Bill Currie 9ca6728fa4 fix restarting timedemo from trashing itself 2001-11-12 22:50:27 +00:00
Bill Currie 2b560ad37d replace a missing ; 2001-11-12 21:42:10 +00:00
Bill Currie b406ea24a2 fix some oversights on my part that could cause weird output in the timedemo
stats
2001-11-12 21:35:48 +00:00
Bill Currie 504b804b4c replace many Host_EndGame calls with Host_Error and make Host_Error not bail
out of the program in most cases
2001-11-12 20:46:11 +00:00
Bill Currie 35ae176c4a statistics for multiple timedemo runs (avg, std deviation, min, max) 2001-11-12 07:27:44 +00:00
Bill Currie 6beb96100a fix a seg when the chat message doesn't have : in it 2001-11-12 03:32:04 +00:00
Bill Currie fe50e4b1e5 cache the cshifts serverinfo value for further reduction of Info_ValueForKey
calls.
2001-11-11 07:02:38 +00:00
Bill Currie e435414b4b fix a case where the userinfo is 0 that I was not expecting. This fixes the
crash on reconnect
2001-11-10 22:55:10 +00:00
Timothy C. McGrath 47e20a0652 Disabled f_* by default. I do not believe it should be turned on unless the
user explicitly enables it - I don't want people running around with this
on and them not knowing it exists nor how to disable it.


Timothy C. McGrath
(Misty-chan)
2001-11-10 00:12:04 +00:00
Bill Currie db929ff2ef fix a glaring security hole 2001-11-09 07:33:32 +00:00
Bill Currie 0dffb8bfcb new command: condump <file>
dumps the console output to the named file in the current gamedir
2001-11-09 07:23:28 +00:00
Bill Currie 9a4a91bad4 report the error number for unknown errors 2001-11-09 07:22:34 +00:00
Ragnvald Maartmann-Moe IV 67cec900e5 cvar_t *gl_sky_divide; // not used but needed for linking
Umm, no, not needed. In fact, it breaks static compiles. But not anymore, since it's gone.
2001-11-08 00:45:50 +00:00
Bill Currie c5aec15569 This prepares for moving the net_svc code to a branch allowing both network
code cleanups and general performance work to be developed in relative peace.
While cleaning up the networking code /is/ important, fixing QF's perfomance
issues is of much higher priority.
2001-11-07 08:24:56 +00:00
Brian Koropoff ccd665e80c This commit removes maplist.c and replaces it with filelist.c, which
contains general functions for creating lists of a type of file and
provides the commands maplist, skinlist, skyboxlist, and demolist.
2001-11-06 07:14:29 +00:00
Bill Currie 42f8b98f27 win32 compile fix 2001-11-06 04:44:26 +00:00
Bill Currie 15b381909e move maplist from quakefs.c to console/maplist.c. Unfortunatly, until the
client console plugin is usable, this means the clients link maplist.o
directly.
2001-11-05 22:24:16 +00:00
Adam Olsen e0dfa2b453 - convert ALL the remaining svc's on the client. woot, hehe 2001-11-05 20:13:27 +00:00
Bill Currie 54ddb94132 urk, I forgot Info_ParseString uses Hunk_TempAlloc :/ 2001-11-05 17:19:26 +00:00
Bill Currie 6c2145f9b5 make work with the new info api and fix what looks to be a malloc bug 2001-11-05 17:09:27 +00:00
Bill Currie b286afc7f7 don't install skin_stencil.h 2001-11-05 16:22:03 +00:00
Adam Olsen ded1b4c057 - add some missing boundschecking to CDAudio_Play's track remap (in
specific plugins only)
- convert updateping, updatepl, updateentertime, updatestat,
  updatestatlong, cdtrack intermission, finale, muzzleflashchokecount,
  maxspeed, entgravity, and setpause on the client.  Can you say all
  that in one breath? :)
2001-11-05 16:17:45 +00:00
Adam Olsen d693bc27ff - merge the svc_strings arrays for cl_parse.c and net_packetlog.c into
net_svc.c, and add add a NET_SVC_GetString function to access it.
  As an added bonus, it actually boundschecks it!
- preexpand that annoying SHOWNET macro, which was only used twice,
  and was quite small and pointless
- whitespace cleanup and a comment typo fix
2001-11-05 07:53:03 +00:00
Brian Koropoff 008b59b777 The beginnings of an f_* reply system have been added. f_version works
like normal, f_skins reports the average percent fullbright for all loaded
skins, and f_skins skinname reports the fullbright percent for a signle
skin.  cl_freply controls the time in seconds before another query can be
made.  Set it to 0 to disable them.  More queries will be added later.
The table for accessing special characters from the console has been
tweaked a bit.  Expect it to get tweaked more in the future.
2001-11-05 07:23:51 +00:00
Bill Currie f91abcb3d5 fix the default for cmd_warncmd for the server 2001-11-05 02:15:30 +00:00
Bill Currie c443e2c024 info.c:
support unlimited info strings when maxsize is 0
sv_main.c:
	make localinfo unlimited
2001-11-05 02:08:20 +00:00
Bill Currie ac93a620d7 remove instead of set "" info keys for localinfo 2001-11-05 02:03:37 +00:00
Bill Currie bf4570de72 fix some reversed logic that caused the server to send the wrong info keys
to a connecting client.
2001-11-04 23:02:43 +00:00
Adam Olsen 87a0a4d7d6 - a TODO item
- converted svc_packetentities and svc_deltapacketentities
- added some convenience defines for U_foo grouping
- tweaked Host_NetError's "please report this" print, but it still
  doesn't work
2001-11-04 21:23:22 +00:00
Bill Currie 7c5c53774f cache some info strings (team and skin from client user info) and values
(no_pogo_stick and teamplay from server info) to cut down on the calls to
Info_ValueForKey (from over 550k to 23.5k in spam2.qwd).
2001-11-04 19:06:50 +00:00
Bill Currie dcd9b0040e rewrite the info strings to use hash tables instead of a static string.
This required changes to the api (info_t instead of char *) but should be
a net gain in speed (not a lot, admittedly: it was pretty fast to begin
with, but this paves the way for some other changes I have in mind).
2001-11-04 07:50:39 +00:00
Adam Olsen c5f4af0109 - convert svc_playerinfo, cvs_nails, svc_modellist, and svc_soundlist 2001-11-03 10:48:55 +00:00
Bill Currie 6daf712d5f turns out the server can send MAX_MSGLEN + 8 bytes, so handle this when
reading demo packets.
2001-11-03 00:54:18 +00:00
Bill Currie e1e56c417d Host_NetError is not appropriate for an oversize packet as that packet's data
has not yet been read.
2001-11-02 23:57:22 +00:00
Adam Olsen d7e5f88ee3 - conver svc_spawnstaticsound, svc_updateuserinfo, svc_setinfo,
svc_serverinfo, and svc_download

I havn't tested svc_download, since I don't want to play with having
seperate dirs for the client vs server on one computer.
2001-11-02 14:52:29 +00:00
Adam Olsen 9f088567d1 - convert svc_sound, svc_spawnbaseline, svc_spawnstatic, and
svc_tempentity

there isn't actually anything in the server that uses svc_tempentity,
only the progs do, so it's currently unused.
2001-11-02 10:40:20 +00:00
Adam Olsen a77619f665 - convert svc_damage and svc_serverdata emitting 2001-11-02 08:10:41 +00:00
Adam Olsen 56f1d6f49b Begin phase 2 :)
- link net_svc.c to the server
- add a NET_SVC_Print_Emit function
- make the server use the above instead of svc_print manually

It's actually kind of ugly, because of how backbuffers are
implimented.  Hopefully I'll be able to clean that up later.
2001-11-02 07:32:19 +00:00
Adam Olsen f9ab09356e - make nails, soundlist, and modellist return NET_ERROR when there's
too many items in the block
2001-11-02 06:39:51 +00:00
Adam Olsen 1c30d89149 - add a net_status_t enum, containing NET_OK, NET_SHORT, and
NET_ERROR.
- change all the NET_SVC_*_Parse return values from qboolean to
  net_status_t
- make NET_SVC_{,Delta}PacketEntities_Parse return NET_ERROR instead
  of 1 (NET_SHORT now) if the struct size is exceeded
2001-11-02 06:00:21 +00:00
Adam Olsen c79294f57d - consider ':' and '"' to be special characters in names, just in case
- make sure to update the infostrings if they tried changing a name
  and it was the same after sanitizing
2001-10-31 03:05:59 +00:00
Adam Olsen 388c3a78ee - fix handling of highbit whitespace in names, as well as stripping
all highbits from names
2001-10-31 02:18:09 +00:00
Adam Olsen 2bbb759232 - change the sv_kickfake default to 0, so it replaces \r with #
instead of kicking
2001-10-31 00:30:31 +00:00
Ragnvald Maartmann-Moe IV c174188c0c Remove local len, use mathlib's Length, among other cleanups. 2001-10-30 20:00:05 +00:00
Adam Olsen c0f363e05c it seems that map changes generate from mismatches, so change that
back to a silent warning (but also make it drop the packet)
2001-10-30 09:15:09 +00:00
Adam Olsen 61f819b5c9 - further error checking rearangements, putting the "old packet" check
first, and making it a Con_DPrintf that just invalidates that packet
2001-10-30 02:29:04 +00:00
Adam Olsen 950331a1f4 clean up a few error messages, rearange error checks, and change some
"impossible" warnings into errors.
2001-10-30 00:24:25 +00:00
Bill Currie ddd7989b85 turns out I was wrong about how U_REMOVE gets into an update packet (thanks
Rhamph) but the change from short to int in words does a nice bit to the
speed.
2001-10-29 21:46:00 +00:00
Bill Currie 5819fc200c shrink the packet entities word arrays down to MAX_PACKET_ENTITIES + 1 and
ensure the array is always terminated with a 0. This seems to give -x11 a
0.03 fps (0.06%) boost.
2001-10-29 19:15:29 +00:00
Bill Currie 85c9e0ab1e more externs cleaned up 2001-10-29 17:46:03 +00:00
Bill Currie d04edfaaf2 whitespace 2001-10-29 05:42:10 +00:00
Adam Olsen 36b8256b3a - fixed net_packetlog to use Con_Printf when there's no logfile open,
rather than a stdout hack (which had problems with buffering)
- actually parse net_deltapacketentities
- print offset within net_{,delta}packetentities blocks for each
  entity
- fix indenting in Log_Delta
- fix off-by-one for packet offset printing
- fix a miss-parsing of svc_deltapacketentities
  (MAX_PACKET_ENTITIES does NOT include U_REMOVE entities)
- remove "full update" handling for CL_ParseDeltaPacketEntities, since
  that only happens with svc_packetentities
2001-10-29 00:32:16 +00:00
Bill Currie 78a3e398d5 * taniwha gets medieval on extern 2001-10-28 04:23:37 +00:00
Adam Olsen f3fe1cec87 - add a request to send any errors to quake-devel in Host_NetError
- cleanup CL_ParseDeltaPacketEntites a little bit
- change some warnings in CL_{,Delta}PacketEntites to errors, as well
  as full updates with delta*, so that they can either be debugged or
  shown not to be needed
2001-10-28 00:51:14 +00:00
Bill Currie d62c381262 Con_Printf -> SV_Printf for some cases that should be 2001-10-27 22:33:42 +00:00
Bill Currie aa6472da2b cleanup qport usage a little 2001-10-27 08:28:15 +00:00
Brian Koropoff 05f35f9cd4 This adds the ability to access special characters in console commands by proceeding certain characters with $. See libs/util/cmd.c for the conversion table. Preceeding a character by # will shift it up or down by 128, which basically is useful for accessing the brown letters and numbers. All special characters were removed from Team_ParseSay, and variable substitution now takes the form of ${var} to prevent conflicts with special character substitution. Special character access is controlled by cmd_highchars, which defaults to off. 2001-10-27 04:34:53 +00:00
Adam Olsen b8eb324ded - make CL_ParseServerMessage's loop break if we disconnected while it
was running
2001-10-26 16:01:59 +00:00
Bill Currie 7910fe026b nuke FlushEntityPacket and CL_ParseDelta as they are both redundant and
FlushEntityPacket now causes a crash.
2001-10-26 15:04:51 +00:00
Adam Olsen b5856e8be0 - audit of the net_svc.c users' sanity checking 2001-10-25 23:26:33 +00:00
Adam Olsen 3bba5398ba - audit malloc usage. now everything checks the return value :) 2001-10-24 22:50:06 +00:00
Adam Olsen dd19f7b500 - convert svc_deltapacketentities
- add a Host_NetError that dumps a packet log and disconnects, and use
  it instead of Host_EndGame in most cases
- fix a couple multiply-defined vars
2001-10-24 15:23:02 +00:00
Bill Currie 4ae92c8d42 new cvar: sv_hide_version_info. This hides QuakeForge specific info strings
from progs.
2001-10-24 02:50:11 +00:00
Bill Currie b5341f0d13 we now compile and link with -fno-common. this cleans up the multiple,
uninitialized declarations of variables.
2001-10-23 16:55:23 +00:00
Adam Olsen 818f5de658 - rename CL_ParsePacketEntities to CL_ParseDeltaPacketEntities
- fix various spots in the above that called Host_EndGame but didn't
  return
- switched the order of modellist and soundlist in net_svc*, to
  conform with the rest of the files
- create a new CL_ParsePacketEntities, that only handles
  svc_packetentities (so it's much simpler).  it uses net_svc*
2001-10-21 14:21:30 +00:00
Bill Currie cc89fb23c8 fix for win32 (need to init winsock) 2001-10-21 00:48:38 +00:00
Adam Olsen d69c8013aa - convert svc_spawnbaseline and svc_spawnstatic
Only notable ones left now are packetentities and deltapackentities :)
2001-10-20 11:59:42 +00:00
Adam Olsen f779a03254 - hopefully a fix for master's socket errors on windows
- start of static server support
2001-10-20 08:20:27 +00:00
Adam Olsen 32fbdba399 - move the MAX_PROJECTILES def from cl_ents.c to bothdefs.h
- convert svc_nails
2001-10-20 08:10:25 +00:00
Adam Olsen a4d9507895 - roast the unnecesary MAX_STYLESTRING def from bothdefs.h
- rename the message argument of NET_SVC_*_Parse to msg
- rename the other argument to block, for brevity
- convert svc_spawnstaticsound
- convert svc_serverinfo
- convert svc_playerinfo
- fix a exploitable buffer overflow with svc_lightstyle
2001-10-19 21:20:49 +00:00
Adam Olsen c2807a6da1 - and svc_temp_entity too. Probably the last I'll do today. 2001-10-18 18:48:49 +00:00
Bill Currie 6ea400fb30 d'oh, forgot to compile test :P 2001-10-18 17:03:50 +00:00
Bill Currie 00bfc128a0 more printf elimination 2001-10-18 16:49:40 +00:00
Adam Olsen 9cef5a1edc - svs_sound too of course 2001-10-18 13:33:12 +00:00
Adam Olsen eb9c515c2a - yada svc_damage, svc_serverdata
- remove a no longer valid commit from NET_SVC_UpdateUserInfo_Parse,
  and make it always set name/data to 0 if they're unused
2001-10-18 08:57:03 +00:00
Adam Olsen cf8380b528 - change NET_SVC_*_Parse to return qboolean, indicating if they had a
bad read
2001-10-18 07:34:38 +00:00
Adam Olsen d2fe052d59 - convert svc_setinfo, bla bla, you know hte drill 2001-10-18 07:23:33 +00:00
Adam Olsen 634c2c6acf - rename CL_UpdateUserinfo to CL_ParseUpdateUserInfo for uniformness
- rework svc_updateuserinfo/CL_ParseUpdateUserInfo like everything
  else
2001-10-18 07:01:40 +00:00
Adam Olsen 7d26e6e2b9 - move the svc_print handling into a seperate function (CL_ParsePrint)
- add NET_SVC_{Print,Download}_Parse functions and assosiated
  net_svc_{print,download}_t structs.
- make CL_Parse{Print,Download} use the above stuff
2001-10-18 06:35:28 +00:00
Bill Currie 6c0d760102 msg.h:
give mst_t a buffer to hold unterminated message strings
	kill MSG_ReadStaticString and MSG_ReadStringLine
msg.c:
	kill MSG_ReadStaticString and MSG_ReadStringLine
	MSG_ReadString: implement the buffer for unterminated message strings
	and update readcount on badread
cl_main.c:
	go back to MSG_ReadString and fix up the resulting const char * issues
cl_parse.c:
	rewrite the cl_mofake code all because of an uninitialized variable :)
sv_main.c:
	use MSG_ReadString instead of MSG_ReadStringLine because
	Cmd_TokenizeString really doesn't care about a terminating \n
2001-10-18 06:23:26 +00:00
Adam Olsen 18036b63d9 - change MSG_ReadString to return const char * and return a pointer
directly into the packet data.
- change a bunch of char *'s to const char *'s for the above.  Only
  thing that had trouble was the cl_nofake handler, which I changed to
  use a local buffer.
- add MSG_ReadStaticString which acts like the old MSG_ReadString,
  specifically that it uses a static buffer and tollerates
  unterminated strings.
- add a Q_strnlen function, and make strnlen use it if strnlen is
  undefined.
- Add a net_svc.h and net_svc.c which will preparse svc messages into
  structs, for easier handling.  Currently only soundlist and
  modellist are done.
2001-10-18 04:44:58 +00:00
Bill Currie 3ab66f5e75 remove the non-qw code and the ifdef QUAKEWORLD stuff 2001-10-18 03:19:04 +00:00
Bill Currie f9fcf2f09f freebsd fixes 2001-10-17 18:49:25 +00:00
Bill Currie 7883280d9a whitespace 2001-10-16 22:55:37 +00:00
Bill Currie 2d068c0745 massive windows.h and WIN32 cleanup. 2001-10-16 21:40:45 +00:00
Bill Currie 6ad55725c2 chase cam seems to work properly now 2001-10-11 16:26:09 +00:00
Bill Currie a7abedccbb fix a woopsie that brok playdemo 2001-10-11 04:54:50 +00:00
Bill Currie c0f0dcb4b8 sort of apply Serplord's chasecam fix (it wasn't complete) 2001-10-11 04:43:40 +00:00
Bill Currie 3c4e094493 timedemo looping. "timedemo overkill 10" will give 10 runs 2001-10-10 22:00:26 +00:00
Adam Olsen 9f7e1f864e - add a pr_double_remove cvar, that either ignores (0), warns about
(1), or causes a fatal error (2) when the progs remove an already
  removed entity.  default is 1.
- fix a segfault in FFnickFF parsing that causes a segfault
2001-10-09 22:47:14 +00:00
Bill Currie 3a366f4f7e break out the backtrace code from PR_RunError into PR_DumpState and use
PR_DumpState instead of PR_RunError in seg_fault_handler so we get both a
progs trace /and/ a core file (ulimit allowing)
2001-10-08 03:46:44 +00:00
Bill Currie 5b8aca001b diff snr-- 2001-10-07 18:45:23 +00:00
Adam Olsen 0785610296 - fix a little mistake in SV_PrintToClient that'd cause it to
segfault if your first call was with "".  Probably could cause
  crashes too
- add a string.c file to libQFutil, with a Q_strcasestr function,
  which strcasestr is defined to if it's not already defined.  (we'd
  get that with glibc if we defined __USE_GNU, but we don't)
- make client_t and SV_ExtractFromUserinfo both use NAME_MAX for
  their name arrays, instead of 32 for one and 80 for the other
- rewrite almost all of SV_ExtractFromUserinfo's name handling.
  - \r, \n, and \t are all converted to spaces
  - leading/trailing spaces are stripped
  - consecutive spaces are reduced to a single space
  - empty names are considered bad
  - user-* nicks are considered bad (unless forced to them)
  - a name containing console or admin is considered bad
  - a name that already exists is considered bad
  - if they have a bad name it gets forced to user-%d, where %d is
    their userid
  - netname in the progs is now updated properly
  - name changes are always reported unless it's the initial setting,
    rather than only if they're full connected and not a spectator
  - finally, if the name change fails (info string exceeded), give
    them the boot.  (before this was only done for duplicate names)

That's about it :)
2001-10-04 19:11:39 +00:00
Bill Currie 1929797cc9 get nq-server so it runs. part of this involved renaming cl_warncmd to
cmd_warncmd
2001-10-03 21:25:43 +00:00
Bill Currie bbc83c30ca hey, it segs, but who cares? so does nq-glx -dedicated :P 2001-10-03 19:52:03 +00:00
Bill Currie a1d2cf3532 duplicate file name cleanup and make dist works 2001-10-03 17:50:36 +00:00
Ragnvald Maartmann-Moe IV 450dd9f504 5.2 time and fps in demo output, for both nq and qw. 2001-10-02 19:43:25 +00:00
Adam Olsen 362e4eefc9 - make the fallback console use stdin
- don't draw scores overlay if the screen is less than 244 wide.
2001-10-02 03:24:36 +00:00
Bill Currie 7fcdffb42e mirror the chase and watervis serverinfo keys in the cl struct so
Info_ValueForKey doesn't get hit so often.
2001-10-01 01:51:36 +00:00
Bill Currie e9c420c749 nuke SV_RecursiveHullCheck from cl_cam.c and use PM_RecursiveHullCheck
instead. Also add prototype for PM_RecursiveHullCheck to pmove.h
2001-10-01 00:20:57 +00:00
Bill Currie f505e8630c fixes for rh 7.1 2001-09-30 23:24:53 +00:00
Bill Currie 5e82c0cac7 correct a spelling error in a comment 2001-09-30 03:58:24 +00:00
Bill Currie 138a4a1c14 rename console_t to old_console_t in preparation for a better version and
temporarily disable the client console plugin as it currently doesn't
compile.
2001-09-29 04:24:04 +00:00
Bill Currie 9f612ec82a this fixes the rendering of the player when not in chasecam mode. not sure
what it does for chasecam mode.
2001-09-28 22:07:26 +00:00
Bill Currie cca3e4c203 fix a coupld d'ohs for pr_checkextensions 2001-09-28 21:39:13 +00:00
Bill Currie 5eb35f0b2a fix a tiny case&paste (?) error that prevented players from being drawn. 2001-09-28 21:15:48 +00:00
Bill Currie 4a8eb5e7cf more namespace issues 2001-09-28 16:50:35 +00:00
Bill Currie 514a4a56cb fix a win32 namespace issue 2001-09-28 16:29:34 +00:00
Bill Currie 8e27422c72 partial fixes for mingw cross builds. still have issues with ar :( 2001-09-28 16:03:45 +00:00
Bill Currie 89fbacdc78 make sv_progs CVAR_NONE rather thatn CVAR_ROM so it can be set in server.cfg. 2001-09-28 15:29:22 +00:00
Bill Currie c78edb3a36 Apply Seth Galbraith's <sgalbrai@linknet.kitsap.lib.wa.us> chasecam patch 2001-09-28 07:51:15 +00:00
Bill Currie b1f4a778f9 the rcsid commit from hell }:> 2001-09-28 06:26:31 +00:00
Jeff Teunissen 343bb529b4 And this fixes QW. 2001-09-28 05:40:14 +00:00
Ragnvald Maartmann-Moe IV 2941c07b0a Add small cyan light to lightning impacts. And restore particle direction use in nq. Greatly improves blood effects. 2001-09-27 00:43:46 +00:00
Adam Olsen 376f05d357 - add some conversion builtins, now we have ftoi, ftos, itof, itos,
stof, stoi, stov, and vtos.
- fix PF_sprintf
- add FFnameFF support, where it tacks <userid> after the nick on the
  console.
2001-09-26 22:26:31 +00:00
Bill Currie dec9503620 set the default rcon_address port to 27500 rather than 0 2001-09-26 21:06:51 +00:00
Bill Currie 694619cd70 thou shalt not use strlen as a boolean value! 2001-09-26 20:57:40 +00:00
Jeff Teunissen e110f6da83 -3dfx is gone, pending someone to work on it again. Most of the stuff it
did specially will be folded into -glx.
2001-09-25 23:58:23 +00:00
Chris Ison 0d0f0a7f73 bootstrap now works in cygwin 2001-09-25 23:47:13 +00:00
Jeff Teunissen 27b6bac88f do the same for QW. 2001-09-25 23:32:11 +00:00
Bill Currie df330f33fd expernimental code to get window resizing working 2001-09-25 20:16:24 +00:00
Bill Currie 06da30ac89 mingw build fixes again (including mostly working in sid: got some link issues) 2001-09-25 06:18:30 +00:00
Bill Currie 36de3c147e move Sys_Quit and Sys_Error totally into libQFutil. They will call a list
of pre-registered (Sys_RegisterShutdown) function before actually exiting
the program. This should take care of the pain when an ncurses server
crashes.
2001-09-24 21:00:23 +00:00
Bill Currie 169f1ceac2 thou shalt not rely on order of evaluation 2001-09-24 19:12:05 +00:00
Adam Olsen 5d757c0d85 - fix our favorite svc_updatefrags overflow bug! weeeeee 2001-09-24 18:26:23 +00:00
Adam Olsen b52d7fd3d9 - when a client overflows print out the backbuf too, not just
netchan.message
- tweak the svc_print netlog spacing
2001-09-24 16:25:49 +00:00
Adam Olsen 19b6ce83a1 - fix overflow packet dumping. Oops :) 2001-09-24 14:47:36 +00:00
Adam Olsen 7ff069c931 - when the progs cache a model, copy it onto the hunk, so the gc can't
squash it
- ditto for sounds, just in case
2001-09-23 15:14:08 +00:00
Adam Olsen a159e852e6 - add some comments to libs/console/inputline.c
- rename pr_deadbeef to pr_deadbeef_ents
- add pr_deadbeef_locals, which does uninited locals.  (crashes from
  it are undeniably buggy code, unlike pr_deadeef_ents)
- add a missing break to packetlog printing's switch
- add sv_kickfake, which kicks people for attempting to fake messages,
  or replaces the ^Ms with # if disabled.
2001-09-23 00:36:21 +00:00
Bill Currie ea966952be segmentation fault handler from kkqwsv (thanks, Bill;) but with a couple
minor improvements (you get a core file if the seg wasn't triggered by progs).
2001-09-23 00:15:53 +00:00
Bill Currie 0425afb190 'rcon localinfo motd "hi there"' now works 2001-09-22 02:24:46 +00:00
Bill Currie 49a85718f8 total nukage of Con_*Printf calls from libs (except for video). Sys_*Printf
(Sys_DPrintf is new) is now used exclusively for all lib printing. Con_Init
sets the sys printf recirection to Con_Print (which has been revamped
appropriatly) and the server sets it to SV_Print (which was SV_Printf and
the new SV_Printf calls /it/). This should fix the rcon print redirection
issues.
2001-09-21 04:22:46 +00:00
Bill Currie 4416404982 total nukage of Sys_Printf calls in the client and server source. this paves
the way for libQFutil using Sys_Printf exlusively.
2001-09-21 03:01:14 +00:00
Adam Olsen bff5a4b4b4 make "Client foo connected" be a normal print instead of a dprint, and
make both that and spectator prints include the ip.
2001-09-20 19:50:24 +00:00
Adam Olsen ca51e3be02 - cleanup of up/down key handling, as per suggestions from james
- add a sv_console_plugin cvar (guess what it does)
2001-09-20 15:14:44 +00:00
Adam Olsen 0977b555f3 - build fix for without curses (untested, but should fix the problem I
had when I last tried)
- fix sv_filter_automask so it's not inverted (doh, again!)
- cleanups of ip filter prints
2001-09-20 06:51:25 +00:00
Adam Olsen 780cc26b37 - add a sv_filter_automask cvar to automatically get /16 for 1.2.0.0
- update writeip to include filter types.  It makes them all permanent
  though, since addip can't take an absolute expiration time :/
2001-09-19 12:58:02 +00:00
Adam Olsen 893c8b784b - tweak the cl_maxfps sleeping to be more finely grained
- treat empty snd_render/snd_output strings as "don't load"
2001-09-19 05:32:20 +00:00
Ragnvald Maartmann-Moe IV 6053f1feac Add gitignore for qw-master and qw-master.exe. 2001-09-19 00:06:56 +00:00
Adam Olsen ce7e6ac4a5 idontthinkimobsessivedoyouthinkimobsessive? 2001-09-18 08:58:51 +00:00
Adam Olsen f2cf4388d9 - improvements of how message contents are printed, which is #if 0'd
anyway :)
2001-09-18 07:26:12 +00:00
Adam Olsen e3bf60bda3 - fix the parsing of player numbers. oops :) 2001-09-18 07:00:41 +00:00
Adam Olsen 915674733c - much formatting cleanups
- made it use #if HAVE_FOO_H like the rest of QF
- a couple bug fixes
- cleaned up what it prints, including adding sequence numbers and
  player counts in the heartbeats
2001-09-18 06:47:02 +00:00
Bill Currie 8b8ce51085 GameSpy, eat your heart out :) (thanks, James) 2001-09-18 03:24:26 +00:00
Adam Olsen 8f4d39002c - add support for ipv4 embedded in ipv6 addresses. filtering should
now be fully functional for ipv6.  I really oughta test ipv6 sooner
  or later ;)
2001-09-17 07:31:15 +00:00
Adam Olsen d77fcc8695 - fix /0 and /9 masks to not give an error
- consolidate some duplicate code into SV_PrintIP, which returns a
  readable ip address allocated from a static buffer
- remove some debugging prints (addip is now silent on success)
2001-09-17 06:10:39 +00:00
Adam Olsen de716f07e7 - fix an off by one error with implicit masks
- don't attempt to ban/mute/cuff non-existant clients :)
2001-09-17 05:41:17 +00:00
Adam Olsen dcbc9ada26 - rework the parser to regain support for 1.2 ips. No longer uses
inet_pton for ipv4.

These are untested (other than compiling), as I've got issues with the
console I need to sort out.
2001-09-17 05:08:13 +00:00
Ragnvald Maartmann-Moe IV a7d8e2c0ea TE_EXPLOSION2 now does colored lighting. And spark showers brightened up a bit. Sparks all yellow now, none of the weird dingy grey ones. ;) 2001-09-16 20:07:28 +00:00
Adam Olsen f90fcf855e Massive cleanups of ip filtering
- addip now supports a ban time, and a ban/cuff/mute paramter
- addresses now can have /8 for the mask, instead of it being implicit
- removes support for 1.2 which meant 1.2.0.0/16.  use 1.2.0.0/16 or
  1.2.0.0 (implies a /16)
- ipv6 should mostly be supported, but there's a few places that
  aren't finished.  currently gives a compile error

(it WAS working, but now I cvs up'd and I gotta wait for a long test
build.  I don't feel like waiting any longer)
2001-09-16 15:40:21 +00:00
Bill Currie aade80a8d7 /finally/, libQFconsole is being used (qw-server only so far). Still has
some minor nits with ncurses and probably has some isues without ncurses
(quit didn't seem to work when I tried).
2001-09-16 05:41:28 +00:00
Adam Olsen bdfa1830fe - add a match command, which prints out who would be matched with a
ban/cuff/mute/kick command, but without actually doing them :)
- fix 'leet nick matching of eet in 37337, and a segfault, as well as
  simplifying the code :)
2001-09-11 07:10:45 +00:00
Bill Currie 4bc167c5aa evil hack, but can build from "make dist" again 2001-09-11 06:34:03 +00:00
Bill Currie 410783025e misc fixes forwarded from 0.3 2001-09-11 06:04:10 +00:00
Adam Olsen 75cb4c1c5a Make match_char handle a bunch more 'leet characters. There's also a
cvar to disable it, called sv_3133735_7h4n_7h0u ;)
2001-09-11 05:43:58 +00:00
Bill Currie def8bb3cd5 LordHavoc's VectorIsNull changes from 0.3 but as VectorIsZero (no such thing
as a `null' vector) plus a couple of other bits from his patch.
2001-09-11 05:18:15 +00:00
Bill Currie 1a27ded797 don't bother predicting if disconnected (forward port of Dabb's work) 2001-09-11 04:53:20 +00:00
Adam Olsen 65e5a7a4fc fix userinfo filtering in PF_setinfokey 2001-09-11 04:52:29 +00:00
Bill Currie 1717747eda more make dist 2001-09-11 04:45:48 +00:00
Bill Currie e27878e156 bring forward the sv_extentions and stdver changes from 0.3 2001-09-11 03:50:24 +00:00
Bill Currie 74e9f89e8c forward port the client info string filtering from 0.3 and remove info.h from
a couple of c files that no longer need it.
2001-09-11 03:10:29 +00:00
Ragnvald Maartmann-Moe IV 05d3aaa0bb Whitespace. 2001-09-10 17:32:22 +00:00
Bill Currie a7b402031f make nick matching case insensitive and 1 == i 2001-09-10 05:04:00 +00:00