3.17_Changes.txt (8603B)
1 2 Quake2 3.17 Upgrade 3 ------------------- 4 5 This upgrade addresses several features, including security, playability, and 6 enhancements. 7 8 Changes for 3.17 9 ---------------- 10 11 - Fixed possible NAN resulting from handing zero to second arg of atan2 12 - Autodownloading is now DISABLED by DEFAULT. It must be enabled by typing 13 'allow_download 1' at the console, or using the download options menu 14 in Multiplayer/PlayerSetup/Download Options 15 - Server demos now include a svc_serverdata block at the beginning with the 16 attractloop byte set to '2' to indicate server demo (byte before gamedir 17 in the svc_serverdata block). This allows easy identification of 18 serverrecorded demos (serverrecord demos are only for demo editors, they 19 can not be played back in Quake2 without being first edited). 20 - New options for setting texture formats in ref_gl: 21 gl_texturealphamode: default, GL_RGBA, GL_RGBA8, GL_RGB5_A1, GL_RGBA4, 22 GL_RGBA2 23 gl_texturesolidmode: default, GL_RGB, GL_RGB8, GL_RGB5, GL_RGB4, 24 GL_R3_G3_B2, GL_RGB2 (SGI only) 25 - Player movement during Air acceleration changed to reflect more real-world 26 physics while airborne. 27 - Fixed a bug when riding trains that caused drift in a southwest direction 28 (Thanks to Jim Dose at Ritual for pointing this one out). 29 - Linux: Now correctly reports out of memory rather than segfaulting (mmap 30 returns (void *)-1 and not NULL on error). 31 - Fixed autodownloading to not create paths for files that can't be downloaded 32 (this was creating many empty directories in baseq2/players). 33 - When downloading a file from a server that doesn't have it, the message is 34 now "Server does not have this file" rather than "File not found." 35 - Fixed some coop keys in 3.15 weren't being handled correctly (pyramid key). 36 - Highbits are now stripped from console when using condump 37 - Restored support for gl_modulate in multiplayer play 38 - Fixed it so that players with a model/skin you don't have aren't checked for 39 on disk more than once. 40 - Fixed it so sounds played for PPMs that default to male are only checked 41 on disk once. 42 - Byte ordering/portability fixes in cinematics, PCX and other file handling. 43 - Client state during static image cinematic (PCX image) so that client can 44 continue to next unit. 45 - Fixed it so that dedicated coop servers no longer get stuck at victory.pcx, 46 if a server is in coop mode, hitting a button at the victory.pcx screen 47 while cause the server to restart at base1 48 - Fixed infinite grenade bug 49 - Fixed autodownloading to actually download sounds and console pics 50 - Fixed autodownload to not create empty directories for files not on 51 the server. 52 - Added customized client downloading. cvars are the same as the server side: 53 allow_download - global download on/off 54 allow_download_players - players download on/off 55 allow_download_models - models download on/off 56 allow_download_sounds - sounds download on/off 57 allow_download_maps - maps download on/off 58 They can also be (more easily) set with a new Download Options menu 59 accessible in Multiplayer/Player Setup/Download Options 60 - Changed checksumming code to be more portable and faster. 61 The checksum in 3.15 was seriously broken. 62 This change makes 3.17 incompatible with previous servers. 63 - Fixed player 'warping' present in 3.15 (this was an artifact of the 64 hyperblaster optimizations). 65 - Fixed the autodownload in 3.15 so that stuff like skins for models are 66 downloaded as well as pics. 67 68 Changes for 3.15 69 ---------------- 70 71 - Added visible weapons support. This is precached with a special symbol, i.e. 72 gi.modelindex("#w_shotgun.md2") which causes the client to autobind it to 73 the players current weapon model. Plug in player models can optionally 74 support the visible weapons. Any that do not support it will use their 75 default weapon.md2 files automatically. 76 Visible weapons files for plug in player models are not downloaded 77 automatically--only the default weapon.md2 (and skin) is. 78 The Visible weapon models themselves are not included. They can be 79 downloaded from http://www.telefragged.com/vwep/ 80 - Rewrote the some of the net code to use optimized network packets for 81 projectiles. This is transparent to the game code, but improves netplay 82 substancially. The hyperblaster doesn't flood modem players anymore. 83 - Rewrote the packet checksum code to be more portable and defeat proxy bots 84 yet again. 85 - Autodownload support is in. The following items will be automatcally 86 downloaded as needed: 87 - world map (and textures) 88 - models 89 - sounds (precached ones) 90 - plug in player model, skin, skin_i and weapon.md2 91 downloads go to a temp file (maps/blah.tmp for example) and get renamed 92 when done. autoresume is supported (if you lose connect during the 93 download, just reconnect and resume). Server has fine control over 94 the downloads with the following new cvars: 95 allow_download - global download on/off 96 allow_download_players - players download on/off 97 allow_download_models - models download on/off 98 allow_download_sounds - sounds download on/off 99 allow_download_maps - maps download on/off 100 maps that are in pak files will _not_ autodownload from the server, this 101 is for copyright considerations. 102 The QuakeWorld bug of the server map changing while download a map has 103 been fixed. 104 - New option in the Multiplayer/Player Setup menu for setting your connection 105 speed. This sets a default rate for the player and can improve net 106 performance for modem connections. 107 - Rewrote some of the save game code to make it more portable. I wanted to 108 completely rewrite the entire save game system and make it portable across 109 versions and operating systems, but this would require an enormous amount 110 of work. 111 - Added another 512 configure strings for general usage for mod makers. 112 This gives lots of room for general string displays on the HUD and in other 113 data. 114 - Player movement code re-written to be similiar to that of NetQuake and 115 later versions of QuakeWorld. Player has more control in the air and 116 gets a boost in vertical speed when jumping off the top of ramps. 117 - Fixed up serverrecord so that it works correctly with the later versions. 118 serverrecord lets the server do a recording of the current game that 119 demo editors can use to make demos from any PVS in the level. Server 120 recorded demos are BIG. Will look at using delta compression in them 121 to cut down the size. 122 - Copy protection CD check has been removed. 123 - Quake2 3.15 has changed the protocol (so old servers will not run) but 124 all existing game dlls can run on the new version (albiet without the 125 new features such as visible weapons). 126 - Added flood protection. Controlled from the following cvars: 127 flood_msgs - maximum number of messages allowed in the time period 128 specified by flood_persecond 129 flood_persecond - time period that a maximum of flood_msgs messages are 130 permitted 131 flood_waitdelay - amount of time a client gets muzzled for flooding 132 (gamex86 DLL specific) 133 - fixed it so blaster/hyperblaster shots aren't treated as solid when 134 predicting--you aren't clipped against them now. 135 (gamex86 DLL specific, the SVF_DEADMONSTER flag is set on projectiles) 136 - gender support is now in. The userinfo cvar "gender" can be set to 137 male/female/none (none for neutral messages). This doesn't affect sounds 138 but does affect death messages in the game. The models male and cyborg 139 default to gender male, and female and crackhor default to female. 140 Everything else defaults to none, but you can set it by typing 141 "gender male" or "gender female" as appropriate. 142 - IP banning support ala QW. It's built into the game dll as 'sv' console 143 commands. This list is: 144 sv addip <ip-mask> - adds an ip to the ban list 145 sv listip <ip-mask> - removes an ip from the ban list 146 sv writeip - writes the ban list to <gamedir>/listip.cfg. You can 147 exec this on a server load to load the list on subsequent server runs. 148 like so: quake2 +set dedicated 1 +exec listip.cfg 149 sv removeip <ip-mask> - remove an ip from the list 150 the ip list is a simple mask system. Adding 192.168 to the list 151 would block out everyone in the 192.168.*.* net block. You get 1024 bans, 152 if you need more, recompile the game dll. :) 153 A new cvar is also supported called 'filterban'. It defaults to one which 154 means "allow everyone to connect _except_ those matching in the ban list." 155 If you set it to zero, the meaning reverses like so, "don't allow anyone 156 to connect unless they are in the list." 157 (gamex86 DLL specific) 158