Commit Graph

1778 Commits

Author SHA1 Message Date
Bill Currie 3b08ac89d0 Unlink the entity's efrags when removing the entity. 2010-12-03 17:15:11 +09:00
Bill Currie a6941e27ef Eliminate MAX_VISEDICTS. Unlimited visible entities.
The renderer can now render as many entities as can be crammed into the
currently visible set of nodes.
2010-12-03 14:59:02 +09:00
Bill Currie abe0c50a2a Use efrags with packet entities.
This fixes brush models in the software renderers.
2010-12-03 14:10:53 +09:00
Bill Currie 79796c1b16 Split out the MVD Playerinfo parsing into its own function. 2010-12-02 17:11:33 +09:00
Bill Currie d24837af4a Make nails use temp entities.
While reading the code, I noticed the comment stating that qw projectiles
(nails) are really temp entities, so I decided to make that true. The
client now supports unlimited projectiles.
2010-12-01 17:15:28 +09:00
Bill Currie 532e79bca6 Limit the amount of time that MVDs can skip.
Trying to cover very long times will probably cause more problems than it
fixes, so limit the length of time. Two seconds aught to be enough for
now. Need to look into proper handling of prevtime.
2010-12-01 08:11:45 +09:00
Bill Currie c416e15cd7 Get the format of the time hack packet correct.
dem_read has a length word, which I had failed to see at the time. It
seems that mvd's don't mind a zero length packets.
2010-12-01 08:04:24 +09:00
Bill Currie d8eb3aab36 Move the desktop files into their own directory. 2010-11-29 14:26:33 +09:00
Bill Currie 8831a109a4 Create and use mclipnode_t.
I didn't realize this was a critical part of fitzquake's large map
support. This should fix the non-solid brush entities in Conflagrant
Rodent.
2010-11-29 09:36:21 +09:00
Bill Currie 995a8d3e4e Don't use assembly code for SV_HullPointContents.
This is the only assembly code dependent on the size of dclipnode_t.
Removing it paves the way for fixing clipnodes in large maps.
2010-11-29 08:51:29 +09:00
Bill Currie cacd2fb895 FiztQuake's lerping system.
Seems to be mostly working. I get some funny results for zombies, but that
might be moving and turning at the same time causing issues.
2010-11-26 16:20:05 +09:00
Bill Currie 31c13d92a2 Protocol 666/large map support from FitzQuake.
Alpha and lerping aren't implemented yet, but things seem to be working. I
can load and play oms2.bsp (Conflagrant Rodent).
2010-11-26 16:20:05 +09:00
Bill Currie 8c4fe2f844 Rename Sys_DPrintf to Sys_MaskPrintf.
We now have finer runtime control over what gets printed. Need to do a
SYS_DEV audit, creating new masks as apropriate.
2010-11-26 16:19:26 +09:00
Bill Currie 525e20e3e2 Bring QW's unlimited beams/explosions into NQ. 2010-11-26 16:19:25 +09:00
Bill Currie cbee789fe1 Change ProgPath to ModelPath and dir.progs to dir.models.
The default is still $path/progs, as that is what is expected by the
game-code.
2010-08-25 13:31:13 +09:00
Bill Currie a51e888a1b Nuke MAX_OSPATH and clean up the mess. 2010-08-25 13:31:08 +09:00
Bill Currie 669771681a split up and modernize configure.ac
Most of the guts of configure.ac have been moved to config.d and are then
brought in by m4_include. This will make maintaining configure.ac much easier.

Also drop use of PROGRAM and VERSION, using PACKAGE_NAME, PACKAGE_VERSION, and
on occasion, PACKAGE_STRING instead, and clean out some old files we no longer
need.
2010-08-19 15:01:43 +09:00
Bill Currie a9511cb69e print the "message" of the map when displying the map name and time 2010-08-13 05:17:18 +00:00
Bill Currie 0dfff8fd58 ignore stuff 2010-08-07 10:42:09 +00:00
Bill Currie e9a1e5552e send multiple almost empty packets when a server frame is too long 2010-08-05 03:57:48 +00:00
Bill Currie 81e3a63791 check for a bad read when reading the command byte of a connectionless packet 2010-04-26 12:41:04 +00:00
Bill Currie 2822b47c3f we don't need any evil hacks around here :)
It seems the cursor hack hasn't been needed for a while. Also get rid of some
crazy function redirection and bogus comments
2010-01-13 06:53:10 +00:00
Bill Currie 70cc48826c I think I finally got the protocol side of map changes right
"pause" qtv recorders while changing maps
send changing/reconnect via the qtv extensions
2010-01-13 06:50:44 +00:00
Bill Currie 8ac7a71e10 don't create a new recorder when we already have one
this seems to fix the weird behaviour when changing maps
2010-01-13 06:49:28 +00:00
Bill Currie bb6619d332 docs and a bit of cleanup
delete core files with boostrap clean
fix the placement of a comment
simple docs for the standard client connection process (no mention of
downloads)
2010-01-13 06:48:54 +00:00
Bill Currie b05e9ea293 add a recorder count to the status bar
... and this found the problem with the weird qtv behaviour on map change:
changing maps causes the server to add a new connection for the proxy. oops
2010-01-13 06:48:20 +00:00
Bill Currie 701652b8aa progress on getting map changing to work with qtv
subsequent map changes are still behaving strangely, but signon buffer
handling is now much better.
2010-01-13 06:46:26 +00:00
Bill Currie 53cd9be90a Progress on map changing with qtv clients
Rename SV_DemoSendMessages to SVR_SendMessages, and make sure SVR_SendMessages
and SV_qtvSendMessages get called when SV_SendMessagesToAll is called.
2010-01-13 06:45:43 +00:00
Bill Currie 465d5572dd Don't lose sv.recorders on map change
This fixes the "reconnect" (or anything else, for that matter) not being sent
to qtv proxies after loading a level while the procies are connected.
2010-01-13 06:44:57 +00:00
Bill Currie b61a336d8a Don't spew "not recording a demo" when changing maps with a qtv
Just because recorders exist doesn't mean a demo is being recorded: add a flag
for such.
2010-01-13 06:44:29 +00:00
Bill Currie 907efe03a4 use "must" instead of "should" 2010-01-13 06:43:54 +00:00
Bill Currie 997102fea8 audit the usage of "only"
There are still a few iffy places (notably around certain prepositions), but
the relevant sentences are now much easier to read.
2010-01-13 06:42:26 +00:00
Bill Currie 916aa6fe8b give nq debugging abilities and minimize the differences between nq and qw 2010-01-13 06:29:36 +00:00
Bill Currie 6eae016d3e minor cleanups
fix some comments, cleanup some whitespace, and don't explicitly call
PR_RelocateBuiltins as it is called (indirectly) by PR_LoadProgs.
2010-01-13 06:28:28 +00:00
Bill Currie 0647a156e3 Apply witukind's XDG support patch 2009-12-22 12:28:55 +00:00
Bill Currie 5d15c70a0d progress in cleaning up the screen size mess 2009-12-22 06:02:53 +00:00
Bill Currie b14fcccd8f get qf compiling with gcc 4.4 2009-12-19 10:54:23 +00:00
Bill Currie 5df7fe5512 printf bogosity fixes from Dabb 2009-04-10 23:59:48 +00:00
Bill Currie 59c077638a Fix the annoying "Unknown interpreter 'id'" error. It was both bogus and a symptom of other problems (also fixed). 2009-03-16 11:49:52 +00:00
Bill Currie e3b47c9c6d This should make stdint stuff work better in general (can't test properly due to my mingw setup being borked) 2007-11-25 04:44:53 +00:00
Bill Currie 1a307e306f Con_Printf actually has a use after all: it prints to the console /only/ (no redirects, etc) 2007-11-07 08:19:17 +00:00
Bill Currie d66934942d nuke Con_Printf and Con_DPrintf and use Sys_* instead 2007-11-06 10:17:14 +00:00
Bill Currie 296894252d unlimited beams and explosions, and fix a few bugs missed due to testing the wrong version :P 2007-11-05 22:33:49 +00:00
Bill Currie 87248b9086 beams can now be any length, and first step to unlimited beams and explosions 2007-11-05 11:25:38 +00:00
Bill Currie 3b906fa5f1 must remember to nuke MAX_STATIC_ENTITIES 2007-10-09 10:29:40 +00:00
Bill Currie 0177971620 spelling error :P 2007-09-16 02:03:53 +00:00
Bill Currie 3f1479c204 make UserInfoChanged used in cpqw (should this be global?) 2007-09-16 01:52:57 +00:00
Bill Currie 7c542dd8e8 make sv_maxvelocity spherical rather than cubical 2007-09-16 01:21:47 +00:00
Bill Currie acbc95549e restart command 2007-09-15 10:09:08 +00:00
Bill Currie 3e50aae01f "print" command for dumping values in the progs and add return type info to the debugging information 2007-09-15 07:47:31 +00:00
Bill Currie d1e2b6b7d2 make the raw particle creation functions available and use them for creating the location marker effect rather than WizSpikeEffect 2007-09-15 04:20:45 +00:00
Bill Currie 755820d8b2 don't segfault when trying to use the loc command without a map loaded 2007-09-15 02:55:16 +00:00
Bill Currie ce2ba56c47 gcc 4.2 clean 2007-05-31 05:58:33 +00:00
Bill Currie 4d1a927be6 thought I tested this... 2007-05-16 21:21:30 +00:00
Bill Currie 8911a79901 check return code for UserInfoChanged too. 0: normal processing (server sends changes to clients) 1: server doesn't send changes to clients 2007-05-16 10:00:19 +00:00
Bill Currie 85c5594148 allow the progs to signal whether they handled the info change or not 2007-05-15 10:58:19 +00:00
Bill Currie 3528e803c1 a little more info on bad models/solid settings 2007-05-08 11:21:56 +00:00
Bill Currie fe4a4a9e55 "hardware" (haha) watch points (one!) in progs. only catches changes done by progs, and the expression parser is as flaky as anything, but it's better than nothing :) 2007-05-08 02:04:47 +00:00
Bill Currie 839c00b97b back out the large packet/entity related patches. they've provent to be troublesome and it seems FTE has a better solution. 2007-05-07 14:58:53 +00:00
Bill Currie c2894dcfce make backbuf max size tunable (for the big packets) 2007-05-07 12:09:10 +00:00
Bill Currie 32733ef3d9 set time and self when calling ClientCommand 2007-05-07 11:16:29 +00:00
Bill Currie 52f7bd4bb4 MAX_ENTITIES patch from phrosty 2007-04-19 07:36:12 +00:00
Bill Currie 7925e16d73 audit the usage of view_draw. It is really meant for draw callbacks, not direct usage by the application. 2007-04-09 00:22:17 +00:00
Bill Currie 2894182ec5 The status bar in the quakeworld server curses console finally does something. Currently only cpu usage, but as a proof-of-concept, it more than does its job. 2007-04-09 00:10:10 +00:00
Bill Currie 1cccd005fe silly me. totally misused the result of PR_NewMutableString 2007-04-08 05:47:32 +00:00
Bill Currie 593198ef65 terminate the builtins table 2007-04-08 05:28:21 +00:00
Bill Currie d7eda4c8e2 FL_FINDABLE_NONSOLID support in findradius 2007-04-08 04:46:52 +00:00
Bill Currie 318046e38b some white space 2007-04-08 04:21:30 +00:00
Bill Currie f309ac7e0b add ClientCommand support 2007-04-08 04:10:53 +00:00
Bill Currie e27b2a9e54 use PR_CatStrings for strcat and padstr. ironicly, this should work better for now, and definitely will by the time I'm done. 2007-04-08 00:00:35 +00:00
Bill Currie eaa79afe64 send nails2 to the mvd and qtv recorders, NOT to the client. d'oh 2007-04-07 13:52:26 +00:00
Bill Currie 662bc6e0c4 traceline enhancements from cpqw 2007-04-07 13:35:36 +00:00
Bill Currie 124506fda2 Fix the access alignment bug on 64 bit archs. 2007-04-07 01:41:23 +00:00
Bill Currie b203512eb7 don't complain about _fields not being found 2007-04-07 01:02:14 +00:00
Bill Currie bc1c68dd89 add malloc.h vor vc 2007-04-06 21:36:20 +00:00
Bill Currie 15e17b7c42 cpqw support. set sv_progs_ext to "cpcw" to activate its mapping 2007-04-06 13:59:05 +00:00
Bill Currie 5b761bac83 make progs related code a little more consistent with its int type usage 2007-04-06 00:47:41 +00:00
Bill Currie ac02c36aaf interim linux compile fixes for the in64 fixes (hah) 2007-04-04 08:27:49 +00:00
Bill Currie ff132bb536 64bit windows patch from phrosty 2007-04-04 07:48:14 +00:00
Bill Currie 51a7392730 fix both the black skins and phrosty's overzealous memcpy bugs 2007-04-03 22:47:42 +00:00
Bill Currie 3609a2215e forgot this 2007-03-24 14:20:36 +00:00
Bill Currie 12535ec1f9 error checking :) 2007-03-24 14:20:20 +00:00
Bill Currie a4f9363566 get the basics of http download working. need error checking. 2007-03-24 13:57:07 +00:00
Bill Currie d7b84e3ca3 http redirect is similar to file not found 2007-03-24 13:56:14 +00:00
Bill Currie 32c1127b57 that was a bit of a mistake, but it did highlight bugs :) 2007-03-24 10:38:16 +00:00
Bill Currie 02c41feabc make gamedir change a two phase operation so things can be done both before and after the cache is flushed. (still having problems with cached sounds, though) 2007-03-24 10:13:10 +00:00
Bill Currie e6c4817c92 fix lack of rendering in demos 2007-03-23 14:52:10 +00:00
Bill Currie 657baba8a9 always call QFS_Gamedir on receipt of the server info 2007-03-23 13:09:09 +00:00
Bill Currie 81a57bb3fa patch from phrosty for vc2005 support. includes fixes for a bunch of gcc-isms that crept in over the years. 2007-03-22 23:20:57 +00:00
Bill Currie 4276d92c25 update cap flag comments to reflect http being implemented 2007-03-21 11:56:25 +00:00
Bill Currie 4fd2c3d191 add EXT to the challenge string as a generic marker for the clients to send "*cap" etc. 2007-03-21 11:53:56 +00:00
Bill Currie b8712f2211 check that newname isn't "" rather than that it isn't null (never will be) 2007-03-21 11:35:45 +00:00
Bill Currie c3e081a5ee check downloadurl correctly 2007-03-20 21:17:49 +00:00
Bill Currie ca37474f0d remove the magic numbers from the download protocol 2007-03-20 14:41:54 +00:00
Bill Currie af20e26ded server side of http transfer support (untested) 2007-03-20 14:37:50 +00:00
Bill Currie fa011b55d1 client side of http transfer support (untested) 2007-03-20 14:16:43 +00:00
Bill Currie 4c234c2c27 ensure entities are cleared at map change (fixes segfault) 2007-03-20 13:23:17 +00:00
Bill Currie a2b1cc7845 I think I found the correct place for the state change 2007-03-18 21:56:14 +00:00
Bill Currie 659d95221e hopefully fix both the "get stuck waiting for 3d" bug and the null worldmodel bug. 2007-03-18 03:37:37 +00:00
Bill Currie cde6e60848 most of the hacking needed to break out the common code from snd_dma.c 2007-03-17 03:10:45 +00:00
Bill Currie deadb4d9bc make sure trace.fraction is initialized 2007-02-09 09:29:46 +00:00
Bill Currie 99e05d2188 warning cleanup patch from raorn 2007-01-06 21:31:03 +00:00
Bill Currie 45d467d748 box tracing (instead of point). Currently disabled because it doesn't work right just yet. However, when it is working, it will let us do things like crouching, crawling, arbitrary sized objects (including players), etc. 2006-12-24 03:13:29 +00:00
Bill Currie b2b1cf89f4 fix a nasty varargs bug 2006-12-09 08:43:18 +00:00
Bill Currie c2b9d8d549 fix some bugs found by figuring out why PR_RESET_PARAMS exists 2006-12-05 09:55:37 +00:00
Bill Currie 87cc09233c "long" audit. can't use long when we want 32 bits. May be a few more cases. 2005-10-23 13:19:21 +00:00
Bill Currie 3fb03fc2be hah, should have been using __attribute__((used)) all that time (rather
than __attribute__((unused))). fixes the missing console in -x11
2005-08-04 15:27:09 +00:00
Bill Currie ddae3850e8 qf now, for the first time in history, fully passes "make distcheck" 2005-07-16 03:46:11 +00:00
Bill Currie fbd30746c9 currently disabled code to allow packet logging in mvd streams 2005-07-02 01:31:19 +00:00
Bill Currie 621e97d7ad break out map_cfg from cl_parse.c so the server can use it too. (at the
behest of DrSpliff:)
2005-06-19 06:29:50 +00:00
Bill Currie 762aefc9b1 implement Raven's calling convention (rcall: first 2 params in opb and
opc). should give a general speedup to most progs.
2005-06-12 09:54:01 +00:00
Bill Currie 501180aaac gcc-4.0 fixes. even found some bugs :) (names /not/ mangled this time) 2005-06-08 06:35:48 +00:00
Bill Currie 66a29c3945 set the fraglog high water mark to a sane value (ie, < the log buffer size) 2005-05-09 22:33:21 +00:00
Bill Currie 47bf8c8423 player deltas seem to be working 2005-05-09 12:12:48 +00:00
Bill Currie bebfe1594d clean out some old cruft 2005-05-09 02:01:02 +00:00
Bill Currie 4f9c31595d qtv wants no pvs culling 2005-05-08 11:45:35 +00:00
Bill Currie a409ea4a74 spawn code complete 2005-05-08 08:04:50 +00:00
Bill Currie a154ad2835 patch from sunspot/shadows to make net_drop non-global and a bunch more
work on qtv
2005-05-08 06:35:46 +00:00
Bill Currie d16cf69017 fix a typo in a message 2005-05-08 00:47:37 +00:00
Bill Currie 84dd9c1a13 datagram needs allowoverflow 2005-05-07 12:57:48 +00:00
Bill Currie 97d14de4d9 talk about silly brainos... (and drat that mask, might have to get rid of
it and go for % instead of &)
2005-05-07 10:47:02 +00:00
Bill Currie f9541dcae7 fix an old bug that would mess up bots (geez, globals can suck) 2005-05-07 10:46:19 +00:00
Bill Currie 080e619675 oops, accidently broke delta updates in bad pl situations 2005-05-07 00:48:19 +00:00
Bill Currie ac96f94658 fix broken mvds (and probably qtv streams, for that matter) 2005-05-05 13:36:01 +00:00
Bill Currie d017b87c2b lots of progress, however mvd player deltas are borked atm 2005-05-05 11:46:29 +00:00
Bill Currie 978ad6ff48 oops, that didn't work as expected 2005-05-05 11:43:02 +00:00
Bill Currie 61aeae52bf don't need those prints any more 2005-05-05 07:59:58 +00:00
Bill Currie 966b5ee387 "mvd" stuff now gets streamed to the qtv proxy :) 2005-05-05 07:31:31 +00:00
Bill Currie 925ea16e1d we get to "spawn". whee. not long now and I'll have to work on the client
side :)
2005-05-02 09:00:17 +00:00
Bill Currie cd2f9434fc proxy now stays connected :) also gets the server data packet. most changes
due to move of pmove.h
2005-05-02 04:09:15 +00:00
Bill Currie 0213efb331 sv_recorder seems to be ready for qtv :) 2005-05-02 00:45:25 +00:00
Bill Currie c6cfcb1a9c mvds seem to work again 2005-05-01 22:13:10 +00:00
Bill Currie 73a34b86e8 recorder interface to ease writing server state to mvds and qtv. ones this
is working properly, adding qtv support will be trivial.
2005-05-01 09:07:20 +00:00
Bill Currie 12eb4eb72e serious cleanup of demo_t in preparation for converting it to a more
general recorder struct to be shared between the demo recorder and qtv
proxy connection(s)
2005-05-01 04:27:05 +00:00
Bill Currie 8950f3188f messed up the logic for ucmd_unkown 2005-05-01 04:08:47 +00:00
Bill Currie aa1e9a3de6 correct a spelling mistake, even though it's likely to get zapped soon 2005-04-30 23:25:50 +00:00
Bill Currie ee9ce7b279 oops, forgot to give the demo recorder player deltas :) 2005-04-30 09:29:01 +00:00
Bill Currie 629a2db63d first stage of rework for qtv support. there might be slight breakage in
mvds, more testing is needed, but things seem ok.
2005-04-30 08:45:17 +00:00
Bill Currie e500935f1f move SV_WriteClientToDemo (going step by step now) 2005-04-30 04:37:01 +00:00
Bill Currie d308d324cc o misc little cleanups
o add plent_state_t, packet_players_t and delta_t in preparation for
    re-worked delta compression code.
  o use plent_state_t in the client.
2005-04-30 03:59:23 +00:00
Bill Currie 2697671a9b make MSG_ReadDeltaUsercmd use a param rather than global to read the
message.
2005-04-27 12:16:15 +00:00
Bill Currie 9dcd2333d9 Serious mvd surgery. Interpolation of player position/angle is no longer
done and playerinfo is now written at the proper time, fixing the
"lagged dlights" issue (as Spike puts it:). Hack to fix broken mvds removed
as it should no longer be needed if everybody fixes their mvd servers :)
2005-04-27 09:54:37 +00:00
Bill Currie 74c0d0fe21 fix a nasty bug in QSG support where the wrong flag was getting set for
frame number > 255
2005-04-27 07:00:02 +00:00
Bill Currie 23d728022a small cleanups 2005-04-26 02:54:14 +00:00
Bill Currie f1437732a7 rename checkmove to tracebox. This is sort of Matthew T. Atkinson's
tracebox patch, but since the code was already there under a different
name, just rename the old code. Really got to wonder who first wrote this
function: Mercury or LordHavoc (and if LH, did he write it for qf or dp
first?)
2005-04-26 02:52:51 +00:00
Bill Currie 934f5431d4 little cleanups 2005-04-25 07:55:56 +00:00
Bill Currie 0b3d378d32 minor optimisations 2005-04-25 07:24:50 +00:00
Bill Currie 8fd7af71ae don't cause clients playing mvds to bail when console chats and fix a
missing \n in the recorded chat message
2005-04-25 06:22:15 +00:00
Bill Currie 2cc2da4d90 various little cleanups that should very fractionally speed up Host_Frame 2005-04-25 01:28:37 +00:00
Bill Currie 10232acdfe make droptofloor continue the trace if it starts solid. fixes the ceiling
hugging sng in e1m7.
2005-04-24 13:31:47 +00:00
Bill Currie 53ee50655c allow the progs code to hook into the parsing processes
This is an imperfect revision of history.
2004-11-12 11:15:00 +00:00
Bill Currie 2a36c74120 add dynamic (freeable but unchangeable) strings
This is an imperfect revision of history.
2004-11-11 09:40:00 +00:00
Bill Currie 13029212a8 don't ignore the size parameter to newstr
This is an imperfect revision of history.
2004-11-11 04:16:00 +00:00
Bill Currie 78d98ea787 remove the time pointer (not really needed)
This is an imperfect revision of history.
2004-11-09 22:32:00 +00:00
Bill Currie 8770df39e5 start documenting things (progs building still borked)
This is an imperfect revision of history.
2004-11-08 23:27:00 +00:00
Bill Currie 201252c1c0 FIXME cleanup and a missed win32 compile fix
This is an imperfect revision of history.
2004-11-06 02:21:00 +00:00
Bill Currie f5bc90a53a clean up some redundant progs functions (may be broken for a while)
This is an imperfect revision of history.
2004-11-05 11:49:00 +00:00
Bill Currie 2cb81b37f9 move the *_RecursiveHullCheck functions from pmovetst.c and world.c to MOD_TraceLine in libs/models/trace.c, at the same time rewriting the code to work itteratively rather than recursively.
This is an imperfect revision of history.
2004-11-02 08:40:00 +00:00
Bill Currie ca46503607 add -Wsign-compare (default for -Wall only in C++) and fix up the warnings 2004-07-13 19:14:01 +00:00
Bill Currie a89d8d23a3 grievre's patch to enable fullbright skins, controlled rotation and server
control of various features
2004-07-11 01:41:01 +00:00
Bill Currie 6d329e0118 work around "player name exploit" problems caused by qizmo (happens when
someone connects to the server)
2004-05-30 22:36:34 +00:00
Bill Currie 3fd7ed5b71 correct the skin format code as pointed out by Grievre 2004-05-17 00:31:56 +00:00
Bill Currie 6fd41b9e9d don't call SV_SendDemoMessage when it's only going to bail 2004-05-12 19:57:21 +00:00
Bill Currie 26a3b4fa54 make the server clients' pings visible 2004-05-12 04:20:58 +00:00
Bill Currie e9f19be2bb fix a thinko pointed out by zenja-b 2004-05-08 23:27:05 +00:00
Bill Currie 8a237169c3 patches to allow for multiple view ports 2004-05-07 03:54:35 +00:00
Bill Currie 5c82f48f41 fix logging of svc_deltapacketentities 2004-05-04 01:57:29 +00:00
Bill Currie 9ed9832789 bring back the alpha setting for dlights (finally found out what it was
for) and "fix" the wayward dlights in mvds: caused by svc_muzzleflash being
written before the player updates. Should probably fix properly that in the
server too.
2004-05-03 06:21:39 +00:00
Bill Currie 406d596178 don't allow recording while playing a demo 2004-05-03 03:49:02 +00:00
Brian Koropoff c16194cf76 Disable libQFobject from being built or used, since it doesn't serve
any purpose right now.
2004-04-27 21:58:21 +00:00
Bill Currie f88310ddd0 patch from Grievre to add a cvar to control "fake" filtering and change the
fake kick default
2004-04-27 03:45:26 +00:00
Brian Koropoff 7975d17f64 Remove references to the broken and soon-to-be-removed object system. 2004-04-20 05:34:35 +00:00
Bill Currie 37a5938b87 don't do hostname lookup on an empty string 2004-04-15 06:14:03 +00:00
Bill Currie cb7bbff49f oops, fix some minor breakage 2004-04-13 02:23:20 +00:00
Bill Currie 62cdbb5fc4 optionally allow recomte commands from a specified host address 2004-04-13 01:13:07 +00:00
Bill Currie 8fdd8a0888 make local command ip address checking sane 2004-04-12 23:38:09 +00:00
Chris Ison e148880ec6 oops, added append support to other functions that require it 2004-04-12 12:20:26 +00:00
Chris Ison fc40da217e append support added to cfopen 2004-04-12 11:25:53 +00:00
Bill Currie 4882005a49 compile fixes (oops) and start working on quaternion support in qfcc 2004-04-08 02:33:20 +00:00
Bill Currie c188159384 various mvd fixes for bots, especially getting the angles written 2004-04-06 22:02:45 +00:00
Bill Currie cd8486accc parenthesize a couple of casts. fixes the mvd recording crash
*taniwha dons his brown paper bag
2004-04-06 04:04:39 +00:00
Bill Currie 07e0682e28 make sure trace.allsolid gets set properly when skipping the
PM_RecursiveHullCheck call. Fixes the lg + pent + water map ejection bug.
2004-04-05 23:33:46 +00:00
Bill Currie 49f8787450 fix up some accidental asm compilation when it's not wanted 2004-04-04 05:34:20 +00:00
Bill Currie ab52e74874 Grievre's skin DoS fix 2004-04-04 02:34:05 +00:00
Bill Currie c1d5f230a9 minor cleanups 2004-03-31 19:14:55 +00:00
Bill Currie 16a90e17f2 cl_ents.c:
bring back the location markers
sv_ccmds.c:
	a few demo related fixes
sv_demo.c:
	minor cleanups
2004-03-23 22:39:17 +00:00
Bill Currie 476680b4e0 fix some new gcc warnings (from my experience with qfcc, such casts are
potentially dangerous anyway)
2004-03-21 04:54:56 +00:00
Bill Currie 482daf4fa8 add optional reason to kick and ban 2004-03-20 00:23:26 +00:00
Bill Currie 7f49727db5 bring back the missing chat logging 2004-03-15 20:41:34 +00:00
Bill Currie c4807a095d if we're not going to check the pvs, why bother calculating it? 2004-03-07 00:25:09 +00:00
Bill Currie bd358618da bit of a tidy up to make following things a bit easier 2004-03-06 04:42:43 +00:00
Bill Currie bd58f350dd remove debug print (oops) 2004-03-06 04:34:13 +00:00
Bill Currie 17afd25631 hide SV_Stop_f 2004-03-06 03:18:14 +00:00
Bill Currie a3934f8841 more progress for qtv 2004-03-05 23:42:15 +00:00
Bill Currie 4b9d978d44 initial commit of sv_qtv stuff. doesn't do much of anything yet but I need
to clean up DirectConnect first
2004-03-04 00:13:20 +00:00
Bill Currie 37024a4419 final (?) cleanup of center printing. turns out there's no reason to keep
it in the renderer and every reason to pull it out (ok, some might
disagree:)
2004-03-02 03:55:18 +00:00
Bill Currie 39fc0fe721 more centerprint cleanup. 2004-03-02 00:58:13 +00:00
Bill Currie d3dfb0ebd1 better screen function list selection 2004-03-02 00:02:09 +00:00
Bill Currie 2955fac550 first step of centerprint/finale cleanup. fixes the misplaced text for
end-of-episode text
2004-03-01 23:47:39 +00:00
Bill Currie f52b4e8aec beginnings of qtv support 2004-03-01 23:45:59 +00:00
Bill Currie a378581570 fix a couple places where reliable messages were getting sent to bots.
fixes the segs on bot_add in fbxa
2004-02-26 23:15:58 +00:00
Bill Currie 9878966625 whitespace 2004-02-24 20:58:30 +00:00
Ragnvald Maartmann-Moe IV 3acb2091ad Whitespace, plus inline a few small functions. 2004-02-24 20:06:53 +00:00
Bill Currie b502cfc3ce move ClientReliable* from sv_nchan to MSG_Reliabe* in msg_backbuf so the
backbuffer code can be shared between qw-server and qtv
2004-02-22 05:40:08 +00:00
Bill Currie a520c715ef remove some debug code (oops) 2004-02-22 01:32:55 +00:00
Bill Currie 6e6df349e4 move the ucmd message code into a common qw lib (more will likely follow) 2004-02-21 05:09:02 +00:00
Bill Currie 1033f7e322 move qw/include/protocol.h to include/qw/protocol.h making life easier
qtv can now connect to a server (won't stay connected though)
2004-02-21 02:31:22 +00:00
Bill Currie f4a06f3a37 fix a blooper discovered by nano 2004-02-20 20:35:13 +00:00
Bill Currie 0e1a9e5082 a bit more netchan cleanup 2004-02-19 23:06:47 +00:00
Bill Currie fa58b795f2 except for packet logging, netchan is much cleaner (no more cls in the
server!)
2004-02-19 08:58:42 +00:00
Bill Currie 35e29b8f1d qf-client and qf-server haven't existed for a /long/ time 2004-02-19 01:29:08 +00:00
Bill Currie 768de2df0e work with progs that use @self instead of self 2004-02-17 05:12:50 +00:00
Bill Currie 46a3f91146 check if the physent bbox (if there is one available) interects with the
bbox of the move and don't bother calling PM_RecursiveHullCheck if it
doesn't. Results in PM_RecursiveHullCheck getting about 5% of the calls it
used to (for overkill).
2004-02-17 04:29:26 +00:00
Bill Currie 825e1f88fd partially reworked PM_RecursiveHullCheck on the path to non-recursive.
Doesn't seem to be any slower than the old version (still there for now,
but not used) and might even be slightly faster already even though there's
not difference in call counts. Committing this now so I don't lose my work
(mostly to me getting frustrated and killing it:)
2004-02-16 07:17:48 +00:00
Chris Ison 6642686e33 removal of legacy MGL block_drawing variable. Fixed window restore bug that prevented the screen from being updated. 2004-02-15 03:40:50 +00:00
Ragnvald Maartmann-Moe IV d599b651e0 Palespace. 2004-02-09 04:16:59 +00:00
Bill Currie 920b80fd8c fix a goofed hardcoding 2004-02-07 00:19:51 +00:00
Bill Currie 9784ba5954 Grievre's gamedir callback patch to fix mangled sounds on gamedir change
plus a couple minor tweaks I notcied needed doing.
2004-02-03 03:01:06 +00:00
Ragnvald Maartmann-Moe IV cb94d50500 Improvements in time accounting. Accurate to +-0.5ms, instead of -1,0 like
others.

Based on Grievre's and zquake's code.
2004-02-02 21:18:11 +00:00
Bill Currie 58ce134a3c implement an optimisation Griever found. hopefully doesn't cause any
problems
2004-01-25 07:19:11 +00:00
Bill Currie 8651fabfbc bah, my findradius fix got stomped on :P 2004-01-25 07:12:01 +00:00
Bill Currie 76d7fc2b6d arg, forgot to terminate the arrays again 2004-01-25 05:27:28 +00:00
Bill Currie d9ac6dd99a d'oh, forgot to fix this in qw 2004-01-21 23:09:00 +00:00
Bill Currie 390ca99a92 first step to making qfdefs redundant. "standard" progs now get resolved
staticly rather than looking up the defs. "broken" progs should now work.
2004-01-21 08:09:47 +00:00
Bill Currie 6d02004ca8 Mike Gorchak's <mike@malva.ua> second (final for now:) QNX patch. renames
msg_t to qmsg_t.
2004-01-20 06:11:00 +00:00
Bill Currie e154c9add5 be consistent with WIN32 and _WIN32 (now all _WIN32) 2004-01-20 03:47:27 +00:00
Bill Currie 77b2942982 several libs can now get built as dlls in windows: console, gamecode,
gamecode_builtins, gib, image, modules, object, ruamoko and util.
2004-01-19 07:47:41 +00:00
Bill Currie 7ba6756810 temporary hack to avoid crashing when s_explod.mdl isn't precached but
explosions are requested
2004-01-17 07:14:42 +00:00
Bill Currie 249aee2e9f move the OO runtime support code from libQFgamecode to libQFruamoko where
it really belongs :)
2004-01-16 08:02:31 +00:00
Bill Currie e7ffad8772 more rua cleanups: now just one init function to call (it calls the rest) 2004-01-16 07:03:58 +00:00
Bill Currie 01392c78bb move the bulk of what whas libQFcsqc to libQFruamoko. 2004-01-16 05:46:19 +00:00
Bill Currie aee1554fad fix a missing terminator found by Grievre 2004-01-15 23:05:56 +00:00
Bill Currie c0561cd834 disable the "don't download sounds with -nosound" feature until I get
things sorted
2004-01-08 01:02:35 +00:00
Bill Currie 9537640b1c don't write config.cfg until /after/ it's been read :) 2004-01-07 06:29:34 +00:00
Bill Currie 187cef1d28 make dist fix 2004-01-07 00:14:39 +00:00
Bill Currie cca1558688 should have compile tested. oops 2004-01-06 23:23:38 +00:00
Bill Currie 89e6b8b2e6 ensure ucmd_unkown and sv_cbuf->unkown_command always point somewhere sane 2004-01-06 23:04:14 +00:00
Bill Currie 133879f8fa provide builtin mappings for id (none, really), qf and ktpro/qwe (qw only),
add qwe builtin extensions to qw-server. provide sv_progs_ext to control
the builtin mapping. valid values are "id", "qf" (our old static builtins),
"qwe"/"ktpro" (either works. for ktpro mod support) and "none" (no
mapping). any other value is equivalent to "none".
2004-01-06 07:00:39 +00:00
Bill Currie acd54afff7 move to using a hash table for builtin number -> builtin lookup so sparse
ranges can be used efficiently. move the auto-allocated builtins to
0x10000000-0x7fffffff. should be more than enough :)

use static builtin tables ("nul" terminated) instead of a series of
function calls to add builtins to a vm. should be more memory efficient.
2004-01-06 05:51:09 +00:00
Bill Currie dfc83c1f5f add PR_PushFrame and PR_PopFrame so temp strings are easy to use for
parameters to progs functions.

double the progs stack sizes (call depth of 32? eek)

allow one extra call on the progs stack :)

misc minor cleanups
2004-01-05 07:10:32 +00:00
Daniel Anderson d9db1a0c04 Treat cs_server clients like non-client entities for GIB "frag" event 2004-01-05 00:48:41 +00:00
Daniel Anderson 85beae40f0 Added the missing null terminator for a reliable message send. 2004-01-05 00:25:58 +00:00
Bill Currie dfe7f263c7 new internal printf engine for progs, mostly thanks to Deek.
also a few cleanup bits
2004-01-04 07:42:43 +00:00
Bill Currie a533761770 Nuke PR_GarbageCollect as it's both redundant with the new temp strings
and wrong anyway (could free strings it wasn't supposed to).

Don't free the string pointed to by a strref since it's already been
implicity freed (whole memory space nuked). Fixes new map crash.
2004-01-04 02:03:30 +00:00
Bill Currie c917233165 make sure outputbuf's mem gets initialized (oops:) 2003-12-22 23:40:20 +00:00
Bill Currie e53967b346 --disable-static now works (thanks for the heads-up, raorn) 2003-12-22 20:51:08 +00:00
Bill Currie e56e566bca eek, had the entity center-point calculation wrong. thanks, grievre 2003-12-09 04:29:12 +00:00
Brian Koropoff 991fc06360 Garbage collection:
Moved from reference counting over to a mark and sweep method.  Objects
are now required to implement an allRefs method which returns a pointer
to a list of all other referenced objects.  How the list is maintained
is up to each object.  The retain/release mechanism still works; objects
with any references will not be garbage collected, even if the collector
thinks they should be.
2003-12-09 02:01:05 +00:00
Brian Koropoff e498b196fe Fix a bug with ArrayList_Deinit_f (tried too hard to be clever), and add
an incremental, reference counting garbage collector for QFobjects.  A
different kind of collector will eventually be needed to run once in a
while to sweep up cyclic structures.
2003-12-07 22:45:32 +00:00
Brian Koropoff 7598ab35fb Move the QF object system into it's own library, fix up the standard
classes.
2003-12-07 04:50:46 +00:00
Bill Currie 53e382d3f8 fix an incorrect parameter bug found by Grievre 2003-12-06 05:06:27 +00:00
Bill Currie a726e33bf1 mask off non-light bits from effects in CL_NewDlight as EF_FLAG1 etc
shouldn't affect light effects.
2003-12-02 23:42:09 +00:00
Brian Koropoff 55181621bd First commit of an experimental low-level object system. At some point
GIB will be reworked to use it, and hopefully Rua will also so that the
two languages can share objects, events, etc.

Warning: This uses quite a few hacks and tortured macros, it might cause
breakage.
2003-11-29 04:40:25 +00:00
Bill Currie 82975dfe1f send the correct number of bytes 2003-11-25 03:22:51 +00:00
Bill Currie 5a49e9fea4 fixed an uninitialized variable. took reordering operations a bit to do so 2003-11-21 20:04:16 +00:00
Bill Currie ce745c8078 better command output redirection handling: maplist over rcon should show
all (or most, there are limits still) of the maps on a server with many
maps.

move the optional progs funcs into sv_funcs_t and add UserInfoChanged,
ChatMessage and LocalinfoChanged callback support.

clean up PF_setinfo (and SV_SetInfo_f and SV_Localinfo_f) using shared code
where possible und to use the UserInfoChanged and LocalinfoChanged
callbacks.

add chat message callback to SV_Say. if it returns zero, normal chat
handling is done, otherwise it's assumed to have been handled by the progs.

provide a hook for unkown user commands. non-zero return means it's been
handled.
2003-11-21 06:09:21 +00:00
Bill Currie 886b766295 whitespace 2003-11-21 05:01:50 +00:00
Bill Currie 0b44c78259 handle PF_QF bit iff the server is actually a qsg 2.0 server 2003-09-24 04:01:34 +00:00
Bill Currie 96f052a5e9 fix misplaced [ ] in teamplay mode 2003-09-24 02:24:30 +00:00
Bill Currie 12a90e9233 remove redundant calls to COM_InitArgv 2003-09-22 23:17:47 +00:00
Bill Currie 84ea81a770 fix E_POINTER and E_FUNCTION 2003-09-12 23:12:21 +00:00
Brian Koropoff 687a0845b6 Introducing the GIB Object System (TM). This breaks scriptable HUD for now
and probably has enough bugs to leave the Orkin man scratching his head,
but it works and allows you to do neat things like write classes in GIB
(amazing!) and subclass builtin classes (which are Object and Thread at the
moment, Hash should be coming soon as a replacement for stem and leaf
variables).
2003-09-11 06:03:13 +00:00
Bill Currie 2b5a3753ca nuke QF/texture.h moving it's contents into QF/image.h (yay, finally, a
real home for tex_t:)
2003-09-04 18:59:39 +00:00
Bill Currie 0a8867fde9 replace all VectorSubtract (vec3_origin, ... and
VectorCopy (vec3_origin, ... with VectorNegate (... and VectorZero (...,
respectively. Should be a small speedup.
2003-09-03 22:17:04 +00:00
Bill Currie 0b0f8bb613 make sure all + commands have been executed 2003-09-03 01:30:35 +00:00
Ragnvald Maartmann-Moe IV da4015d8d1 Typo fix. 2003-09-01 03:23:52 +00:00
Ragnvald Maartmann-Moe IV dc8e9422a2 Qize's patches. Add some more backwards-compatibility aliases to ln.gib,
remove a dead cvar, and don't display a message about what to do to connect
when use +connect already...
2003-09-01 01:52:20 +00:00
Bill Currie 8868a9d0bd get rid of some unneeded defines and ifdefs 2003-08-28 23:26:59 +00:00
Bill Currie db3e98ce75 make the waterjumptime <-> teleport_time interface work as intended 2003-08-27 23:11:57 +00:00
Ragnvald Maartmann-Moe IV c2053fbfb1 Prettier particles! Renderer is now informed of sv_gravity changes in qw. Not
supportable without protocol changes in nq.
2003-08-27 22:20:03 +00:00
Bill Currie 0d438e255d allow server clients to be tracked while spectating 2003-08-25 01:11:23 +00:00
Bill Currie 8e0a464ad7 get server clients updated properly 2003-08-21 20:35:36 +00:00
Bill Currie fd433442fb allow server clients to be initialized properly (SV_Spawn) and send server
client info to connecting clients
2003-08-21 03:50:30 +00:00
Bill Currie 59d321ded5 link in the hash functions for progs 2003-08-20 22:37:49 +00:00
Brian Koropoff 83334ce633 In response to an apparent server-side exploit that has shown up on
execpc's ProzacTF server, info strings for other players are checked to
ensure that they contain the "name" key.  If the key is not present, it is
set to "user-%i [exploit]", where %i is the userid of the player.  Players
using this exploit should now show up on the scoreboard and users list
and be visible during gameplay.  Although this renders the exploit useless
against players using QF, the exact way in which it bypasses the extensive
checks of a player's name by the server needs to be discovered so that it
can be fixed.  The server in question uses a bastarized version of QF
0.5.2, so it's possible that the problem still exists in QF today.
2003-08-20 07:22:34 +00:00
Bill Currie 5d14abb354 send server client info to the clients 2003-08-18 06:26:09 +00:00
Bill Currie 323a6182fd move pcx.c and tga.c out of libQFutil and into libQFimage with the hopes
for more image formats :)
2003-08-15 16:19:10 +00:00
Bill Currie d77addf552 don't record frame times until we've actually `started' the demo (ie, don't
record times for frames timedemo doesn't count in its fps calcs)
2003-08-13 21:53:40 +00:00
Bill Currie 34d2e0163c improve the timedemo fps output a little 2003-08-13 16:08:06 +00:00
Bill Currie 70ec073904 use a private cbuf for map_cfg 2003-08-12 23:22:30 +00:00
Bill Currie b3f99a70be rename cl_timeframes to demo_timeframes and make it /not/ archive.
move call to CL_TimeFrames_AddTimestamp from cl_main.c to cl_demo.c.

add a hacky little python script to create a pnm (portable anymap file
format) graph from timeframes.txt
2003-08-12 06:33:13 +00:00
Bill Currie 1c4c58f1a1 add a "demo_quit" cvar to cause qf to quit automaticly at the end of a
timedemo to make automation of profiling easier
2003-08-08 17:33:34 +00:00
Bill Currie 6a94607d9d rename VectorMA to VectorMultAdd, add VectorMultSub and use it in a few
places. Not certain how much speed difference it makes :/
2003-08-08 15:25:53 +00:00
Bill Currie ada828bdc9 remove a whole swath of potential buffer overflows by removing the buffer.
Also audit a few of the "FIXME: overflow" tags
2003-08-05 01:45:52 +00:00
Ragnvald Maartmann-Moe IV 0a7b56f003 show_fps -> hud_fps, show_ping -> hud_ping, show_pl -> hud_pl,
show_time -> hud_time, show_scoresuid -> hud_scoreboard_uid
2003-07-27 23:20:11 +00:00
Bill Currie 797dc5ccae oops, stuff_view 1 cell too narrow 2003-07-27 22:51:31 +00:00
Bill Currie 830fab2a39 show_fps now updates every 0.2 seconds and displays 10ths of an fps 2003-07-27 22:25:45 +00:00
Bill Currie 6063fb75d9 make the console run at full speed no matter what demo_speed is at. what a
lot of work for such a simple concept :P
2003-07-25 22:21:47 +00:00
Brian Koropoff 9b63402f12 Added llist.[ch], a set of general-purpose linked list routines. Added
cl_chat.[ch] to qw to hold advanced chat features, the first of which is
the ability to ignore chat messages from annoying players.  Some polishing
in this area still remains, but the current implementation seems to work.
2003-07-18 06:27:26 +00:00
Bill Currie 0234988c46 fix an exploitable overflow (owwie) 2003-07-17 22:14:50 +00:00
Bill Currie 454aa5c603 more mailing list corrections 2003-07-12 21:50:22 +00:00
Bill Currie 4f66e1e9da fix a bunch of the previous FIXMEs. needs a bit more work for win32
compiling
2003-07-08 22:39:45 +00:00
Bill Currie dddf045221 put "FIXME: overflow" on all the char arrays I could find that weren't
obviously safe
2003-07-08 20:11:10 +00:00
Bill Currie a9dbdb5b9b clean up Cvar_Info, removing redundant code and a potential overflow 2003-07-08 15:07:59 +00:00
Ragnvald Maartmann-Moe IV 5808d08858 whitespace. 2003-06-03 06:01:47 +00:00
Bill Currie 5bafde58d2 blah, failed to notice the info string was getting freed earlier 2003-05-30 21:22:30 +00:00
Bill Currie 42ade2c507 clear the player slots properly when disconnecting 2003-05-30 20:16:30 +00:00
Bill Currie 016743c3ab diff reduction and maybe a couple speedups 2003-05-29 04:49:34 +00:00
Ragnvald Maartmann-Moe IV 1c1e6e17c4 Clean up sv_pr_cmds.c, and sync up nq's copy. 2003-05-29 02:40:34 +00:00
Brian Koropoff a4bc588947 Draw PL on the scoreboard in the correct spot. 2003-05-26 01:41:58 +00:00