Commit graph

256 commits

Author SHA1 Message Date
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
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
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
b1f4a778f9 the rcsid commit from hell }:> 2001-09-28 06: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
Bill Currie
0425afb190 'rcon localinfo motd "hi there"' now works 2001-09-22 02:24:46 +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
Bill Currie
1a27ded797 don't bother predicting if disconnected (forward port of Dabb's work) 2001-09-11 04:53:20 +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
1757dfcc75 make Cmd_StuffCmds_f get called if cl_quakerc is 0 2001-09-09 01:58:16 +00:00
Bill Currie
714f429276 cl_predict_players2 is gone (cl_predict_players is still there) 2001-09-07 17:44:02 +00:00
Bill Currie
e9cf5b4eba include sys/types.h for freebsd 2001-09-07 04:41:13 +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
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
a1f4187786 don't force r_wateralpha to one when not connected 2001-08-30 18:50:30 +00:00
Ragnvald Maartmann-Moe IV
ade99607cc header/whitespace sweep continues. 2001-08-28 23:05:45 +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
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
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
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
fb26d8b18a make Info_Set* take flags indicating wether funchars should be stripped or not 2001-07-31 18:27:49 +00:00
Bill Currie
104701a8c5 the beginnings of the console lib (using plugins for the client/server type
consoles). Currently, doesn't affect anybody other than the need to
re-bootstrap.
2001-07-16 20:41:10 +00:00
Bill Currie
1c9e1b176f fear the mighty const correct patch 2001-07-15 07:04:17 +00:00
Bill Currie
7ca4383790 move a Key function out of console and into keys.
replace a Con_Print call with Con_Printf ("%s", ...) (I want to make Con_Print
private)
2001-07-11 19:17:58 +00:00
Bill Currie
03c0216dde force_centerview is back 2001-07-06 17:42:04 +00:00
Bill Currie
fc09d2b00f port Bruce Momjian's patches from newtree with a less incestuous
implementation of his sound/focus patch. NOTE: only alsa 0.9 is tested
(Rhamph, can you test 0.5, please?) and only the alsa drivers stop the
hardware right ow.

WARNING!!! you /will/ have to re-install your plugins, or you will get
segfaults when the window gains/loses focus.

How do you tell if a window has focus on first mapping in X11?
2001-07-05 20:18:23 +00:00
Bill Currie
f61ca0e321 fix the persistent fires. For sanity's sake, the non-renderer specific parts
of gl_dyn_fires.c have been moved to r_main.c (for now).
2001-06-29 02:43:04 +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
652069d3f2 This one's for Mercury :) (cvar control of pmodel and emodel) 2001-06-02 23:29:41 +00:00
Bill Currie
a0796826ee Back out Mercury's removal of emodel and pmodel. They are /required/ by some
servers.
2001-06-02 22:20:34 +00:00
Zephaniah E. Hull
380dcf5c9b Some gl_draw cleanups for glpic.
Some sbar cleanups (still broken, suspect driver issues.).
Removal of pmodel and emodel infokeys, waste of info space.
For servers allow people downloading to hear people talking.
2001-06-02 20:39:54 +00:00
Bill Currie
d2a4faae6e oops :) (packet log fixes: segs aren't nice) 2001-05-31 15:38:08 +00:00
Bill Currie
323015b11a include/QF header cleanup. including config.h (or any file from include) is
a nono because headers in include/QF get installed, but include don't and thus
would break quakeforge-dev.
2001-05-31 05:33:13 +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
87bf3a2b5e cl_main.c:
move the packet loging init call to the right place and remove a duplicate
	PI_Init call
net_packetlog.c:
	don't be so invasive when dumping packets. use a private msg_t that gets
	initialized from the analysed packet, rather than net_packet (which
	tended to corrupt incoming packets)
2001-05-29 18:14:12 +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
73e6e1684f FINALLY, the nq and qw renderers are merged. the view and particle subsystems
are not yet merged due to their dependence on the client, but that will come
soon.
2001-05-24 19:22:35 +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
ec7335029d gl_draw.c is now client clean. 2001-05-23 04:05:10 +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
ece576ed4b reduce gl_rmain's dependency on cl*.h 2001-05-21 00:22:35 +00:00
Bill Currie
337430a113 sw_rmain.c is now client and chase clean. 2001-05-20 20:38:51 +00:00
Bill Currie
44943e78de better fix for the dlights problem (will prevent similar problems in the
future)
2001-05-20 06:23:46 +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
daca64ed04 more cl*.h dependency cleanups realtime and cl.time are no longer reffed 2001-05-20 03:54:55 +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
149e8477a6 Call SCR_UpdateScreen at the end of Host_Init 2001-05-19 22:27:44 +00:00
Ragnvald Maartmann-Moe IV
e9857d8213 Merges, and cl_writecfg now works in nq. 2001-05-19 20:57:29 +00:00
Adam Olsen
9cc30959e4 Sound now uses runtime plugins. Much thanks to Deek for doing all the
thinking :)
set fs_pluginpath to point to the right dir, and set snd_plugin to pick a sound
plugin.

Current issues:
- alsa 0.5 won't build properly, dunno why
- segfault on exit.  I think I know the cause of this, and how to fix it
- alsa 0.9, gus, sgi, sun, and win32 havn't been tested
2001-05-19 00:05:35 +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
d62ac62ff5 allow commands other than set to be executed from ~/.quakeforgerc 2001-05-17 21:32:59 +00:00
Bill Currie
011b16144e check for the availability of usleep 2001-05-17 18:29:22 +00:00
Adam Olsen
65cf395fd6 make it release the CPU when framerate is too high
I thought I commited this already...
2001-05-17 10:10:40 +00:00
Bill Currie
44f4c688a5 whitespace 2001-05-17 07:52:37 +00:00
Bill Currie
8f4394de4f various merge cleanups including moving the contents of R_Textures_Init into
Mod_Init
2001-05-16 17:08:56 +00:00
Ragnvald Maartmann-Moe IV
0c16f56c23 diff noise reduction. 2001-05-14 19:46:16 +00:00
Ragnvald Maartmann-Moe IV
2c80bff085 Removed useless comments. 2001-05-14 06:57:38 +00:00
Bill Currie
83e0754e41 fix missing "" around cvar default 2001-05-14 05:21:27 +00:00
Ragnvald Maartmann-Moe IV
28d3937399 Some more whitespace, and fixes for disappearing cvars. 2001-05-14 05:16:59 +00:00
Ragnvald Maartmann-Moe IV
91200a862d Whitespace. 2001-05-14 03:08:24 +00:00
Ragnvald Maartmann-Moe IV
924cdf917d Fix a new bug with dlights, more cleanups. 2001-05-13 23:15:34 +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
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
37a93b3e91 Merge draw.h. 2001-05-09 22:40:51 +00:00
Ragnvald Maartmann-Moe IV
7fa4b01208 More header merges. 2001-05-09 18:28:08 +00:00
Bill Currie
439eb60cb2 fix some missed refs to teamplay.h as a result of its move 2001-05-09 18:04:45 +00:00
Bill Currie
1fbb62d518 hook in the plugin system 2001-04-25 00:20:23 +00:00
Adam Olsen
fa4ee64984 And cshift patch here too.. 2001-04-20 13:33:56 +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
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
Ragnvald Maartmann-Moe IV
66fafd3e0e First stage of video and input system merge. The city has collapsed, wreckage sifting ensues... 2001-04-15 04:18:22 +00:00
Joseph Carter
75aa40276f A few more. Also removed a couple inaccurate comments. 2001-04-11 00:10:19 +00:00
Joseph Carter
2bc55b7828 Cvar cleanups.. NULL is now used in place of 0 for callbacks, this should
make Cvar_Get's a lot easier to read.
2001-04-10 23:39:30 +00:00
Bill Currie
8e2d89c4c2 fix up a mis-understanding about api headers
*taniwha larts himself for not explaining things to Despair
2001-04-10 21:45:42 +00:00
Ragnvald Maartmann-Moe IV
cbb4af711c Remove duplicate sound.h, move some things down from include/QF to include.
Prepare for joystick merge...
2001-04-10 20:15:18 +00:00
Bill Currie
a96536c896 nuke commdef.h and clean up the results by putting its contents where they
belong.
also, merge model.h and friends (MINUS render.h). this needed moving efrags_t
from render.h to model.h.
2001-04-10 06:55:28 +00:00
Ragnvald Maartmann-Moe IV
d7eb585502 Merge cd. Doesn't dlopen different cd drivers or anything exciting... Yet. 2001-04-09 21:15:09 +00:00
Chris Ison
2ece48c535 alpha code for master server queries 2001-04-03 05:48:24 +00:00
Timothy C. McGrath
d649508b5d This took half the hair on my head. Just kidding:
cl_max_particles now lives in *part.c - in GL it dynamically changes the
amount of particles on the fly! Needless to say this is fun, and this is
proboably the third cvar that uses the callbacks function at all - which
IMHO is really a cool trick Taniwha.

However I'm losing my SANITY in r_part.c - if someone could take a look,
I'd be greatly appreciative. It should be obvious to any developer that
I'm having a few problems. :P Basically the dynamic code is completely
and totally disabled, and I hacked in code which *works* but shouldn't
EVER EVER EVER be left there after we fix this as it is downright EVIL
the way I implimented it. SW client does work, and does still work with
+set cl_max_particles - however the hacks I made to get it to do that...
*shakes head* Tread softly in there, it's a mess.

Other notes of interest:
I changed show_time so it archives its setting. Got annoyed with it. If
someone finds this change to be bad, change it back. :)

glspeed.cfg got updated with a setting of 60 for cl_max_particles. 60
works nicely, and doesn't use too much speed on my aging hardware, so
I'm sure newer systems will just plain FLY with this on.

I also changed the cl_maxfps setting as 72 is great if you aren't using
a modem !.! due to the way cl_maxfps works, the higher it goes, the more
data is sent to you by the server. This causes a heck of a lot of lost
packets if you don't have the bandwidth OR if your card can't keep up
with the framerate. Either of which is bad. I set it to 30, the default
of the cvar is 0/32 so go figure out what works best for you I say.

Let me know if this blows up in your face and ESPECIALLY let me know if
you can fix the r_part.c problems!

Misty-chan
2001-04-03 02:56:39 +00:00
Bill Currie
e939ccc40a cvars now sport a callback function that gets called whenever the cvar changes
or on initial get.
2001-03-31 01:02:52 +00:00
Bill Currie
4162243287 eliminate Cmd_ForwardToServer from cmd.c. Cmd_ForwardToServer still needs to
be removed from cmd.h, but that can wait a bit.
2001-03-31 00:35:08 +00:00
Bill Currie
1e2e2f44c3 move the developer cvar into cvar.c 2001-03-30 23:35:48 +00:00
Bill Currie
4f2e22bfb8 merge and move quakefs.c into libQFutil where it belongs. at long last 2001-03-30 00:44:35 +00:00
Bill Currie
b432d0ea17 pull the game specific stuff out of quakefs.c in preparation for merging it 2001-03-30 00:30:38 +00:00
Bill Currie
cb5c262ffc qtypes.h:
remove includes of qdefs.h and compat.h
pr_comp.h:
	merge pr_comp.h from quake and qfcc, removing the copy in qfcc
cmdlib.[ch]:
	nuke the endian code.
qendian.c:
	initialise the LittleLong etc pointers at compile time rather than run
	time
com.c (both nq and qw):
	nuke the LittleLong etc init code
everything else:
	fix up after the qtypes.h cleanup
2001-03-28 17:17:56 +00:00
Bill Currie
f78b973978 move the api headers into include/QF and clean up (most of) the resulting mess.
target specific files that I don't build won't compile yet. just put QF/
infront of the offending headers.

Also move ver_check into libqfutils
2001-03-27 20:33:07 +00:00
Timothy C. McGrath
264547d470 Okay, this patch REMOVES the -particles command line option, and adds a
new cvar: cl_max_particles. This cvar is archived, has no lower or
upper limits (well, less than 1 is not allowed) and can be changed in
game at any time.

BUGS:

Only one so far. I can't figure out why it's doing this, but in software
clients, (well, at least X11) if you set it to 1 particle, it acts like
you set it far higher. 2 acts like you set it to zero... Or maybe
it's showing 2 and I just can't see it on my 320x200 window. In any
case, the vagary must be something in the software particles code,
because I basically used the same code from the GL particles code for
this as I used for the software renderer.

If nobody can find fault with my code, I'll just make a special note in
the console help.

In any case, let me know of any problems.

Misty-chan
2001-03-18 07:04:47 +00:00
Chris Ison
69fd58944e moved slist loading into cl_slist.c 2001-03-08 23:53:03 +00:00
Bill Currie
cf3629b3b3 merge in my progs work off the `taniwha' branch. This prigs us a few nice
thinks:
  o Full progs modularity
  o CSQC should now be just a matter of creating the builtin functions and
    loading the code.
  o total independence from progs globals, functions and entity field layouts
    on the conditoin that their definitions have not been stripped from the
    progs file.
  o optional (though currently forced on) type checking on access to progs
    entity fields from C
  o the progs engine is fully shared between nq and qw.
2001-03-04 06:30:30 +00:00
Joseph Carter
c057c27d9a Menu has been killed completely from qw. It's dead. I doubt anybody will
even notice, given that QW's menu was crippled to the point that it was
completely useless anyway.
2001-03-03 09:42:35 +00:00
Chris Ison
8ad00b04c3 added sharepath search when loading server list 2001-03-03 06:01:57 +00:00
Bill Currie
68220d1fb0 fix up packet logging for the new msg stuff 2001-03-01 20:41:20 +00:00
Joseph Carter
9c1988280b Cleaned up output of server print 2001-02-28 10:18:25 +00:00
Bill Currie
2bfeed6820 looks like utils is more or less complete for now, except for some fixes in
nq for abyss etc (ie, the magical -<mod> args).
The interface to the message subsystem got a revamp and all the mods to the .c
files reflect this. currently a little ugly, but I plan on abstracting msg
further to clean it up and make it more oo.
2001-02-23 23:16:13 +00:00
Jeff Teunissen
e4608744d2 str*cmp -> str*equal, where appropriate. 2001-02-21 22:38:58 +00:00
Bill Currie
cd7fdf33d3 s/stricmp/strcasecmp/ 2001-02-21 22:00:52 +00:00
Jeff Teunissen
de96c6c3b8 Configure updates. QSG_VERSION has completed its change to
{QW,NQ}_QSG_VERSION, because NQ and QW support differing versions.
2001-02-21 21:38:07 +00:00
Bill Currie
87854e1a0c initial checkin of most recent newtree and nuq(?) source 2001-02-19 21:15:25 +00:00