Commit graph

854 commits

Author SHA1 Message Date
Bill Currie
0d5bebabe2 Replace qsockaddr with AF_address_t.
It seems qsockaddr's assumptions aren't necessarily portable, as OpenBSD
seems to be doing weird things with qsa_family. Even if that's not the
case, this is cleaner.
2011-08-24 09:14:02 +09:00
Bill Currie
5d52810b9c Disable single character tokens when parsing old save games. 2011-08-11 14:23:25 +09:00
Bill Currie
6f0ab844ea Some more nq networking debug prints. 2011-08-06 16:54:01 +09:00
Bill Currie
07d5b114bc Clean out some dead code and variables.
We haven't had serial or ipx support for a long time.
2011-07-29 10:11:14 +09:00
Bill Currie
efa0105748 Rename some headers to fix doxygen warnings. 2011-07-23 15:58:45 +09:00
Bill Currie
d2894a6f68 Rename Cvar_AliasGet to Cvar_MakeAliase. 2011-07-05 20:28:57 +09:00
Bill Currie
0f7390dd60 Clean up all the "set but not used" warnings.
gcc on my system is failing to treat this specific warning as an error :/
2011-06-19 10:48:02 +09:00
Bill Currie
3061270d3a Support jumping off pretty much anything.
See http://forums.inside3d.com/viewtopic.php?t=1675 for inspiration.

As this might break the gameplay of certain maps, the new sv_jump_any
cvar can be used to disable this feature (bringing back the old behavior).
2011-06-11 13:19:31 +09:00
Bill Currie
628bd1367e Fix some warnings in recent gcc.
gcc seems to be getting ever more picky (which is good, really)
2011-06-11 13:17:22 +09:00
Bill Currie
d88c09a033 Fix the crash on timedemo interrupting a timedemo. 2011-06-04 18:14:30 +09:00
Bill Currie
2ecdec91a8 Clean up the demo api a little.
This way, I can be more assured of what might be called from outside
cl_demo.c.
2011-06-03 22:47:32 +09:00
Bill Currie
82038bb504 Remove another stack character buffer.
While it was probably safe (snprintf was being used correctly) I prefer to
avoid the issue completely and centralize any potential problems.
2011-06-03 22:18:08 +09:00
Bill Currie
55cc0f9206 Bring back the unsigned type (PROGS version bump)
This is only low-level support (the unsigned keyword still does not work),
but sufficient to make switch statements using jump tables work.
2011-04-09 10:07:47 +09:00
Bill Currie
75ec6bf244 Clean out some unnecessary types from the progs engine and clean up the mess.
This is a nasty commit, sorry, but 99% of the commit is interdependent.
2011-01-10 12:25:31 +09:00
Bill Currie
a85c0713aa Nuke libQFbuiltins.
The gib and "common" builtins are now part of libQFruamoko.
2011-01-04 21:21:19 +09:00
Jeff Teunissen
ec11282a33 fix worldspawn sky keys in NQ.
sky/skyname/qlsky rather than sky/skyname/skyname :)
2010-12-28 15:03:58 -05:00
Bill Currie
fdd59b9851 Support entity files in the client too.
I'd forgotten about .ent files when I wrote the client side map parsing
(fog/sky) support.
2010-12-27 09:34:24 +09:00
Bill Currie
14480fd1b4 Move the call to R_ClearEnts to the renderer.
This fixes the hang on certain maps in qw-client.
2010-12-25 19:59:34 +09:00
Jeff Teunissen
493466a8ec X targets don't need X_PRE_LIBS 2010-12-24 05:03:32 -05:00
Bill Currie
de04e1b602 Lots of win32 (mingw cross) build fixes.
HTTP (curl) support is missing, but everything else builds.
2010-12-23 11:40:16 +09:00
Bill Currie
8bb507f220 Alias "show_fps" to "hud_fps".
"show_fps" is the quakeworld standard, so that's what most people expect to
use.
2010-12-16 11:46:25 +09:00
Bill Currie
23d3407622 Change a few defaults as suggested by bigfoot.
in_dga -> 0 (until X is fixed)
gl_multitexture -> 1 (why was this 0? not enough support back then?)
cl_usleep -> 1 (seems to be ok)
host_mem_size -> 40 (even 32 isn't enough these days)
rate -> 10000 (we're not in the modem era any more)
cl_mem_size -> 32 (16 is not enough, 32 sounds better than 24)
2010-12-16 11:34:39 +09:00
Bill Currie
12da412871 Get entity alpha (mostly) working.
I'm not sure if bsp model rendering is correct (backside issues), but
enities now sport transparency. Good test map:
http://www.celephais.net/board/view_thread.php?id=60157&
2010-12-16 09:34:29 +09:00
Bill Currie
52eb6a6b08 "realtime" is a client var, not a server var.
The correct var in the server is sv.time.
2010-12-15 18:47:17 +09:00
Bill Currie
64f801f546 whitespace 2010-12-15 08:51:43 +09:00
Bill Currie
775f8e959b Rotating bsp model support.
This is based on the code presented on
http://forums.inside3d.com/viewtopic.php?t=2376 (and updates linked from
that thread), but with modifications for hopefully supporting rotating
trains (and not duplicating big fuctions).

For now, only nq. qw will come after some more testing.
2010-12-15 08:36:53 +09:00
Bill Currie
0e677ce0f0 Give nw qw's timedemo statistics. 2010-12-14 08:59:15 +09:00
Bill Currie
05be74510f Free the explosion objects when clearing tents.
This fixes the hang after a few (3 or 4) play/timedemo runs of bigass1. Now
23 runs (and counting) seems to work well, though there seems to be a
memory leak somewhere.
2010-12-14 00:13:13 +09:00
Bill Currie
ce96e6b055 The beginnings of fog support.
gl_fog.c is taken from fitzquake with only minor modifications to get it
into QF. Other than worldspawn/network parsing, it's not used yet.
2010-12-10 17:17:30 +09:00
Bill Currie
aad204e80c Set the skybox from the map's worldspawn sky field. 2010-12-10 17:17:30 +09:00
Bill Currie
4af6c8c108 Catch and ignore sky and fog fields.
This way, we won't get spammed with "not a field" messages on map load.
2010-12-10 17:17:30 +09:00
Bill Currie
51009cdc4b Clear the server progs data when loading progs.
The baseline data doesn't matter so much, but the pointer fields relied on
the progs engine clearing them. I forgot about this :/
2010-12-09 21:35:21 +09:00
Bill Currie
bc91faf51e Change back to storing the leafnum.
Still unlimited, of course :)
2010-12-09 17:24:38 +09:00
Bill Currie
3ae2ef8d11 Remove non-progs data from edict_t.
All data that is irrelevant to the progs engine itself has been removed
from edict_t and moved into the sv_progs code.
2010-12-09 17:24:37 +09:00
Bill Currie
a062c758fd white space 2010-12-09 13:34:37 +09:00
Bill Currie
1291766298 Remove all "cosmetic" differences between nq and qw sv_phys.c 2010-12-09 08:52:40 +09:00
Bill Currie
6e87c4cea6 Make sure the level name does not over write the secrets count. 2010-12-08 21:59:23 +09:00
Bill Currie
9b9fde244b Move the EndFrame function "pointer" into the sv_funcs struct. 2010-12-08 21:20:35 +09:00
Bill Currie
33d768ba73 Get nq and qw sv_phys.c mostly into sync.
nq's SV_CheckVelocity will be a little different (spherical rather than
cubical), but sv_maxvelocity defaults high enough for it to not matter to
most players. It might even improve play.

The remaining differences need some careful thought before the physics
merge is done.
2010-12-08 18:14:40 +09:00
Bill Currie
a893d8ead3 Get nq and qw world.c into sync (again:P) 2010-12-08 12:55:07 +09:00
Bill Currie
e46b52a81c Plug the edict_leaf memory leak. 2010-12-08 09:20:43 +09:00
Bill Currie
31cf4b0d78 Use a linked list for the leafs in which the entity is positioned.
This allows the pvs to be used on an antity no matter how many leafs the
entity is touching. Seems to work nicely, but it will leak memory every
time a map is loaded.
2010-12-08 08:44:52 +09:00
Bill Currie
9bce1630a6 Revert "Tidy up CL_RelinkEntities a little bit."
This reverts commit ad7e7e45fe.

The cleanup broke entity linking, but fixing it would just duplicate the
previous tests, so might as well revert. Cleaning up the interpolation code
is probably a better approach.
2010-12-04 22:41:44 +09:00
Bill Currie
a4b97e9e2e Dynamic entity allocation. Unlimited static entities.
Entities can now be allocated dynamically. They are freed whenever a new
map is loaded.

Use the dynamic entities for static entities.
2010-12-03 21:01:52 +09:00
Bill Currie
ad7e7e45fe Tidy up CL_RelinkEntities a little bit. 2010-12-02 15:12:17 +09:00
Bill Currie
e32e8f3cd3 Give nq cl_usleep.
Cuts nq-glx' cpu usage to about 25% on my system. However, the default is
off.
2010-11-29 19:50:59 +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
c526b615b1 Tweak server connection handling.
Add some \n to the strings and do a Host_Error when the server is using a
"bad" protocol version.
2010-11-27 07:27:59 +09:00