Commit graph

804 commits

Author SHA1 Message Date
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