Commit graph

221 commits

Author SHA1 Message Date
Bill Currie
9298204208 support tonik's single player/coop qw port 2002-10-24 02:45:16 +00:00
Bill Currie
ef33b9754b support as many packet entities in demos as qwex does (ie, 196). Makes me
wonder if I should make the server support sending 196 packet entities to
qf clients.
2002-10-17 16:03:18 +00:00
Bill Currie
6e015bba1a d'oh, forgot to fix the FIXME :) fixes the seg on demo record start when
more than 1 player is invovled
2002-10-04 03:36:51 +00:00
Bill Currie
212e40b54a mvd recording :) (thanks to qwex 0.165b and highlander) 2002-10-04 02:29:03 +00:00
Bill Currie
30c8646e70 bring in sv_demo.c from qwex. This is only the beginning of the mvd server
side support.
2002-10-03 21:00:35 +00:00
Bill Currie
2383340031 mvd playback support. seems to work (get some weird entities hanging around
but I suspect that's the mod used in the demo I was testing with), but
probably needs some cleanup.
2002-10-02 21:56:45 +00:00
Bill Currie
a6318a3baf enhanced no_pogo_stick control 2002-09-13 04:30:18 +00:00
Brian Koropoff
7f4cd09e9d Removed the old timecheat protection and added a system that adjusts
time to what the server thinks is correct when too much inaccuracy
builds up.  This nearly eliminates all speed cheating, both normal and
reverse, except for a brief burst before the protection kicks in.  Might
need cleaning up/tweaking.
2002-09-12 04:57:40 +00:00
Bill Currie
f6729e35e5 use MAX_CLIENTS instead of 32 for MAX_PHYSENTS 2002-08-29 17:42:41 +00:00
Bill Currie
d8c1c735a6 up MAX_PHYSENTS from 32 to (32 + MAX_PACKET_ENTITIES) (ie, 96). While this
will potentially slow down both client and server, player collision physics
will be more accurate as more entities will be clipped against (and the
client should never complain about physent overflow again).
2002-08-29 17:32:16 +00:00
Bill Currie
a7380fef66 nuke msg_suppress_1 in favor of Sys_DPrintf 2002-08-27 18:05:59 +00:00
Bill Currie
ec47e08e1c go back to using QFile, quakeio.h and quakefs.h 2002-08-27 07:16:28 +00:00
Bill Currie
ad6e025a91 take cmd.[ch] back to basics. the gib code is temporarily gone pending
renovations. cmd_source handling is a little hacky in nq, but it's working.
2002-07-31 05:19:03 +00:00
Ragnvald Maartmann-Moe IV
587de27849 Another step towards QSG2 compliance. 2002-07-25 14:43:36 +00:00
Bill Currie
cb814165f8 allow progs to register user commands (but not override any of the standard
ones (yet))
2002-07-05 06:43:47 +00:00
Bill Currie
a397ef953a Nuke Netchan_AckPacket because it didn't really achieve its goal ('twas a
server bug anyway), broke qizmo (not that I really care: that's still qizmo's
bug) and (most importantly) broke recording demos across map changes.
(Closes: #14)
2002-06-19 19:58:36 +00:00
Bill Currie
5052e3db1f add qsg support for players and actually send EFFECTS2 and FRAME2 for
packet entities
2002-06-19 02:55:57 +00:00
Ragnvald Maartmann-Moe IV
c8bc5dfb4c QSG2 glows almost working. Plus lots of typos killed. 2002-06-18 21:41:24 +00:00
Bill Currie
1747c07da6 rename cl_demospeed to demo_speed and add demo_gzip (yeah, compressed demos) 2002-06-08 23:22:26 +00:00
Bill Currie
e8026d9c76 touch, think and blocked now support methods
also a little whitespace cleanup
2002-05-31 21:05:58 +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
Bill Currie
33513ce67b demo autorecord patch from RvB 2002-03-14 18:48:04 +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
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
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
8ee5acb208 redo Sys_Error so it's more usable throughout quake 2002-02-20 19:22:52 +00:00
Bill Currie
013f503738 start getting const-correct on vec3_t params 2002-01-03 05:29:38 +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
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
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
6a51021f86 low-copy networking code. gives about 3-4% speed boost to overkill (null
renderer).
2001-12-01 22:16:50 +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
fe50e4b1e5 cache the cshifts serverinfo value for further reduction of Info_ValueForKey
calls.
2001-11-11 07:02:38 +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
Adam Olsen
e0dfa2b453 - convert ALL the remaining svc's on the client. woot, hehe 2001-11-05 20:13:27 +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
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
9209138fac nuke the max message lengths from qdefs.h 2001-11-03 00:27:01 +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
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
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