Bill Currie
7e078c7f9c
Revamp cshifts and implement in glsl.
...
The renderer should now be free of any direct access to client code. Even
3d rendering is now done via a function pointer.
The cshift code is done as a 2d screen function.
2012-01-28 20:45:14 +09:00
Bill Currie
4d66fc175a
Avoid processing skins every frame.
...
Processing skins every frame would slow things down unnecessarily, so call
the skin functions only when something changes.
2012-01-24 10:28:07 +09:00
Bill Currie
19dc579a5a
Fix custom player skins for the sw renderers.
2012-01-23 23:38:32 +09:00
Bill Currie
08990ebb5a
Make top/bottom color work for GLSL.
...
Works quite nicely (love those colormaps).
2012-01-23 19:24:12 +09:00
Bill Currie
9a4b065eaf
Fix top/bottom colors for the SW renderers.
2012-01-23 17:33:19 +09:00
Bill Currie
6437a77021
Fix glsl qw alias model crc checking.
...
GLSL alias models don't use the cache, so don't try to access the data via
the cache.
2012-01-23 16:47:43 +09:00
Bill Currie
7bfddd7ffe
Gut most of the old skin code.
...
Custom skins are smashed on most targets. Player colors don't work, etc.
However, this will let me do a much cleaner implementation.
2012-01-23 16:16:30 +09:00
Bill Currie
6fe557b407
Ensure the beam entitys' angles get set.
...
This fixes the incorrectly oriented beam entities.
2012-01-21 16:18:20 +09:00
Bill Currie
bfa28f1a84
Fix an out-by-one error.
...
The recent sanitization of nummodels lost the last model in qw due to the
insane way in which the model list is built. oops.
2012-01-12 11:28:25 +09:00
Bill Currie
ffa79eed01
Don't lie about the number of models.
...
The renderer being told there were 2048 models when there were only ~160
was a bit of an unpleasant surprise :P
2012-01-09 16:22:39 +09:00
Bill Currie
423e08ce21
Add demo to "movie" conversion.
...
It currently writes a series of png files (QF/qfmvNNNNNN.png), at a fixed
rate of 30fps, with no sound recording.
2012-01-05 19:19:37 +09:00
Bill Currie
297a4e2756
Put the D_FlushCaches mess back.
...
It turns out that when it is called is highly timing sensitive :(
However, the rest of R_ClearState remains.
2012-01-05 15:50:20 +09:00
Bill Currie
55a0ed49cd
Build qw-client-glslx too.
...
I was asked about timedemo overkill (bigass1 currently gets 40kfps, haha),
so I had to add qw-client-glslx to the build.
2011-12-25 16:41:14 +09:00
Bill Currie
53d89bf85a
Clean up the mess around D_FlushCaches.
...
Create an R_ClearState and call that from the clients. It calls any
necessary functions itself.
2011-12-23 12:51:47 +09:00
Bill Currie
29306f7799
Merge nq and qw sv_phys.c
...
sv_move and world are now identical between the two directories.
2011-12-22 16:54:22 +09:00
Bill Currie
2bec1ae1d9
Make qw's push/block handing the same as nq's.
...
NQ's handling seems to be more correct. The only likely problems are if
something is pushed into (eg) a button, and things will be a little slower.
2011-12-22 16:54:22 +09:00
Bill Currie
3eb788b3f6
Make qw's SV_Push remove ONGROUND for non-players.
...
This seems to have been an optimization for QW since standard qw removed
monsters. However, since there are QW mods that brought back monsters,
this should be an improvement.
2011-12-22 16:54:22 +09:00
Bill Currie
d1be716031
Tidy up the corpse related code in SV_Push.
2011-12-22 16:54:22 +09:00
Bill Currie
4ade879674
Make SV_PushEntity easier to read.
2011-12-22 16:54:22 +09:00
Bill Currie
64115d3331
Clean up sv_phys.c a little before merging.
...
Add some comments and make the code a little more readable so I know
what's going on.
2011-12-22 16:54:22 +09:00
Bill Currie
d441dc9027
Sort the cvar declarations.
...
The diff is still messy, but now it includes only new/old cvars, not moved
cvars.
2011-12-22 16:54:21 +09:00
Bill Currie
3eb859a88f
Move the entity transform setup into the clients.
...
This has several benifits:
o The silly issue with alias model pitches being backwards is kept out
of the renderer (it's a quakec thing: entites do their pitch
backwards, but originally, only alias models were rotated. Hipnotic
did brush entity rotations in the correct direction).
o Angle to frame vector conversions are done only when the entity's
angles vector changes, rather than every frame. This avoids a lot of
unnecessary trig function calls.
o Once transformed, an entity's frame vectors are always available.
However, the vectors are left handed rather than right handed (ie,
forward/left/up instead of forward/right/up): just a matter of
watching the sign. This avoids even more trig calls (flag models in
qw).
o This paves the way for merging brush entity surface rendering with the
world model surface rendering (the actual goal of this patch).
o This also paves the way for using quaternions to represent entity
orientation, as that would be a protocol change.
2011-12-15 17:09:01 +09:00
Bill Currie
4b515a961b
Back out the fitzquake lerp changes.
...
That's not the direction I wish to take the renderer.
2011-12-13 17:01:15 +09:00
Bill Currie
ab2fe9f6a7
Remove the mvd timeskip code.
...
After discussing things with Spike of FTE, it seems that not many clients
handle zero length mvd packets particularly well. While it the skip code
might be useful for qtv, getting the packets into one but not the other
seems to be not worth the effort at this stage.
2011-12-12 17:08:22 +09:00
Bill Currie
6ac017860a
Pretend to be MVDSV for ktpro.
2011-12-11 17:15:33 +09:00
Bill Currie
0e76e1b9bf
Sign extend the size read from the download packet.
...
This fixes qw-client "hanging" on a missing download file. Hopefully fixes
the OpenBSD crash, too.
2011-12-10 21:38:44 +09:00
Antti Harri
cc937828b8
Propagate flags set in pthread.m4 to nq and qw sources. Removes the need
...
to have -pthread in CFLAGS on OpenBSD.
2011-12-10 13:33:20 +02:00
Bill Currie
c3d41326b3
Do key dest changing properly.
...
key_demo wasn't so well thought out. This seems to be much better (and nq
is known to be working nicely).
2011-12-10 16:14:25 +09:00
Bill Currie
16c8b2a18d
Use the new demo imt.
...
There are some problems with menus and the console messing up the key_dest
state (they assume console/menu or game, nothing else), but otherwise
things seem to work.
2011-12-10 15:18:50 +09:00
Bill Currie
91e65b6c80
Rename mplane_t to plane_t and clean up the mess.
...
I got rather tired of there being multiple definitions of mostly compatible
plane types (and I need a common type anyway). dplane_t still exists for
now because I want to be careful when messing with the actual bsp format.
2011-11-28 20:54:34 +09:00
Bill Currie
03abb3b27d
Add support for ellipsoids.
...
Not that boxes work yet, but the fix is the same.
2011-11-28 20:54:33 +09:00
Bill Currie
d9ab3a1f54
Move the config file/command line parsing into qargs.c
...
I don't like the COM prefix, but it will do for now.
2011-09-11 14:57:05 +09:00
Bill Currie
a71acc9ae5
Move the essential init code into Sys_Init().
2011-09-11 14:56:47 +09:00
Bill Currie
f921005a5d
Nuke com.c.
...
It's contents have been moved into game.c and massaged appropriately.
2011-09-11 14:55:13 +09:00
Bill Currie
1f4a6daafb
Fixes for win32.
...
I'd forgotten why SDL_main had such a lame prototype.
It turns out my previous mingw testing wasing testing SDL :(
2011-09-10 17:47:38 +09:00
Bill Currie
86c5b79816
Nuke yet another stack buffer.
...
Dn Dn Dn another one's gone, another one's gone, another one bites the dust
2011-09-07 10:35:42 +09:00
Bill Currie
e3c5f6e608
Fix the wonky rotation translations caused by rotation support.
...
Damn loop in PM_PlayerMove messed up the rotation flag. To think, all that
trouble caused by one little flag.
2011-09-07 09:41:06 +09:00
Bill Currie
e6e1b10c58
Add support for rotating entities to QW.
...
Same as the rotating entities in NQ. Unfortunately, I have some problems
with certain entities doing really weird things during collisions. I'll
sort that out later.
2011-09-07 09:41:06 +09:00
Bill Currie
71be8510e5
Don't do anything when the message is empty.
...
This clears up some fun valgrind noise in SV_Print.
2011-09-07 09:41:06 +09:00
Bill Currie
a3f0a559a5
Fix a segfault when centerprinting.
...
The dstring wasn't getting initialized :/
2011-09-07 09:41:06 +09:00
Bill Currie
937ea854d6
Give QW NQ's explode-box jumping code.
...
It seems that QW already allowed explode-box jumping, but this makes code a
little more consistent. Still need to figure out what to do about the
player physics code: the client prediction is wrong, though the server gets
it right (before the change).
2011-09-07 09:41:05 +09:00
Bill Currie
e1b6f50345
Clean up the diffs a bit between qw and nq sv_pr_cmds
...
Add some missing functions to nq.
In qw, Sys_Printf is mapped to SV_Printf, so no harm there.
2011-09-07 09:41:05 +09:00
Bill Currie
cca9983a48
Clean up the startup file diffs.
...
This also makes functionality consistent across the platforms, such as
adding support for -dedicated to sdl based nq, and various timing
calculations are now consistent.
2011-09-04 12:04:03 +09:00
Bill Currie
db8eee502f
Eliminate the is_server global.
...
More ugliness gone :)
2011-09-04 09:58:13 +09:00
Bill Currie
8d853589e3
Use the gamedir callback for the serverinfo key.
...
This gits rid of a bit of nastiness in the gamedir code :)
2011-09-04 09:58:13 +09:00
Bill Currie
a55f490b47
Add support for map specified fog and skys to qw.
2011-09-04 09:58:12 +09:00
Bill Currie
be8277c8c4
Sanitize some of the differences in cl_parse.c.
...
Most of the differences in CL_ParseServerMessage are now protocol specific.
2011-09-04 09:58:12 +09:00
Bill Currie
9afb691dd9
Change MSG_ReadShort to return an unsigned short.
...
Avoiding the sign extension by default seems to be more useful.
2011-09-04 09:58:12 +09:00
Bill Currie
9ace9f2bfa
Fix some bad timing with a dstring_delete.
...
Opps :P, double free.
2011-09-04 09:58:12 +09:00
Bill Currie
28d9c7234c
A bit more diff reduction before attempting to merge client code.
2011-09-04 09:58:12 +09:00
Bill Currie
514f085e88
Reduce the diffs in cl_demo.c.
...
Starting to look like a change in protocol rather than a complete rewrite.
2011-09-04 09:58:12 +09:00
Bill Currie
d508da3cf0
Reduce cl_cmd.c diffs down to protocol specifics.
2011-09-04 09:58:11 +09:00
Bill Currie
85bcac3c8d
Reduce cl_cam diffs to spectator specifics.
2011-09-04 09:58:11 +09:00
Bill Currie
73d11aedca
Do a lot of diff reduction.
2011-09-04 09:58:11 +09:00
Bill Currie
fb9a095586
Fix include style mixup.
...
"" for local, <> for system
2011-09-04 09:58:11 +09:00
Bill Currie
765b9ebb65
Split up the qw entity handling code.
...
More pre-merge organization.
2011-09-04 09:58:11 +09:00
Bill Currie
62b17d3629
Split out the entity linking code.
...
This should smooth the merge process a little.
2011-09-04 09:58:11 +09:00
Bill Currie
62f7d14ed2
White space cleanups.
2011-09-04 09:58:11 +09:00
Bill Currie
245cfb0b6f
Much diff reduction.
...
In the process, found a bug where the yaw speed was not being limited as
desired.
2011-09-04 09:58:11 +09:00
Bill Currie
88005f6710
Diff reduction.
2011-09-04 09:58:11 +09:00
Bill Currie
f0b0a0f34f
Fix curl related building on OpenBSD.
...
We weren't using the specified CPP flags :P.
2011-08-26 10:43:41 +03:00
Bill Currie
f75b0a611b
Some compile fixes for OpenBSD
2011-08-25 22:35:20 +09:00
Bill Currie
6716b2e8ab
Add some disabled test code for interface access.
...
As part of the work on getting nq to work on multi-homed nodes, I used the
existing recvmsg code in qw-master to check how things work. I figured it
might be worth keeping.
2011-08-06 17:25:31 +09:00
Bill Currie
688e5c7e24
Use ncqport_e on the right field.
...
Well, now, that was incredibly silly, wasn't it? :P
2011-07-23 21:39:13 +09:00
Bill Currie
2035e65bad
Make the qport flags a little more doc friendly.
2011-07-23 17:51:07 +09:00
Bill Currie
efa0105748
Rename some headers to fix doxygen warnings.
2011-07-23 15:58:45 +09:00
Bill Currie
15a5f98439
Mintor improvment to the QWE newstr().
2011-07-10 21:29:10 +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
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
37b0648ec7
Undo the func field as selector patch.
...
The support code for the patch is left intact (it will be needed later),
but idea is too cumbersome for working with existing progs.
2011-04-08 15:01:56 +09:00
Bill Currie
2bacfdabf2
Interpret func fields as selectors for entities with objects.
2011-03-30 20:19:31 +09:00
Bill Currie
01144d23cf
Add a new gcc warning option and fix the two bugs it found.
2011-03-17 19:58:56 +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
9f596df607
QW skybox handling
...
Since we clip the world properly even with skyboxes active, and the
'skybox' serverinfo doesn't do anything in any other engine I know of,
nuke the 'skybox' serverinfo entirely and use a nice short semi-standard
name ("sky") for the serverinfo containing the map's preferred skybox
(as potentially modified by the .ent file on the server).
2010-12-28 15:02:56 -05:00
Bill Currie
dc99bc19c5
Make sure the r_skyname serverinfo key gets cleared on map change.
...
This ensures that the map's sky is always used unless the client itself has
set its r_skyname cvar. The server's r_skyname cvar is now the default
name for the skybox for when the map does not specify one. The map's sky
worldspawn field overrides this. The r_skyname cvar is no longer a
serverinfo cvar.
2010-12-27 23:12:46 +09:00
Bill Currie
fd96376b43
Forget skybox, it's r_skyname we want.
...
skybox has been irrelevent since I did that zclip hack for
skyboxes/skydome.
2010-12-27 10:03:37 +09:00
Bill Currie
90fcbefaff
Don't use entity_t's next for linking static enitities.
2010-12-25 19:59:34 +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
75f2102adc
Do the incoming/outgoing sequence checks before doing anything.
...
This fixes the bogus ping times found while checking out klik with qqshka.
2010-12-22 13:10:27 +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
0e677ce0f0
Give nw qw's timedemo statistics.
2010-12-14 08:59:15 +09:00
Bill Currie
e3f6e74814
And do the same fix in qw (oops).
2010-12-14 00:19:52 +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
87acf89404
lots of whitespace
2010-12-09 18:32: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
1291766298
Remove all "cosmetic" differences between nq and qw sv_phys.c
2010-12-09 08:52:40 +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
c2af7896bd
Revert "make droptofloor continue the trace if it starts solid"
...
This reverts commit 10232acdfe
.
The problem was really in the trace code, but it got fixed by "accident"
when I had similar problems in hipnotic a couple of years later. Now to
figure out just what the trace could really should be doing.
2010-12-05 14:56:32 +09:00
Bill Currie
cd660f6804
Fix smoke trails that were broken by the efrags commit.
...
The efrags system's usage of ent->visframe clashes with that of
CL_LinkPacketEntities. As the latter is rather bogus, and potentially
visible entities are always inserted into the map (causing ent->efrag to be
non-null), a null ent->efrag is a good indication that the entity is newly
visible.
2010-12-03 21:01:52 +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
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