You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
158 lines
8.4 KiB
158 lines
8.4 KiB
|
|
Quake2 3.17 Upgrade |
|
------------------- |
|
|
|
This upgrade addresses several features, including security, playability, and |
|
enhancements. |
|
|
|
Changes for 3.17 |
|
---------------- |
|
|
|
- Fixed possible NAN resulting from handing zero to second arg of atan2 |
|
- Autodownloading is now DISABLED by DEFAULT. It must be enabled by typing |
|
'allow_download 1' at the console, or using the download options menu |
|
in Multiplayer/PlayerSetup/Download Options |
|
- Server demos now include a svc_serverdata block at the beginning with the |
|
attractloop byte set to '2' to indicate server demo (byte before gamedir |
|
in the svc_serverdata block). This allows easy identification of |
|
serverrecorded demos (serverrecord demos are only for demo editors, they |
|
can not be played back in Quake2 without being first edited). |
|
- New options for setting texture formats in ref_gl: |
|
gl_texturealphamode: default, GL_RGBA, GL_RGBA8, GL_RGB5_A1, GL_RGBA4, |
|
GL_RGBA2 |
|
gl_texturesolidmode: default, GL_RGB, GL_RGB8, GL_RGB5, GL_RGB4, |
|
GL_R3_G3_B2, GL_RGB2 (SGI only) |
|
- Player movement during Air acceleration changed to reflect more real-world |
|
physics while airborne. |
|
- Fixed a bug when riding trains that caused drift in a southwest direction |
|
(Thanks to Jim Dose at Ritual for pointing this one out). |
|
- Linux: Now correctly reports out of memory rather than segfaulting (mmap |
|
returns (void *)-1 and not NULL on error). |
|
- Fixed autodownloading to not create paths for files that can't be downloaded |
|
(this was creating many empty directories in baseq2/players). |
|
- When downloading a file from a server that doesn't have it, the message is |
|
now "Server does not have this file" rather than "File not found." |
|
- Fixed some coop keys in 3.15 weren't being handled correctly (pyramid key). |
|
- Highbits are now stripped from console when using condump |
|
- Restored support for gl_modulate in multiplayer play |
|
- Fixed it so that players with a model/skin you don't have aren't checked for |
|
on disk more than once. |
|
- Fixed it so sounds played for PPMs that default to male are only checked |
|
on disk once. |
|
- Byte ordering/portability fixes in cinematics, PCX and other file handling. |
|
- Client state during static image cinematic (PCX image) so that client can |
|
continue to next unit. |
|
- Fixed it so that dedicated coop servers no longer get stuck at victory.pcx, |
|
if a server is in coop mode, hitting a button at the victory.pcx screen |
|
while cause the server to restart at base1 |
|
- Fixed infinite grenade bug |
|
- Fixed autodownloading to actually download sounds and console pics |
|
- Fixed autodownload to not create empty directories for files not on |
|
the server. |
|
- Added customized client downloading. cvars are the same as the server side: |
|
allow_download - global download on/off |
|
allow_download_players - players download on/off |
|
allow_download_models - models download on/off |
|
allow_download_sounds - sounds download on/off |
|
allow_download_maps - maps download on/off |
|
They can also be (more easily) set with a new Download Options menu |
|
accessible in Multiplayer/Player Setup/Download Options |
|
- Changed checksumming code to be more portable and faster. |
|
The checksum in 3.15 was seriously broken. |
|
This change makes 3.17 incompatible with previous servers. |
|
- Fixed player 'warping' present in 3.15 (this was an artifact of the |
|
hyperblaster optimizations). |
|
- Fixed the autodownload in 3.15 so that stuff like skins for models are |
|
downloaded as well as pics. |
|
|
|
Changes for 3.15 |
|
---------------- |
|
|
|
- Added visible weapons support. This is precached with a special symbol, i.e. |
|
gi.modelindex("#w_shotgun.md2") which causes the client to autobind it to |
|
the players current weapon model. Plug in player models can optionally |
|
support the visible weapons. Any that do not support it will use their |
|
default weapon.md2 files automatically. |
|
Visible weapons files for plug in player models are not downloaded |
|
automatically--only the default weapon.md2 (and skin) is. |
|
The Visible weapon models themselves are not included. They can be |
|
downloaded from http://www.telefragged.com/vwep/ |
|
- Rewrote the some of the net code to use optimized network packets for |
|
projectiles. This is transparent to the game code, but improves netplay |
|
substancially. The hyperblaster doesn't flood modem players anymore. |
|
- Rewrote the packet checksum code to be more portable and defeat proxy bots |
|
yet again. |
|
- Autodownload support is in. The following items will be automatcally |
|
downloaded as needed: |
|
- world map (and textures) |
|
- models |
|
- sounds (precached ones) |
|
- plug in player model, skin, skin_i and weapon.md2 |
|
downloads go to a temp file (maps/blah.tmp for example) and get renamed |
|
when done. autoresume is supported (if you lose connect during the |
|
download, just reconnect and resume). Server has fine control over |
|
the downloads with the following new cvars: |
|
allow_download - global download on/off |
|
allow_download_players - players download on/off |
|
allow_download_models - models download on/off |
|
allow_download_sounds - sounds download on/off |
|
allow_download_maps - maps download on/off |
|
maps that are in pak files will _not_ autodownload from the server, this |
|
is for copyright considerations. |
|
The QuakeWorld bug of the server map changing while download a map has |
|
been fixed. |
|
- New option in the Multiplayer/Player Setup menu for setting your connection |
|
speed. This sets a default rate for the player and can improve net |
|
performance for modem connections. |
|
- Rewrote some of the save game code to make it more portable. I wanted to |
|
completely rewrite the entire save game system and make it portable across |
|
versions and operating systems, but this would require an enormous amount |
|
of work. |
|
- Added another 512 configure strings for general usage for mod makers. |
|
This gives lots of room for general string displays on the HUD and in other |
|
data. |
|
- Player movement code re-written to be similiar to that of NetQuake and |
|
later versions of QuakeWorld. Player has more control in the air and |
|
gets a boost in vertical speed when jumping off the top of ramps. |
|
- Fixed up serverrecord so that it works correctly with the later versions. |
|
serverrecord lets the server do a recording of the current game that |
|
demo editors can use to make demos from any PVS in the level. Server |
|
recorded demos are BIG. Will look at using delta compression in them |
|
to cut down the size. |
|
- Copy protection CD check has been removed. |
|
- Quake2 3.15 has changed the protocol (so old servers will not run) but |
|
all existing game dlls can run on the new version (albiet without the |
|
new features such as visible weapons). |
|
- Added flood protection. Controlled from the following cvars: |
|
flood_msgs - maximum number of messages allowed in the time period |
|
specified by flood_persecond |
|
flood_persecond - time period that a maximum of flood_msgs messages are |
|
permitted |
|
flood_waitdelay - amount of time a client gets muzzled for flooding |
|
(gamex86 DLL specific) |
|
- fixed it so blaster/hyperblaster shots aren't treated as solid when |
|
predicting--you aren't clipped against them now. |
|
(gamex86 DLL specific, the SVF_DEADMONSTER flag is set on projectiles) |
|
- gender support is now in. The userinfo cvar "gender" can be set to |
|
male/female/none (none for neutral messages). This doesn't affect sounds |
|
but does affect death messages in the game. The models male and cyborg |
|
default to gender male, and female and crackhor default to female. |
|
Everything else defaults to none, but you can set it by typing |
|
"gender male" or "gender female" as appropriate. |
|
- IP banning support ala QW. It's built into the game dll as 'sv' console |
|
commands. This list is: |
|
sv addip <ip-mask> - adds an ip to the ban list |
|
sv listip <ip-mask> - removes an ip from the ban list |
|
sv writeip - writes the ban list to <gamedir>/listip.cfg. You can |
|
exec this on a server load to load the list on subsequent server runs. |
|
like so: quake2 +set dedicated 1 +exec listip.cfg |
|
sv removeip <ip-mask> - remove an ip from the list |
|
the ip list is a simple mask system. Adding 192.168 to the list |
|
would block out everyone in the 192.168.*.* net block. You get 1024 bans, |
|
if you need more, recompile the game dll. :) |
|
A new cvar is also supported called 'filterban'. It defaults to one which |
|
means "allow everyone to connect _except_ those matching in the ban list." |
|
If you set it to zero, the meaning reverses like so, "don't allow anyone |
|
to connect unless they are in the list." |
|
(gamex86 DLL specific) |
|
|
|
|