Commit graph

207 commits

Author SHA1 Message Date
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
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
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
Adam Olsen
1f87234aac - change MAX_MASTERS from 8 to 32, since prozac has 9 of them 2001-10-03 03:42:28 +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
c78edb3a36 Apply Seth Galbraith's <sgalbrai@linknet.kitsap.lib.wa.us> chasecam patch 2001-09-28 07:51:15 +00:00
Ragnvald Maartmann-Moe IV
e2f14519fb Merge world.h. Also reduced smoke particle textures from 8 to 1, a considerable speedup through reduced texture thrash... 2001-09-24 17:52:13 +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
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
Bill Currie
882adf295a implement KK's ban, mute and cuff 2001-09-09 04:51:08 +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
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
Bill Currie
2a027969d5 various init order fixes and a */[] snafu sorted
also make translations big enough for the 32 bit colors
2001-08-25 05:54:21 +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
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
Bill Currie
3d30361595 show_ping and show_pl. pretty much like show_fps. 2001-08-11 04:14:58 +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
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
Bill Currie
fe8738b042 make dist works again 2001-08-01 17:49:25 +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
fb26d8b18a make Info_Set* take flags indicating wether funchars should be stripped or not 2001-07-31 18:27:49 +00:00
Bill Currie
368468dce0 revert the changes to cl_demo.c as they are a serious (10%) speed hit in qw.
While lost in the noise for nq for the standard demos, it seems like a good
idea to revert it too.
2001-07-31 07:29:44 +00:00
Bill Currie
ceadc2482c erk, forgot to commit this with the wrappers 2001-07-27 23:19:48 +00:00
Bill Currie
6000b06de3 support arbitrary hulls for players, too 2001-07-26 21:37:34 +00:00
Bill Currie
5ebee4a28b rotated bounding box support. this is so totally untested it's not funny
(though it does compile). Keeps things simple and only checks touched.

.integer rotated_bbox;

ent.rotated_bbox = getboxhull ();// be sure to check for failure (0)
rotate_bbox (ent.rotated_bbox, ent.angles, ent.mins, ent.maxs);
...
freeboxhull (ent.rotated_bbox); // when freeing entity. box hulls are limited

integer () getboxhull = #95
void (integer hull) freeboxhull = #96
void (integer hull, vector angles, vector mins, vector maxs) rotate_bbox = #97
2001-07-26 04:26:54 +00:00
Adam Olsen
619b12375c Start of support for rotated bboxes. shouldn't do anything yet 2001-07-26 00:01:13 +00:00
Adam Olsen
2f223924f4 Add a set of "crudefile" file io functions. Reads or writes an
entire C string (including terminating nul).  Read the source for
more details :)
2001-07-22 19:03:26 +00:00
Bill Currie
f3ab764666 bump MAX_BACK_BUFFERS up to 8. 2001-07-22 07:03:32 +00:00
Bill Currie
743fd9cc19 rename SetUserInfo to UserInfoCallback.
set self to the client entity for UserInfoCallback.
add void (entity ent, string key, string value) setinfokey = #102;
	similar usage to infokey.
2001-07-20 05:05:47 +00:00
Bill Currie
d30f1ee0c2 add an /optional/ SetUserInfo qc callback to allout the progs to take over
userinfo setting.

float (string key, string value) SetUserInfo;

key = infostring key
value = new value
returs: 0 for key not changed, non-0 to broadcast the change
2001-07-20 04:30:33 +00:00
Bill Currie
1c9e1b176f fear the mighty const correct patch 2001-07-15 07:04:17 +00:00
Adam Olsen
dcaa0b205f Make coop play possible in qw. Create a progs variable called 'current_skill'
and you'll get the nq edict pruning behavior.
2001-07-13 22:47:11 +00:00
Bill Currie
7a06a2254a rename the Con_Printf in sv_send.c to SV_Printf and change all the calls to
Con_Printf in the server code to SV_Printf.
nuke Con_DPrintf from sv_send.c
2001-07-11 23:11:29 +00:00
Bill Currie
001f178e86 rcon and say improvements from kkqwsv
server.h:
	add rcon_from_user
sv_ccmds.c:
	add SV_ConSay_Info_f (sayinfo) for quiet info messages and revamp the
	rest of SV_ConSay_f accordingly. Also include deactivated commands for
	cuff, mute, tell and ban (coming soon).
sv_main.c:
	revamp the rcon system to support both `root' rcon and admin rcon and
	provide better logging. admin_password is the cvar holding the password
	for admin access (used the same way as rcon_password)
2001-07-09 23:33:35 +00:00
Chris Ison
3456b5f479 part 1 of slist fixup, added ping and game filtering, also fixed some potential bugs. flame me later 2001-06-17 08:14:22 +00:00
Chris Ison
12ae6750af moved slist stuff out of cl_main.c and into cl_slist.c, enabled getting server list from master servers. to switch between servers.txt list (default) and list of servers from master servers use slist switch 2001-06-09 09:12:24 +00:00
Bill Currie
05cf89dd5d make progs type checking optional at configure time. still defaults to on. 2001-06-08 00:11:54 +00:00
Bill Currie
652069d3f2 This one's for Mercury :) (cvar control of pmodel and emodel) 2001-06-02 23:29:41 +00:00
Bill Currie
d2a4faae6e oops :) (packet log fixes: segs aren't nice) 2001-05-31 15:38:08 +00:00
Bill Currie
6bf58ab1af no header includes cvar.h now 2001-05-31 03:41:35 +00:00
Bill Currie
4babd979d6 nuke --enable-packetlog in favor of a net_packetlog cvar so packetlogging is
always available. also change the packet log open mode from truncate to append.
2001-05-31 02:43:48 +00:00
Adam Olsen
de4ab28d38 re-add support for changing client port (use +set cl_port foo) 2001-05-30 18:50:17 +00:00
Joseph Carter
05adfd0e53 quakefs.h -> vfs.h
quakeio.h -> vfile.h

More diff reduction between trunk and my VFS code.  Also took the time to
put some headers in order and fix a few #include's pointed out by moving
things around a bit.
2001-05-30 04:34:06 +00:00
Joseph Carter
186d577818 s/QFile/VFile/g - makes my diffs much smaller and more manageable for the
VFS work.
2001-05-30 03:21:19 +00:00
Bill Currie
d441a61bf3 make sure that the reliable packets from soundlist, modellist and the skins
info get acked. This is done by sending a no-op packet (0 byte didn't work
because the runt packet detector throws them out before the ack is seen).
2001-05-29 03:29:51 +00:00
Bill Currie
3c66182588 fix the sound precache lookup code in net_packetlog.c 2001-05-28 22:16:27 +00:00
Bill Currie
1a25bc9349 gl_screen.c and screen.c are now client clean (and merged :) 2001-05-23 06:33:23 +00:00
Bill Currie
c500fd7479 make dist fixups 2001-05-22 17:09:03 +00:00
Bill Currie
4a80639556 sw and gl rmisc are now client clean. the graphing functions ahve been pulled
out into r_graph.c (Time and Z graph), cl_ngraph.c (Net graph), and
{gl,sw}_graph.c (R_LineGraph). gl_ngraph.c is gone. Unfortunatly, something
is rather wrong with NetGraph in gl (probably R_LineGraph).
2001-05-22 06:00:38 +00:00
Bill Currie
da8715f27d sw_ralias.c and gl_rmain.c are now client clean. this involved a bit of a
revamp of skins. keep an eye out for broken skins (especially in nq)
2001-05-21 22:25:35 +00:00
Ragnvald Maartmann-Moe IV
a9c9a46c37 client.h gone from gl_rlight.c and sw_rlight.c.
cl_lightstyle -> r_lightstyle
2001-05-21 03:08:07 +00:00
Bill Currie
337430a113 sw_rmain.c is now client and chase clean. 2001-05-20 20:38:51 +00:00
Bill Currie
d360b01827 move dlight stuff out of cl_* into r_main.c. nq dlights seem to be broken,
but that seems to have been from before this work
2001-05-20 05:42:52 +00:00
Bill Currie
d1c2b0ec52 r_efrag.c no longer relies on cl*.h 2001-05-20 02:39:56 +00:00
Bill Currie
e0512e4af3 r_efrag.c is almost client.h free 2001-05-20 01:58:59 +00:00
Bill Currie
ec5daaa764 finally merge render.h. nq will NOT currently compile. I'll fix that when I
get back onto my computer at home
2001-05-19 00:23:21 +00:00
Bill Currie
378adbf8f6 diff noise reduction 2001-05-18 23:57:38 +00:00
Bill Currie
18e6b43168 diff noise reduction in render.h and its fallout 2001-05-18 22:07:10 +00:00
Ragnvald Maartmann-Moe IV
1dbfea351a console.c mergable. Little bit of cleanup of client.h 2001-05-18 18:33:37 +00:00
Bill Currie
a735b92bab kill the allowskybox varible. it wasn't ever checked anyway 2001-05-18 18:04:55 +00:00
Bill Currie
e61c33c9d9 merge of cl_tents and r_efrag. 2001-05-15 21:34:54 +00:00
Ragnvald Maartmann-Moe IV
4206b93721 diff noise reduction 2001-05-15 19:00:53 +00:00
Bill Currie
c7ee39acbb rename the qw c declaration of the client name cvar from name to cl_name 2001-05-13 04:01:06 +00:00
Bill Currie
559aa4485b split out the qw client specific skin code from skin.c 2001-05-11 22:47:15 +00:00
Bill Currie
105d1ee7d9 well, that didn't last long, did it?
merge r_cvar.h
2001-05-11 19:33:17 +00:00
Bill Currie
4ff86056db pull all rendering cvar declarations and initialisations out of the misc
files and put them into r_cvar.[ch] getting ready for the renderer merge
2001-05-11 19:21:48 +00:00
Ragnvald Maartmann-Moe IV
ab29863c04 Grok Goofs Grumble. 2001-05-10 17:49:35 +00:00
Ragnvald Maartmann-Moe IV
a5d3e614a0 More Merge Madness. 2001-05-10 17:45:05 +00:00
Ragnvald Maartmann-Moe IV
7aa70de483 *meld* 2001-05-10 17:26:03 +00:00
Bill Currie
2c07108c65 model loading code merge. dragged in smoe merges and cleanups of d_iface.h,
r_local.h, r_shared.h, client.h and render.h at the same time (couldn't get
away from that:/) verly likely to be lots of breakage (eg, player and eye
models are NOT checksummed atm), but everything builds
2001-05-10 06:01:11 +00:00
Ragnvald Maartmann-Moe IV
5cd8ddb1aa *shuffle* 2001-05-10 04:16:39 +00:00
Ragnvald Maartmann-Moe IV
f5f3260dec Taniwha apparently lost interest after doing the hard part, so I'll just merge this... 2001-05-10 03:36:31 +00:00
Bill Currie
00f6e26419 clean up some nasty dependencies 2001-05-10 03:16:29 +00:00
Ragnvald Maartmann-Moe IV
5864e85048 Clean up after aforementioned shoggoth. 2001-05-10 02:42:19 +00:00
Ragnvald Maartmann-Moe IV
9529f12f5b Mister Spock was here. 2001-05-10 02:37:55 +00:00
Ragnvald Maartmann-Moe IV
2fe98e9fa4 More merging. Become one with the shoggoth. Poor hungry shoggoth... 2001-05-10 02:29:38 +00:00
Ragnvald Maartmann-Moe IV
37a93b3e91 Merge draw.h. 2001-05-09 22:40:51 +00:00
Bill Currie
3ba56286ac more missed removals 2001-05-09 22:08:21 +00:00
Bill Currie
271803a568 commdef.h is dead
good riddance
2001-05-09 20:34:39 +00:00
Ragnvald Maartmann-Moe IV
5afd16bea9 More header cleanups. 2001-05-09 18:34:46 +00:00
Ragnvald Maartmann-Moe IV
7fa4b01208 More header merges. 2001-05-09 18:28:08 +00:00
Ragnvald Maartmann-Moe IV
7567098bc0 More header merges. 2001-05-09 17:57:57 +00:00
Ragnvald Maartmann-Moe IV
85de55a05c More header merging. 2001-05-09 17:29:07 +00:00
Ragnvald Maartmann-Moe IV
a454719fc7 Merge adivtab.h while I'm at it. 2001-05-09 17:24:41 +00:00
Ragnvald Maartmann-Moe IV
e0d43f4a7f Merge anorms.h and anorm_dots.h. 2001-05-09 17:22:27 +00:00
Ragnvald Maartmann-Moe IV
f6374b48ce First pass at updating nq particles. Compiles. Crashes. Taniwha wanted a look. Flee in terror.
Also has bunches of cleanups, including string.h/strings.h ifdefs, whitespace, and removal of pointless comments.
2001-05-09 05:41:34 +00:00
Bill Currie
b4b27ee13b move the make dist stuff to the top level Makefile.am and get make dist to
work in that make doesn't barf. probably missing lots of files
2001-04-18 07:18:54 +00:00
Chris Ison
ba1408d56d fixed seg cause of uninitialized cvar in_freelook. Also remove double initialization of sensitivity and lookstrafe 2001-04-17 03:08:52 +00:00
Bill Currie
6fcf8395ca FBDEV GLX SVGAlib X11 all build, but nq-glx doesn't link yet due to some
changes between nq and qw (gl_mtexable, texture_mode and GL_CheckBrightness)
2001-04-15 21:11:41 +00:00
Bill Currie
36cbe70826 vid libs build but probably don't work yet (I KNOW x11 doesn't) lots of
build failures in the main source still
2001-04-15 08:04:15 +00:00
Bill Currie
a0ab26ff6b merge screen.h 2001-04-15 07:47:49 +00:00
Bill Currie
7e67fd56f3 getting closer to building the vid libs.
in_common.c is the main input interface. in_x11 has been modified suitably
2001-04-15 07:18:04 +00:00