changed Draw_CachePic to load both tga/png/jpg and lmp/wad images at once and take the pic size from the lmp/wad, and cleaned up parts of wad and lmp loading, eliminated SwapPic
don't crash if r_restart is used in startup scripts before anything starts the video system (fixed this by starting video system in r_restart if necessary)
fix a buffer overflow bug in InfoString_SetValue (thanks div0!), and increase userinfo and serverinfo strings to 1280 bytes each (from 196 and 512 respectively)
added ping and status command output parsing in the client, currently this is used to get pings in the scoreboard on Quake servers (and of course older DP servers), the server sends a pingplreport command after the human-readable ping report so that the packet loss display works (but only if the server supports this), changed client to send ping command instead of pings (at least until the next protocol version increase) and the client will not print ping report messages while the scoreboard is displayed. the status command parsing is not actually used at this time but could be the basis of iplog support
added ping and packet loss display to scoreboard, and pings/pingplreport commands to make it work without changing protocol and without breaking demo compatibility either, this can work on any server that supports the pings command and replies with pingplreport
revised scoreboard layout and added column titles above it
made nexuiz missing data fallback menu apply to all games when their main menu image is missing (the Open Console and Quit options are more useful than a bunch of checker squares)
clean up of FL_ONGROUND checks in MOVE_TOSS/FLY/FLYMISSILE/BOUNCE/BOUNCEMISSILE/STEP code, this fixes items and monsters sometimes being left floating in the air after a trap door opens or when riding a func_train (most notably in the lava room of r1m5 of mission pack 2)
added sv_gameplayfix_upwardvelocityclearsongroundflag cvar to allow the upward velocity gameplay fix to be disabled if desired
molivier [Sun, 25 Jun 2006 17:35:17 +0000 (17:35 +0000)]
You can now set a different default base directory at compile time, by defining DP_FS_BASEDIR to the new value (ex: make DP_FS_BASEDIR=/usr/local/games/quake release)
molivier [Fri, 23 Jun 2006 19:51:29 +0000 (19:51 +0000)]
The name of the SDL config program used by the makefiles is now configurable thanks to the SDL_CONFIG variable (ex: make SDL_CONFIG=sdl11-config sdl-release). Its default value is "sdl-config"
molivier [Thu, 15 Jun 2006 06:13:08 +0000 (06:13 +0000)]
Fixed OGG Vorbis code when using OGGs with a sound frequency smaller than the sound output frequency (the code was wrongly using the OGG sound format instead of the output sound format to compute the streaming buffer size). Thanks to Dresk for reporting this problem
havoc [Mon, 12 Jun 2006 12:43:47 +0000 (12:43 +0000)]
updated GLSL shader to match the one in Nexuiz 2.0, this fixes reliefmapping/offsetmapping on models, and improves performance on NVIDIA by using more half-precision math
havoc [Fri, 9 Jun 2006 17:30:56 +0000 (17:30 +0000)]
changed cvar default setup code such that cvar default strings are locked after executing default.cfg the first time (that is to say, their current values are copied into their default strings at this point), this fixes unsaved cvar problems in nexuiz caused by the default string being out of date on cvars that were modified by default.cfg
changed Reset To Defaults option in menu to use a newly added cvar_resettodefaults_all command before execing default.cfg to reset the binds
havoc [Fri, 9 Jun 2006 09:49:36 +0000 (09:49 +0000)]
don't allocate a mempool or texture pool if a model file is not found (prevents buildup of 'progs/beam.mdl' memory/texture pools if it is not found)
audited 'if mod->loaded' checks to be more sure about unloading models even if they failed to load
havoc [Fri, 9 Jun 2006 02:03:34 +0000 (02:03 +0000)]
web download patch from div0, this adds the "curl" console command, and the ability for servers to send a set of conditional curl commands which will download pk3 archives if specific files are missing
havoc [Thu, 8 Jun 2006 11:16:52 +0000 (11:16 +0000)]
fixed collision bug on q3 light cones and other non-solid brushes that are not axial, now uses only the brush's supercontents value, not its surface textures
havoc [Thu, 8 Jun 2006 11:00:21 +0000 (11:00 +0000)]
no longer converts vertex-morph model formats to float arrays, instead keeping their geometry in the original formats from disk, this saves 1.2MB of memory in e1m2 and might slightly improve load times, it also preserves vertex normals to get rid of shading artifacts on texcoord seams
molivier [Tue, 6 Jun 2006 06:21:47 +0000 (06:21 +0000)]
Attempt to fix speaker layout for 5.1 and 7.1 sound, on Windows and Mac OS X; the sound engine now builds its speaker layout based on the OS and the snd_swapstereo cvar. Plus a minor fix for the OSS sound module (was incorrectly reporting "audio can't keep up")
molivier [Sun, 4 Jun 2006 10:57:24 +0000 (10:57 +0000)]
- the Linux sound modules (ALSA and OSS) are now write-based, instead of
mmap-based. It should fix the problems with inboard sound cards
- added 3 cvars controlling the sound output format: snd_speed,
snd_channels, and snd_width (default values: 48000, 2, and 2
respectively). They're saved in the config file.
- the checks for command line options and environment variables
modifying the sound output format are now common to all modules. The
command line options supported are: -sndmono, -sndstereo, -sndquad,
-sndspeed, and -sndbits. The environment variables supported are:
QUAKE_SOUND_CHANNELS, QUAKE_SOUND_SPEED, and QUAKE_SOUND_SAMPLEBITS.
- added a (still dumb) function to figure out a better sound format when
the initialization of the sound card failed
- sound modules can now suggest a sound format if the initialization of
the sound card failed
- you can now do a "snd_restart" while having modified snd_width and/or
snd_channel. Doing a snd_restart with a modified snd_speed isn't yet
supported, it will fall back to the previous speed
- The WGL video module was blocking the sound output when the
application window lost the focus. Now, this code is shared and the AGL,
GLX and SDL video modules implement such a mecanism
- A lot of minor fixes, changes, factorizations and rewrites all over
the sound engine code and its modules
- added CeilPowerOf2() in the math library
- fixed BSDmakefile for NetBSD
havoc [Tue, 30 May 2006 10:42:21 +0000 (10:42 +0000)]
fixed several crashes in video capture code when files fail to open
eliminated cl_capturevideo_sound cvar (now always on)
made sound capture non-realtime, by syncing sound mixer to capture frame while capture is active, this sounds horrible while recording but produces perfectly synced sound output to the .wav file
now numbers dpvideo files when saving, each one a higher number than the previous (the next number to use is saved to config), this allows capturing many short video clips without stopping to process the files
what this means: cl_capturevideo is now much more useful than before.