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