Commit graph

901 commits

Author SHA1 Message Date
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
Bill Currie
882adf295a implement KK's ban, mute and cuff 2001-09-09 04:51:08 +00:00
Bill Currie
1757dfcc75 make Cmd_StuffCmds_f get called if cl_quakerc is 0 2001-09-09 01:58:16 +00:00
Adam Olsen
de83dfb587 Change the networking timeout down from 1 second to 0.01 seconds.
The CPU usage will seem higher with only 1 or 2 people connected, but
that's only when they have low framerates.  It should be the same when
there's enough incoming network data to keep it from waiting a long
time anyway.
2001-09-08 16:48:40 +00:00
Bill Currie
714f429276 cl_predict_players2 is gone (cl_predict_players is still there) 2001-09-07 17:44:02 +00:00
Ragnvald Maartmann-Moe IV
0d0e570676 Small particle trail speedup/legibility/flexibility improvement, at price of redundant code in sw/sw32. Tradeoffs. *sigh* 2001-09-07 05:37:11 +00:00
Bill Currie
e9cf5b4eba include sys/types.h for freebsd 2001-09-07 04:41:13 +00:00
Bill Currie
3b5969df1e don't call the packet acker when running a demo 2001-09-07 03:49:30 +00:00
Bill Currie
3a9191760f some minor improvements 2001-09-07 00:11:22 +00:00
Adam Olsen
22075ac46f Add a cl_quakerc cvar, for disabling the execution of the default
config.
2001-09-06 23:58:28 +00:00
Bill Currie
d7675ada7a move the particle count multiplication out of the renderer and into the clien
(for blood and gunshot, anyway).
2001-09-06 05:41:15 +00:00
Bill Currie
008d80df67 s/IMT_DEFAULT/IMT_0/g for the constant and move the name-enum entry for
IMT_DEFAULT to the bottom of the list so that IMT_0 gets written as such
rather than IMT_DEFAULT.
Also, clean up nq's EF_* dlight creation a bit (haven't touched
EF_MUZZLEFLASH: undecided on what to do).
2001-09-05 21:22:55 +00:00
Bill Currie
6c8a112cb8 get "make dist" working again 2001-09-04 21:00:08 +00:00
Adam Olsen
f1a016c8a5 - Refine the Cache_Get callback, to use a void * instead of a char *
- Switch alias models over to Cache_Get/Cache_Release
2001-08-31 12:22:45 +00:00
Bill Currie
a1f4187786 don't force r_wateralpha to one when not connected 2001-08-30 18:50:30 +00:00
Bill Currie
3656d6fd59 compile fixes for win32 and take the pruning shears to *sys*.c in qw and nq
(they're not done yet, though)
2001-08-29 17:45:53 +00:00
Adam Olsen
05bd18bf6d - Fix a DIR* memleak when crudefile builds the initial quota. 2001-08-29 09:27:30 +00:00
Adam Olsen
4deed9245a - Add CACHE_WRITE_{,UN}LOCK macros, and calls to them in Cache_*. No
effect until other things are done.
- Make Qalloc treat no callback as a failed callback
- Add a Qstrdup
- Fix a memory leak in cl_slists.c
2001-08-29 09:14:18 +00:00
Ragnvald Maartmann-Moe IV
2f5e0cf603 whitespace and headers. 2001-08-29 02:12:57 +00:00
Ragnvald Maartmann-Moe IV
ade99607cc header/whitespace sweep continues. 2001-08-28 23:05:45 +00:00
Bill Currie
d1a7649ba0 these too 2001-08-28 06:06:59 +00:00
Bill Currie
66997816e9 forgot to nuke these with the mak files 2001-08-28 06:05:59 +00:00
Ragnvald Maartmann-Moe IV
b1c0bb7626 Header/whitespace rampage continues. 2001-08-28 03:47:10 +00:00
Ragnvald Maartmann-Moe IV
f4fd3178f4 More header and whitespace horror reduction. 2001-08-28 02:43:24 +00:00
Bill Currie
a9d6bc9a30 total nukage of #ifdef QUAKE2 (R_DarkFieldParticles is present, just unused) 2001-08-27 23:21:09 +00:00
Bill Currie
330044ec72 don't need sv_misc anymore 2001-08-27 22:36:28 +00:00
Bill Currie
b90ef925b0 old bagage removal 2001-08-27 22:30:00 +00:00
Bill Currie
74dfef5cd1 sort-of merge world.h and (mostly: Sys/Con vs SV) world.c this winds up
bringing rotated bboxes into nq :)
2001-08-27 22:16:11 +00:00
Bill Currie
3edd4550d2 heh, nor do we need PROGHEADER_CRC 2001-08-27 21:13:00 +00:00
Bill Currie
9d27a12df7 progdefs? where we're going we dont need... progdefs 2001-08-27 21:09:13 +00:00
Ragnvald Maartmann-Moe IV
500b5c09d3 More header fixes, whitespace cleanups. 2001-08-27 21:00:37 +00:00
Bill Currie
272332bb2c make Sys_HighFPPrecision and Sys_LowFPPrecision available in sdl 2001-08-27 06:16:43 +00:00
Ragnvald Maartmann-Moe IV
50190403fa .gitignore update for sdl32. 2001-08-25 04:40:40 +00:00
Ragnvald Maartmann-Moe IV
c6266aba36 sw32. Flee in terror. This'll break compilation for everything until -sdl32 compiles. sw32 wont work for a while either, so don't get overly excited yet. 2001-08-25 02:47:11 +00:00
Bill Currie
1ccccc654e ipv6 compile fixes from Damm 2001-08-24 04:09:56 +00:00
Bill Currie
5253030d27 move the CL_SetState call to the bottom of Host_Init 2001-08-22 22:51:06 +00:00
Adam Olsen
3177d9c7eb Readd the aim builtin, which I must have accidentally removed earlier.
Ooops :)
2001-08-22 21:13:04 +00:00
Adam Olsen
ea063a1e0f having duplicate functions is bad. 2001-08-22 05:50:01 +00:00
Adam Olsen
17ba7ef92f - move alot of the builtins to libQFgamecode_builtins
- move the init into qw and nq
2001-08-22 03:24:25 +00:00
Adam Olsen
1314c89b6c - add libs/gamecode/builtins subdir, with libQFgamecode_builtins.la
- add .gitignore files
- fix building :)
2001-08-21 22:34:20 +00:00
Adam Olsen
cd99a6a4b6 timeframes patch I made so long ago. use cl_timeframes 1 before
running a demo, and when it stops it'll print out the time spent on
each frame (in microseconds) to timeframes.txt.
2001-08-21 05:35:35 +00:00
Adam Olsen
a276e87fbc Change lightning bolt rotation to be time-based. It's kinda ewwy, but
it seems to work ok.
2001-08-21 05:03:14 +00:00
Adam Olsen
770fecd4bc Replace sv_gc with pr_gc and pr_gc_interval. pr_gc has 0 for off, 1
for on, and 2 for auto (on for newer progs, off otherwise).
2001-08-20 21:06:25 +00:00
Bill Currie
121bd09eef explicitly set the client state after startup to ensure everything related
to the state is current.
2001-08-19 21:19:42 +00:00
Bill Currie
7cda1c6705 put in some comments about future player dlight improvements 2001-08-19 05:41:56 +00:00
Bill Currie
7aa7bb663a centralize client state setting so ancilliary operations can be guaranteed
to happen (eg, key binding table selection for console).
2001-08-19 03:51:52 +00:00
Adam Olsen
d5fa2cc321 Major diff reduction in *sys_*.c files. Don't think I broke anything,
but hard to test it all..

I skipped a couple files, because they contained *alot* of
platform-specific functions.
2001-08-18 21:57:45 +00:00
Zephaniah E. Hull
80696badc7 kgt->imt, and imt now displays the current IMT. 2001-08-17 07:06:01 +00:00
Zephaniah E. Hull
20adccc9e4 A few things, first is that I removed the (rather broken) serial
networking support.

Second, I moves keys.c from qw and nq to libs/video/targets when I did
the next thing.

Existing user configs which do binds, sledge hammer. Sledge hammer,
existing user configs which do binds. *WHACK* *WHACK* *WHACK*

See, much nicer now.

Someone should document it, and fix all targets which don't use SDL for
input. (I honestly don't expect svgalib and the like to ever be fixed.)
2001-08-16 09:19:36 +00:00
Adam Olsen
c02f4ed59e show_ping while disconnect == bad. SZ_Getspace bug fixed. 2001-08-16 02:32:50 +00:00
Bill Currie
7047f2da36 fix some missing ()s that got lost due to the () forrest that got chainsawed
(ie, the previous code was /a mess/)
2001-08-16 02:08:22 +00:00
Zephaniah E. Hull
eab8ff6e25 Just some MASSIVE speed boost for PF_findradius. 2001-08-15 23:03:37 +00:00
Jeff Teunissen
339ec3c0d8 Misc. cleanups. 2001-08-15 22:37:11 +00:00
Bill Currie
a22fd5a172 sdl 1.1.5 fixes 2001-08-15 21:29:18 +00:00
Bill Currie
59e50d933d sdl and sgl clients now build 2001-08-15 20:55:22 +00:00
Bill Currie
8d0acf7630 remove some unneeded -L.s. it seems some versions of binutils don't like it 2001-08-15 06:12:38 +00:00
Adam Olsen
b277881832 Don't try to write freed entities to the client 2001-08-14 11:15:47 +00:00
Adam Olsen
f9f1e053a4 use 0 instead of sv_highchars when setting the *cheats serverinfo,
since sv_highchars isn't initialized at that point.
2001-08-13 09:14:15 +00:00
Bill Currie
a290afd2b5 back out the dynamic allocation so prozac will still work 2001-08-12 19:50:23 +00:00
Adam Olsen
eed71f2803 err, and of course we want *line* buffered, not *un*buffered. hehe, I
thought the output looked kinda slow..
2001-08-12 11:30:08 +00:00
Bill Currie
bbef4b0b6f ugh, I hate the need for this, but it's needed. sv_old_entity_free is my
compromise :) set it to 1 to allow progs like MegaTF to work (reload crash).
2001-08-12 04:14:25 +00:00
Bill Currie
3d30361595 show_ping and show_pl. pretty much like show_fps. 2001-08-11 04:14:58 +00:00
Ragnvald Maartmann-Moe IV
ca4d4791c9 Fix a severe braino, and get less excessively parenthetical in one spot. 2001-08-10 03:07:34 +00:00
Ragnvald Maartmann-Moe IV
b868a09661 Kill off gl_view.c and sw_view.c. Renderer merge is more or less complete now. Software and gl renderers now calculate color shifts the same way, and sw looks a bit different now. Powerups don't shift enough in sw right now, IMO. 2001-08-10 00:28:57 +00:00
Adam Olsen
4cd037f025 Make the console line-bufered. woot. 2001-08-09 12:19:15 +00:00
Adam Olsen
0c63c11b4b diff noise reduction. mostly just "progs_t * pr" to "progs_t *pr".
Only code change is copying qw's variable-size PF_VarString in place
of nq's 256 char "I wanna be a buffer-overflow exploit!" version.
2001-08-09 06:05:43 +00:00
Bill Currie
fb42199637 change all the SVFIELD calls to SVtype. this should make the code a little
easier to read.
2001-08-08 20:28:53 +00:00
Ragnvald Maartmann-Moe IV
2ccebbfd5c Exit early on common case, rather than go through all checks. Minor speedup, but measurable on higher framerate demos. 2001-08-07 18:53:22 +00:00
Bill Currie
b3d20d834a fix for compiling under freebsd. thank's, stu 2001-08-07 17:43:49 +00:00
Bill Currie
014e36dece viewangles in the client doesn't seem to get updated for the client, so
use cl.viewangles instead.
2001-08-06 00:27:41 +00:00
Adam Olsen
9f00601b82 change checkfunction and getfunction to checkbuiltin and getbuiltin 2001-08-05 06:02:33 +00:00
Adam Olsen
040345bc60 Change all our new functions to use dynamically allocated builtin
numbers, except checkextension, checkfunction, and getfunction.  Yes,
this may break some stuff. :)
2001-08-04 23:58:03 +00:00
Adam Olsen
dc98a63098 Add a getfunction, which gives an error if it's not found 2001-08-04 23:44:50 +00:00
Bill Currie
1a73a4789b make /sure/ ^h is covered. seems ncurses is a tad on the weird side 2001-08-04 23:19:16 +00:00
Adam Olsen
d241e8dd64 Make sure all the function names passed to PR_AddBuiltin are
lowercase, for sanity reasons.
2001-08-04 22:14:45 +00:00
Adam Olsen
c218ede288 Add support for checkfunction, which is a builtin that searches for
another builtin by name, and returns it.

Soon I'll change all our new builtins to by allocated dynamically, as
well as changing the number checkfunction uses, and happily break
everything that uses them :D
2001-08-04 09:11:50 +00:00
Adam Olsen
484edfde55 Some of an aforementioned function to search for functions by name.
Guess it's not as trivial as I thought.
2001-08-03 07:37:21 +00:00
Adam Olsen
ae133d0a90 Modify progs to add builtins at runtime. It should be trivial to
lookup functions by name, and make all our new QC builtins allocate
numbers automatically.
2001-08-03 06:40:28 +00:00
Adam Olsen
19387f0801 diff noise reduction, cleaned up the comments somewhat 2001-08-02 23:27:45 +00:00
Bill Currie
0a4caac3c6 mingw compile fixes 2001-08-02 23:00:39 +00:00
Bill Currie
b455458629 exit cleanup. Sys_Error and Sys_Quit should be used whenever possible. 2001-08-02 17:16:12 +00:00
Bill Currie
79eb948127 for some reasone, building the rpms wanted an explicit stdio.h inclusion
*shrug*
2001-08-02 03:24:18 +00:00
Adam Olsen
513347effd Fix that classic "playing without joining a team" TF cheat :) 2001-08-01 00:38:16 +00:00
Bill Currie
828e8b60b6 bloody builtin prototypes 2001-07-31 19:03:00 +00:00
Bill Currie
fb26d8b18a make Info_Set* take flags indicating wether funchars should be stripped or not 2001-07-31 18:27:49 +00:00
Bill Currie
2b19252d73 fix PF_hullpointcontents and the clip_mins/maxs setting in PF_rotate_bbox
NOTE: the api to PF_hullpointcontents has changed!!!
2001-07-31 17:09:42 +00:00
Bill Currie
30f93439a0 /tiny/ optimisations 2001-07-31 08:06:27 +00:00