Difference between revisions of "Worms Armageddon ReadMe (English)/v3.6.30.0 Beta Update"
From Worms Knowledge Base
CyberShadow (Talk | contribs) (footer) |
Explorer09 (Talk | contribs) m (parentArticle) |
||
Line 1: | Line 1: | ||
+ | {{ParentArticle|[[Worms Armageddon ReadMe (English)]]}} | ||
+ | |||
== v3.6.30.0 Beta Update (2010.10.26)== | == v3.6.30.0 Beta Update (2010.10.26)== | ||
__TOC__ | __TOC__ |
Revision as of 16:17, 26 October 2010
v3.6.30.0 Beta Update (2010.10.26)
Fixes
- [CS, DC] Hardware and Operating System compatibility
- [CS] Windows 98/ME compatibility, which was accidentally broken in v3.6.29.0, has been restored.
- [CS] Minimisation support in the front end in Windows Vista was incomplete (upon restoring, it was not possible to interact with UI elements using the mouse).
- [CS] W:A now uses a new method of restoring the palette, which has been found to be more effective on Windows Vista and Windows 7. Should the display palette become corrupted, the user can try to restore it manually in-game by pressing Shift+Pause.
- [CS] A new compatibility setting for Wine has been added, Force Wine virtual desktop (ForceWineVirtualDesktop_On.reg). When this setting is enabled, W:A will automatically relaunch itself in a virtual desktop, by running explorer "/desktop=640x480,Worms Armageddon" [WA.exe's full command-line] /novirtualdesktop. (The /novirtualdesktop switch is used to temporarily override the effect of the setting, thus preventing W:A from entering into an endless loop.)
- [CS] A new compatibility setting for Wine has been added, Use desktop window (FrontendUseDesktopWindow_Enable.reg). Enabling this setting causes W:A to use the desktop window for the DirectDraw SetCooperativeLevel call, which fixes front-end display problems when running under Wine.
- [CS] When W:A v3.6.30.0 or later is run under Wine for the first time, it will offer to enable Wine-specific compatibility settings (ForceWineVirtualDesktop, LandInVram_Disable, SlowFrontendWorkaround_Off and FrontendUseDesktopWindow_Enable).
- [CS] W:A's associations are now registered automatically by the Beta Update installer. This means it is no longer necessary to run W:A at least once as Administrator after installing a new Beta Update.
- [DC] A new compatibility setting has been added, Enable double buffering (enabled by default). Disabling this setting resolves in-game flickering problems under VMware.
- [DC] When W:A v3.6.30.0 or later is run under VMware for the first time, it will offer to enable VMware-specific compatibility settings (InGameDoubleBuffering_Disable, SlowFrontendWorkaround_Off and FrontendUseVRAM_Disable).
- [DC] In VMware, tab stops in the front end were not being activated by default.
- [CS] When W:A v3.6.30.0 or later is run under VirtualBox for the first time, it will offer to enable VirtualBox-specific compatibility settings (SlowFrontendWorkaround_Off and FrontendUseVRAM_Enable).
- [DC] Slow front end workaround
- [DC] There are some video cards/drivers under which SlowFrontendWorkaround_On.reg does not fix W:A's "slow front end" lag. It has been found that "SlowFrontendWorkaround_AntiFlicker" fixed the problem in at least one of these cases (with a GeForce 8800GTS 512MB). To reflect the wider use of this version of the slow front end workaround, it has been renamed. It is now enabled by importing SlowFrontendWorkaround_Alternative.reg (from the Tweaks folder) into the system registry, or by selecting the Alternative setting on the Advanced Options screen. Also, SlowFrontendWorkaround_On is now the default mode that W:A will assume if none of the SlowFrontendWorkaround tweaks have been imported into the registry. Note that the Alternative mode will most likely use the maximum CPU of one system core, whereas On and Off modes have lower CPU usage.
- [DC] Previously, enabling SlowFrontendWorkaround would break the intro fade (assuming /nointro was not used). Now, it is temporarily disabled to make the fade work properly.
- [DC] An effect which was previously toggled by the SlowFrontendWorkaround setting is now available as a separate option: FrontendUseVRAM_Disable.reg. This prevents W:A from using video memory in the front end, which may improve compatibility on certain systems.
- [CS, DC] Timer workaround
- [CS] On some system configurations, the high-resolution timer would occasionally skip backwards by a minuscule amount, which caused W:A to enter a nearly-infinite loop (if the TimerWorkaround_On.reg tweak wasn't being used). W:A now checks for this condition and prevents a lock-up from happening.
- [DC] Bug introduced in v3.6.28.0: On some systems with multiple CPU cores, the weapon panel would not open and close properly. When the mouse was moved, the panel would go "wandering" randomly, eventually going off the side of the screen, sometimes coming back later. This was a very rare but consistently reproducible bug on some systems. If you experienced this bug, it is still recommended that you enable the timer workaround (either using the Advanced Options dialog, or by importing TimerWorkaround_On.reg, from the Tweaks folder, into your system registry) because the same timer issue that caused the dancing weapon panel bug can also cause screen lag (irregular, jumpy passage of time within the game).
- [CS] Keyboard hotkeys & character tables
- [CS] Entering international characters not present in W:A's character table sometimes incorrectly resulted in Cyrillic characters.
- [CS] It was not possible to enter some international characters in the front end due to W:A interpreting some Ctrl+Alt+... keystrokes as Ctrl+... keyboard shortcuts.
- [CS] The Utility key is now determined based on the keyboard OEM scan code, which should not change across typical system configurations. The previous method, introduced in v3.6.28.0, used the key that generates the ` character on the U.S. English keyboard layout, but required this layout to be installed on the user's PC.
- [DC, CS] Mouse input
- [CS] When moving the mouse cursor directly from one hyperlink to another, the highlighted hyperlink was not updated.
- [DC] A bug in v3.6.29.0 caused the mouse cursor to jump (319,399) pixels down-right at the beginning of every game.
- [DC] Another bug introduced in v3.6.29.0 also caused the mouse cursor to jump. This happened if the chat box was opened during an offline game session (a feature introduced in v3.6.29.0) while a Worm was being manually placed or aiming a Teleport/Girder/homing weapon. Any mouse motion occurring while the chat box was open would be stored up, and when the chat was closed, the mouse cursor would jump.
- [DC] A bug introduced in v3.6.28.0 caused to camera to be horizontally locked when emulating v3.0 in a cavern terrain.
- [DC] While holding the middle mouse button to speed up cursor movement in-game, right-clicking to open the weapon panel would cause the status of the middle button to be forgotten.
- [CS, DC] Sound effects
- [CS] The front end ambient sound loop was not being played when the game was started with the wa:// or /host command-line parameters.
- [DC] Due to a bug introduced in v3.6.29.0, it was possible for in-game looped sound effects (such as the Dynamite fuse and the Mole Bomb's digging) to be stopped prematurely when other sounds were played. This was more likely to happen on some systems than others, depending on how quickly the DirectSound backend detected the finishing of a sound being played (the more lag, the less likely the bug).
- [CS] The stereo panning effect was not applied to sounds when the camera was moved while the game was in single-step mode.
- [CS] On systems with a configured nation not explicitly recognized by W:A, a flag, fanfare and soundbank was not being selected for intrinsic teams and default values.
- [CS] Fanfares for nations not explicitly recognized by W:A will now default to "Simple", in conformance with nations explicitly recognized by W:A but not having an appropriate nation fanfare.
- [CS] The "Russian" soundbank is no longer selected by default for Croatia.
- [DC] Subfolder support for schemes and maps now works more cleanly
- [DC] Clicking subfolders no longer changes the name in the edit box.
- [DC] When entering a folder with the keyboard (Enter key), the first file is now selected by default.
- [DC] Pressing Enter or clicking on a file directly after it has already been loaded will now reload the file if its timestamp or size has changed; otherwise it will close the drop-down list box as before.
- [DC] Subfolders with names beginning in ".." are no longer hidden.
- [DC, CS] Schemes
- [DC] Loaded schemes no longer have the ".wsc" extension added to them in the combo edit box.
- [CS] After deleting a scheme in the offline multiplayer screen, the text in the scheme selection drop-down wasn't being updated despite the fact that the game loaded the Intermediate scheme.
- [DC] When saving a scheme in a subfolder, the overwrite confirmation dialog would incorrectly be displayed if a scheme with the same filename existed in the main Schemes folder. No confirmation dialog would appear when overwriting a scheme in a subfolder.
- [DC] When attempting to delete a scheme that didn't exist, the delete confirmation dialog showed up anyway, implying that the file existed.
- [DC] In the Options Menu, the scheme edit box now scrolls for long scheme filenames. It also has more room to show the scheme name below the edit box.
- [DC] Loading a scheme with "random worm order" correctly updated the required version, so that players with a version not supporting that feature would be crosshatched in red in the host's player list. However, if the host toggled this feature directly using the Worm Select button, the required version was not updated. This meant that a game could be started that was supposed to have random worm order but didn't, or alternatively that a player could be falsely flagged as being unable to play, preventing the game from being started.
- [DC] Loading an intrinsic scheme (such as Intermediate) did not update the required version. This meant that if the scheme beforehand was unsupported by any players present, their names would continue to be crosshatched in red even though intrinsic schemes are supported by all versions of W:A going back to v3.0.
- [CS] WormNET
- [CS] The WormNET IRC client has been made more conformant to the IRC standard.
- [CS] W:A would sometimes fail to reply to IRC PING messages with a PONG, and would time out should there be no outgoing traffic for several minutes.
- [CS] When getting kicked or banned from WormNET, W:A will now display an appropriate message (including the moderator-specified reason), instead of a generic disconnection message.
- [CS] Sometimes lines containing colour codes weren't being wrapped correctly in WormNET chat.
- The fix for this issue caused some changes in the way HTML was displayed. The file ServerList.htm has been updated to display correctly on all W:A versions.
- [CS] WormNET private message formatting codes are now parsed and displayed for sent messages.
- [CS] In the WormNET, host/join and LAN lobbies, wrapped lines of chat could become partially obscured when the scroll bar was created.
- [CS] The Snooper detection, introduced in v3.6.29.0, now ignores spaces in the "version" field.
- [CS] Clients not having a valid IRC "real name" field will no longer be displayed with an UK flag. The "UK" two-letter country code, popularised by 3rd-party applications, is still supported but is deprecated (the correct ISO 3166-1 alpha-2 code is "GB").
- [CS] Received IRC private actions are now displayed correctly (these can only be sent using a snooper or IRC client at the moment).
- [CS] W:A no longer automatically replies to any special messages (such as CTCPs) sent to WormNET channels.
- [CS] A scrollbar was sometimes incorrectly placed on the WormNET channel list screen.
- [DC, CS] Host / join
- [CS] When hosting, W:A will no longer accept forged chat messages from clients in the host/join screen. It will also forward private messages only to the recipient, thus making host/join whisper spying by clients no longer possible.
- [CS, DC] When hosting non-WormNET games, W:A will now check the game ID. This will prevent games hosted via Direct IP to be accidentally joined by players trying to join a stale WormNET game.
- [CS, DC] The resolution of network timers in the connection dialog and match finished screen has been increased. This considerably improves the speed of joining games.
- [DC] If the connection process was cancelled at the wrong moment, you would be left with an hourglass cursor.
- [DC] When exiting a game that was hosted or joined via "Direct TCP/IP" in the Network Choice screen, you will now be returned to that screen instead of the LAN Lobby.
- [CS] W:A would exit silently if it failed to open certain files from the game CD. Now it will display a message and create an error log.
- [DC] When a player left, it would correctly clear all the other players' light bulbs on the clients' sides; however, on the host's side the light bulbs would remain lit. In the online next round screen, the light bulbs would at least remain synchronised in this situation, but the host's light bulb would stay lit on all sides after a player left (whereas the clients' light bulbs would be cleared).
- [DC] Bug introduced in v3.6.19.7: When the host changed maps, each client's light bulb would only be cleared on their own end and on the host's end.
- [DC] In v3.6.29.0, pressing Tab in the host/join screen would switch from the edit box to the scheme combo box; but once focused on the scheme box, Tab would no longer work.
- [DC] Kicking
- [DC] When being kicked by a host using W:A v3.5 or later, a client would usually not process the kick message and would state "The connection to the network has been lost" instead of "The host has removed you from the game." This was a client-side bug and has now been fixed.
- [DC] When kicking a player, the host did not hear a sound effect. The same went for the player being kicked. Both will now hear the same sound effect that joined players hear when a player leaves, disconnects or is kicked.
- [DC] The "INVALID MAP FILE" and "Please wait while the level file loads" notices did not restore after minimising.
- [DC] If you're a client, minimised while the host clicks "Play Again" or "New Match", you will no longer crash; instead, the game will flash its taskbar button and produce a standard beep. Likewise, the same will now happen if the host starts the game while you're minimised (which is normally not possible).
- [CS] If you were disconnected from a network game (due to a network failure or the host quitting), in-game options such as volume and detail level changed during that game weren't saved.
- [DC] If a host using v3.6.29.0 loaded a scheme that was externally edited to have custom Jet Pack fuel, and the Jet Pack power byte was set to 128 or higher (129 stars or higher; 123 fuel units or higher), and player(s) using an older version were present, the game would silently emulate the old version, with default Jet Pack fuel (30 units), instead of printing the proper error message and highlighting the older-version player(s) in red.
- [DC] The "Twang1" sound, played when a player disconnects, was used only in the initial host/join screen, not in the next round or match finished screens.
- [DC] Desynchronisation issues
- [DC] On some systems, a network game started with an intrinsic map (Cars, Polar, etc.) would desynchronise on the client side when the game was started. The bug was always latent in W:A, but first manifested in v3.6.28.0. There was a workaround in v3.6.29.0 regarding this bug, but it did not fix the desynchronisation.
- [DC] If a multi-round network game was played on an intrinsic map, and the host did not manually change the map before starting Round 2, the game would desynchronise. The same would happen if a new match was started after one that had been played on an intrinsic map, and the host did not manually change the map before starting the first round of the new match.
- [DC] Editing certain scheme options in an external scheme editor (or hex-editing the .WSC file directly) could cause problems. In particular, the Sudden Death Water Rise Rate, Mine Fuse, and Fall Damage settings could be edited to normally out-of-range values. However, once the scheme was loaded in W:A, going into the Options Editor would automatically reset the values if they were out of the normal range. If a host went into the Options Editor, the values would be reset, but the Cancel button would be operational though using this button would be unexpected when no manual change had been made, and pressing Exit would commit the automatic changes and undo the externally edited options. What was worse was the if a client went into the Options Editor to view the settings, they would be reset on the client's end. This would result in a desynchronisation if a game was started with this scheme.
- Sudden Death Water Rise Rate was reset to Medium (2) if it was anything other than Off (0), Slow (1), Medium (2), or Fast (3). Nonstandard values of this setting change the water rise rate nonlinearly.
- Mine Fuse was reset to 3 seconds if it was not 0-3 seconds or Random. Nonstandard values of this setting can go from 5-127 seconds.
- Fall Damage was reset to Off (0) if it was not On (1). Nonstandard values of this setting change the strength of the fall damage nonlinearly.
- Some other scheme settings were reset to default values if they were out-of-range, but this was not important because the out-of-range values were not special and thus were not commonly used.
- [DC, CS] In-game network play
- [DC] A disconnection of a spectator (a "player" with no team) was not noted in the chat box, either during the game or in replay (or exported log).
- [CS, DC] W:A would often display a 10-second countdown with the text "Waiting for players" at the end of a network game, waiting for a confirmation network packet that was never sent.
- [CS] Previous versions of W:A silently discarded front end network packets while in-game. This could cause chat lines to be lost. W:A now queues front end network packets while in-game and processes them when W:A re-enters the front end.
- [DC] Games with three or more players
- [DC] A bug in v3.6.29.0 caused all players to desynchronise when one player quit or disconnected, if the disconnection was detected by the host between turns.
- [DC] Another bug nearly always caused all players to desynchronise when one player quit or disconnected on their first turn. This bug can probably also occur later in the game, but that aspect of it is poorly understood and hard to reproduce (though the fix would apply in that case as well). Note that despite the similarity to the other desynchronisation bug fixed in this Beta Update, this bug dates back to Worms2.
- [DC] When a client disconnected, the host would see the reason for disconnection but other clients would only see a generic disconnection message. The more detailed disconnection reason (timeout, network drop, desynchronisation) was being recorded, but not displayed.
- [DC] The disconnection of spectators was not recorded at all by the host.
- [CS] In network games, the volume slider in the Escape menu wouldn't slide if it was the local player's turn and the in-game mouse pointer was active (during initial worm placement or if a point-and-click weapon was selected).
- [DC] The grey progress indicators displayed next to player names during loading will now update more smoothly and responsively.
- [DC] More validation is now done on data received over the network.
- [DC] If, within the same instance of WA.exe, first a game logic version earlier than 3.5 Beta 3pre13 (most likely 3.0 or 3.5 Beta 2) was emulated (i.e. legacy buggy Bungeeing Worm sprite), and then a version of 3.5 Beta 3pre13 or later was emulated (i.e. with the Bungeeing Worm sprite fix) or vice versa, the latter first and then the former and then a weapon was used while the Bungee was attached, it could cause a desynchronisation.
- [DC, CS] Recorded games / replays
- [DC] The passage of game time between turns and after the end of the game is now recorded, like it was before v3.6.19.15. This means that chat messages communicated between turns or after the end of a game will no longer pile up into one frame (unless they were communicated during a period of network lag).
- [DC] When opening a recorded game that points to an intrinsic map, W:A now verifies that the intrinsic map exists. Previously, if it did not exist, the map from the last game would be used and playback would desynchronise.
- [CS] After a fast-forward while playing back a recorded game (either when using the "Playback at" command, or when seeking to a marked position), the chat panel was not updated. If it is open, the chat panel is now also updated during the fast-forward if the negligible overhead is undesirable, it can be avoided by closing the chat panel.
- [DC] The screen capture function had a memory leak. This was most evident when using the Export Video feature, but happened when taking a screenshot as well. Approximately 278 kilobytes were leaked every time a frame was captured. Capturing a very large number of frames (on the order of thousands or more, depending on free RAM) would eventually cause W:A to crash.
- [DC] Export Log will now print "Game Ends - Alt+F4 pressed" if this is likely to have been the method of quitting, whereas before it would say "Game Ends - End of file" in this case.
- [DC] More data validation is now done when playing back recorded game files.
- [DC] Ever since the identity of the local player was added to the replay file format in v3.6.19.17, the game has tried to detect the local player when playing back older replay files. However, there was a minor bug in the message given when there was more than one spectator and all that could be deduced was that one of them was local.
- [DC] The v3.6.22.0 threshold drowning worm emulation bug (see v3.6.26.4 fixes) is now detected during playback (and Export Log) in most situations. This prevents a Checksum Mismatch error from being printed in situations where the checksum was actually locally correct.
- [DC] Messages, strings, and fonts
- [DC] The Blow Torch weapon was named "BlowTorch" in game, breaking consistency with the front end and with Worms2, where it is named "Blow Torch".
- [DC] Some "Morse Code" messages in Missions were being truncated when displayed in game, in particular some of the messages in the Spanish translation.
- [DC] The Spanish translation for "cyan" was "azul-verdoso", which has now been replaced with "cian".
- [DC] In the Missions screen, one of the mission names was long enough in the Spanish translation to be wrapped into two lines and cropped. The on-screen space for the mission name has been enlarged to rectify this.
- [DC] The Spanish punctuation marks ¿¡ were present in the front end's font set but were not available in-game.
- [DC] Three Spanish messages and one Portuguese message had exclamation mark related errors.
- [DC] In the front end, the three largest fonts no longer crop the bottom pixel row of the lowest-reaching character glyphs.
- [CS, DC] Translations
- [DC] In Spanish, Crate Spy has been renamed from "Caja espía" to "Espía de cajas" (correction by "OutofOrder").
- [CS] An incorrect character was fixed in the Spanish translation of the Basic Training #8 description text.
- [DC] An incorrect character was fixed in the Russian translation of a 2-worm kill comment.
- [DC] Some Morse code tips in Spanish were missing for Mission 9: "Water Surprise", Mission 14: "Super Sheep to the rescue!", and Mission 20: "Rumble in the Farmyard", with translations provided by "OutofOrder".
- [CS] Apostrophes in Italian in-game messages were being incorrectly displayed.
- [CS] The Italian translation in the in-game quit confirmation dialog incorrectly displayed "SÃ" instead of "SÌ".
- [CS] The Russian translation was updated with corrections from "Shtirlitz".
- [CS, DC] Free RAM & disk space
- [CS] W:A will now display warnings on start-up when the current directory is not writable, or if there is little free disk space on the current drive.
- [DC] Some minor memory leaks were fixed.
- [DC, CS] Miscellaneous
- [CS] Some versions of W:A installers would not create the User\Teams directory, which caused W:A to fail to save the team file. W:A will now create this subdirectory if it doesn't exist.
- [CS] W:A would sometimes lock up after creating a console window, which is used to display the progress of operations such as exporting a log.
- [CS, DC] The team health bars were sometimes incorrectly sorted for minute differences in total team health points.
- [DC] Bug introduced in v3.6.23.0: Precise fuse timers, a playback feature added in v3.6.20.1, could not be turned off by cycling through name tags with the Delete key, if Invincibility was enabled in the scheme.
- [DC] In v3.6.19.7, the ability was added to cycle both forward and backwards through randomly generated terrains by clicking and Shift+clicking the maps' thumbnails, respectively. However, the addition of this feature introduced some bugs. It was possible to get trapped in a loop, where only low-detail terrains would be generated, or (rarely) terrains within only one of the templates (e.g., double-cavern, single island, etc.) would be generated. The only way to get out of the loop was to leave that dialog screen and come back to it. In v3.6.20.1, this problem was addressed by forcing only maximum-detail terrains to be generated. It was still possible to get trapped in a template loop.
- [DC] The forward and reverse sequence through randomly generated maps was different every time you entered a dialog screen in v3.6.19.7 to v3.6.29.0. Now, the map before and after a given map in the Click / Shift+Click sequence will always be the same.
- [DC] If a map had been loaded through a means other than local clicking (e.g., loaded by a remote host in an online game, or loaded within the Map Editor and then shown as a thumbnail) then the first Click or Shift+Click would leave that map behind, without returning to it. This is now fixed.
- [DC] Access has been restored to the full range of detail levels available in v3.0 to v3.5 Beta. You will no longer be limited to maps of only maximum detail, as you were starting in v3.6.20.1.
- [DC] It is no longer possible to get trapped in a template loop when clicking / Shift+clicking the large map thumbnail.
- [DC] There are now 2,147,483,648 available maps in the large thumbnail's cycle, and 2,147,483,648 maps for each template within the Map Editor (i.e., 17,179,869,184 maps). If you were to click 2,147,483,648 times in a row, you'd return to the same map from which you started.
- [DC] In the Network Choice screen, the worms' eyes and eyebrows in the LAN and WormNET buttons were transparent.
- [DC] In the Team Editor screen, double-clicking the team name's question mark button was supposed to cause all worm names to be randomly generated at once. However, this feature was broken in v3.6.19.7. It has been restored to working order.
- [DC] When rapidly clicking the "draw holes" or "draw tunnels" buttons in the Map Editor, the same random seed would be used multiple times in a row, changing at most only once per second.
- [DC] Taskbar System Menu
- [DC] It is now possible to use the System Menu when minimised from the front end. This menu is opened by right-clicking W:A's Taskbar button. This allows you to Close the game without having the restore it first (in most game modes).
- [DC] When W:A was minimised during a replay playback session using Alt+Tab or Alt+Esc or some other indirect trigger, right-clicking W:A's Taskbar button crashed the game.
- [DC] The mouse cursor is no longer hidden in the System Menu.
- [CS, DC] Crashes
- [CS] Pressing Escape in some front end screens (Mission, Training and Deathmatch) caused abnormal minimization, often followed by a crash.
- [CS] W:A would crash when it tried to display the large map size warning while being minimised.
- [CS] W:A would crash when the offline multiplayer screen was opened if the previously-loaded map (stored in current.thm) was a .BIT map and was corrupted.
- [CS] W:A would crash when it tried to display a message box while being minimised. W:A will now flash its taskbar button and produce a standard beep when this happens, and will display the message box once it's restored.
- [DC] A bug in v3.6.29.0 caused W:A to crash in some circumstances if an instant replay was skipped by pressing Space.
- [DC] A bug in v3.6.29.0 caused W:A to crash upon an instant replay, if one or more crates were present and an earlier version was being emulated such as v3.6.28.0[teststuff5], since v3.6.29.0 did not have its own version of TestStuff.
- [DC] In v3.6.29.0, when emulating v3.0, attempting to use worm selection in a team that started with just 1 worm would crash the game.
- [CS] When W:A is running on some system configurations and a bitmap fails to allocate to video RAM, it will now allocate to system RAM instead of crashing.
- [CS] Minor/obscure changes have been made that may avoid bitmap-related crashes in the front end.
- [DC] It was possible for W:A to crash when the "Please wait... working..." box popped up, when a game was started. This was exceedingly rare, but confirmed to happen at least sometimes under Windows 7.
- [CS] W:A would crash when attempting to open the Team Editor if there was a 4-bit BMP image in the User\Flags or User\Graves folder. Now it is capable of loading 4-bit BMPs.
- [CS] W:A would crash if it failed to load a sound sample from the FESfx subdirectory. It will now display an error message.
- [CS] W:A would crash if it tried to display a message after it had exited the full-screen graphics mode, for example if an error occurred upon saving the team file. It will now display the message using a standard Windows message box.
- [DC] W:A would crash if the user minimised during the front end's intro sequence.
- [DC, CS] Fixes affecting game logic
- [CS, DC] Fatal and potentially fatal bugs
- [CS] A bug in v3.6.29.0 caused network desynchronisations and checksum errors when the Laser Sight was used. Due to its random nature, this bug cannot be emulated.
- [DC] In a game with CPU team(s), in which an external scheme editor was used to assign "zero power" to a Mine, Dynamite, Priceless Ming Vase, Air Strike, Napalm Strike, Mail Strike, French Sheep Strike, Mike's Carpet Bomb, MB Bomb, and/or Concrete Donkey, if the CPU AI tried to analyze using one of those weapons, W:A would crash. (See Footnote 2.)
- [CS] If a Worm was dropped into a pile of multiple overlapping Worms (from high enough to suffer fall damage), the worm would "hover" briefly the moment it hit the pile. It would actually be accelerating during this "hover", suffering extra fall damage as a result, prolonged more by every extra worm in the pile. In the most extreme case possible, with a 48th worm dropped into an pile of 47 overlapping worms, the game would be thrown into an endless loop.
- [DC] A bug in v3.6.29.0 made it possible for a single Skunk to poison the same Worm twice, if the player's turn ended during the poisoning.
- [DC] With TestStuff enabled, "use of weapons during a rope roll" had a bug; if a weapon such as Dragon Ball (which can normally only be fired while standing or jumping) was used from a rope roll, the rope would refuse to fire during the subsequent retreat time.
- [DC] With the "BattyRope" option enabled (either explicitly or as part of TestStuff)
- [DC] Ending one's turn while on the Jet Pack threw the game into an endless loop (a never-ending turn).
- [DC] Guns (Shotgun, Handgun, Uzi, and Minigun) did not cut an attached rope, even with a point-blank hit to the anchoring cuff.
- [DC] The camera would only follow a roping Worm if the player controlling it was holding arrow keys or pressing Space or Backspace.
- [DC] If the terrain anchoring or supporting a Ninja Rope is destroyed, it will now detach the rope. (Previously, only a standard explosion would detach a rope.) This can happen in a number of ways:
- part of the rope becomes submerged by rising water
- the flames from a Napalm Strike or Flame Thrower burn the land anchoring or supporting the rope
- a Mole Bomb or Mole Squadron digs through land that anchored or supported the rope
- a Fire Punch, Kamikaze, Blow Torch or Pneumatic Drill destroys land that anchored or supported the rope (this can only happen with BattyRope enabled)
- [DC] There was a tiny rounding error in attaching the Ninja Rope. It would often attach one pixel down, right, or down-right of where the fired rope actually hit the terrain.
- [DC] There was a tiny rounding error in centring a gun blast (from a Shotgun, Handgun, Uzi, or Minigun). The blast would often be centred one pixel down, right, or down-right of where its line-of-fire actually hit the terrain.
- [DC] If a Worm tried to Bungee off a cliff, and there was a Crate resting 41 to 46 pixels below the cliff top, the bungee would fail to fire and the Worm would fall.
- [DC] The CPU AI would sometimes walk through an area, jump back and walk through the same area again.
- [DC] The persistent flames of a Petrol Bomb took fewer turns to decay after the arrival of Sudden Death.
- [DC] There was an extra 1.26 second delay between turns during Sudden Death with water rising disabled. This is because it took one second to raise the water by zero pixels, and a quarter of a second to linger while the camera savoured the moment.
- [DC] The sprite of a Worm holding a Mole Bomb always showed the worm as standing flat, regardless of whether it may have been standing on a slope.
- [DC] In a very tall map, the Mole Squadron would suddenly warp above the map after digging for no more than 36.20 seconds.
- [DC] A Worm using the Pneumatic Drill while whizzing across the map (e.g., from Rope or Jet Pack, or even a jump) could hit something and make a sound effect, without actually damaging what was hit.
- [DC] A Donor Card could give "-1x" of an item if the previous owner had an unlimited supply of that item. Since all teams normally have the same starting ammo, collecting this kind of donor card had no effect. Now, a donor card is no longer created if all the other teams already have an infinite supply. If an infinite supply is collected (which cannot happen anymore, barring future customisability enhancements), it will be displayed without an ammo count.
- [DC] There was no smooth transition when a poisoned Worm became healthy due to its team collecting a Health Crate.
- [DC] There was no smooth transition from the Freeze "aiming" state to the normal Standing state (e.g., when selecting Freeze then selecting Parachute while standing on land).
- [CS] When landing from a Fire Punch, the Worm's sprite was not updated to reflect the land slope.
- [CS] When teleporting directly on land (which can be easily done by pointing the cursor a short distance into the terrain), the Worm's sprite was not updated to reflect the land slope.
- [DC] There have been some internal fixes regarding fatal injury while releasing a herded weapon and BattyRope Skip Go. These fixes have virtually no externally noticeable effect.
- [DC] In an online game, in which at least two machines connected to the game each had at least two teams of different colours, and these two sets of colours had at least one colour in common, players would incorrectly see the secrets (e.g., weapon selection and collection) of teams whose colours they did not share. (Strictly speaking this fix doesn't affect the game logic, but it is tied to the logic version for fairness.)
- [DC] It has always been the case that if a worm fired the rope during a fall or jump, the rope firing would be cancelled when the worm landed, ready to be fired again right away. However, a change made in v3.6.29.0 inadvertently caused the rope firing also to be cancelled when the worm finished landing, and started standing up.
- [DC] It was possible to walk while a rope was firing, if that rope was fired while the worm was falling (from a jump, walking off a ledge, or dismounting from parachute or jet pack) and the worm subsequently landed. In v3.6.28.0 and earlier, this could result in the rope continuing to fire from the worm's hindquarters. In v3.6.29.0, it meant the rope could be fired a third time, in a different direction. It is no longer possible to walk while a rope is being fired.
- [DC] The "UnFreeze" sound effect was played when a frozen worm drowned, even though the worm remained frozen.
- [DC] If a missile, such as a Super Sheep with Sheep Heaven enabled, exploded extremely far from everything else (worms, oil drums, etc.), it would result in a "global explosion" due to an overflow bug.
- [CS, DC] Fatal and potentially fatal bugs
Changes
- [CS, DC] W:A no longer registers its associations automatically upon being launched. However, the previous behaviour may be restored by checking the appropriate checkbox on the Advanced Options screen, or by importing RegisterAssociations_Automatically.reg (from the Tweaks folder) into the system registry.
- [CS, DC] In-game smooth (dithered) background gradient
- [CS] The gradient is now rendered using a new method, which should fix performance problems on some system configurations.
- [DC, CS] The dithering algorithm used for rendering the background for maps with more than 96 colours or non-standard height has been substantially improved.
- [CS] The gradient is now drawn with a parallax effect. The effect can be disabled using the BackgroundGradientParallax_Disable.reg registry tweak.
- [CS] The registry tweak SmoothBackgroundGradient_Disable.reg has been added. This tweak disables smooth gradients (forcing a coarse gradient) while still allowing the full cycle of detail levels to enable background debris, bitmap backgrounds and clouds.
- [CS] Palette modification events occurring in the front end are now logged to "palette.log"; previously, they were only logged in-game.
- [CS, DC] W:A now uses some workarounds to fix palette problems in the front end. Some of these workarounds may have undesired side effects, such as flickering or delays when switching from screen to screen, even if you did not previously experience palette problems in the front end. If the side effects are undesirable and you do not experience palette problems, you can disable the workaround on the Advanced Options screen, or import FrontendPaletteFix_Off.reg (from the Tweaks folder) into the system registry.
- [DC] The FrontendPaletteFix registry setting, set by the FrontendPaletteFix_On/Off.reg tweaks, is a 4-bit bitfield, with each bit toggling a specific palette workaround. Thus, it's possible to selectively disable the palette workarounds by editing the registry setting directly.
- [DC] The map size prompt, which is displayed in the Join screen if the host transmits a colour PNG map larger than a certain size (the default is a width × height larger than 8 megapixels), is now also used when loading a map from disk using the Map Editor. The warning limit for the map's area can be set on the Advanced Options screen. As before (since v3.6.28.0), it can also be overridden by creating a value named "MapAreaWarnLimit" of type REG_DWORD in W:A's Options key (HKEY_CURRENT_USER\Software\Team17SoftwareLTD\WormsArmageddon\Options), which specifies the image area threshold, above which the game asks for a confirmation before loading the image. You can quickly set this value to the default value or disable the warning by importing MapAreaWarnLimit_Default.reg or MapAreaWarnLimit_Unlimited.reg (from the Tweaks folder) respectively.
- [CS] Entering the Options screen will no longer reset the current resolution to a default value if it is not in the list of resolutions reported as available by DirectDraw.
- [CS] The second asterisk (added in 3.6.28.0) has been removed from /me messages.
- [DC] The host/join logs (in User\Logs) now use a triple bullet format (like Export Log), making non-chat log entries stand out unambiguously.
- [CS] When hosting a Direct IP game with a custom channel scheme (using the Scheme parameter) and no explicitly-specified Game ID, W:A will automatically generate and set a Game ID to prevent accidental connections with an incorrect scheme (which lead to desyncs). As usual, the correct full wa:// URL can be obtained using the /url command.
- [CS] wa:// URLs generated using the /url command will now specify the Game ID as the last parameter. The reason for this change is to prevent truncated URLs from seemingly functioning correctly at first, but ultimately causing a desync.
- [DC] When joining a Direct IP game, the connection dialog box now says "Direct IP" instead of "Direct IP : Direct IP".
- [DC] Due to general improvements in the in-game network code, a minor bug has been temporarily introduced (and will be fixed in a later version). For a client in an online game with 3 or more players, if the host stops responding (without detectably dropping the connection) during a remote client's turn, then the game will not automatically time out the connection.
- [DC] Changes affecting game logic
- [DC] There are no longer any built-in game time limits. These were limits that were applied in the front end but not in-game, resulting in seemingly inconsistent behaviour. Previously, if a round lasted for less than 2 seconds total turn and retreat time, it was treated as a draw. Otherwise, if it lasted for less than 5 seconds total turn and retreat time, or less than 15 seconds of total game time, the round was treated as a "win" with no winner (which was a bug).
- [DC] Internal changes have been made to the "Random worm order" scheme option. This should have no discernable effect.
Features
- [CS] W:A now uses Unicode for all clipboard operations when supported by the operating system.
- [CS] An Advanced Options screen is now accessible from the Options screen, which allows configuring new settings, and settings previously only configurable using registry scripts and direct registry editing.
- [CS] The Intro can now be skipped with a single tap of the Escape key.
- [DC] It is now possible to skip the opening intro without using the /nointro command line option. To enable this, use the Skip Intro checkbox in the new Advanced Options Menu.
- [CS, DC] All front end screens can now be exited with the Escape key.
- [CS] When placing the mouse cursor at the bottom of the screen in the front end, W:A will now display a help hint.
- [CS] Some combo boxes (e.g. scheme and map selection combo boxes) now drop down to taller list boxes.
- [CS] You can now jump to and cycle through combo box entries that begin with a certain character by typing the said character on the keyboard.
- [CS] List view controls (e.g. the WormNET player list) are now scrollable with the mouse wheel.
- [CS] Ctrl+Delete and Ctrl+Backspace now delete and backspace a word respectively in front end edit boxes.
- [CS] When W:A is started for the first time, the in-game screen resolution now defaults to the Windows desktop resolution instead of 640×480.
- [CS, DC] When the network play screen is opened for the first time, the WormNET nickname now defaults to the Windows user name or, if it is not available, the computer name.
- [DC] When W:A is launched, the default scheme "Intermediate" is loaded. However, this is no longer done every time you enter the offline multiplayer screen and Options screen. The game will remember the last scheme loaded.
- [DC, CS] Clicking the "cheat" button in the Weapon Editor now flips into another screen instead of opening a modal dialog box. Currently this allows you to edit both Ammo and Delay for utilities. Clicking the "cheat" button a second time flips back to the normal weapon editor.
- [CS] Provided that the computer is connected directly to the Internet, W:A will now attempt to auto-detect the external IP address by enumerating all IP addresses associated with the local hostname, and picking the first one that doesn't belong in a private or auto-configuration address range. This allows the /url command for hosted Direct IP games to work properly in the case that the computer's external IP has changed since the last time it connected to WormNET.
- [CS] The /url command now also works when joining a game.
- [CS] The WormNET button on the Network screen now automatically connects to WormNET using the "Autologin" link. The old behaviour can be restored by replacing the file ServerList.htm in the Graphics\ServerLobby subdirectory with OldServerList.htm.
- [CS] A new HTML box has been added to the WormNET channel list screen. This box will be used to display up-to-date community and game-related news. 3rd-party server owners can send content to this box by placing it into <MOTD>...</MOTD> tags.
- [CS] The W:A HTML parser now understands the EXTA tag. Having the same syntax as the A tag, it will create hyperlinks which, when double-clicked, will minimise the game and open the link specified by the HREF parameter in the default web browser instead of the in-game browser.
- [CS] Flags have been added for Algeria, Belarus, Bulgaria, Egypt, El Salvador, Guatemala, Jamaica, Kazakhstan, South Korea, Lithuania, Macedonia, Marshall Islands, Peru, Saudi Arabia, Taiwan and United Arab Emirates.
- [DC] Four Hungarian characters have been added to W:A's font set: õÕûÛ
- [DC] You are now allowed to use any and all characters in game names. The length limit is still 29 characters. Using the characters <>'&" lowers the maximum length, and these characters will show up incorrectly in older versions of W:A.
- [DC] The ß character is no longer automatically prefixed in front of hosted game names.
- [CS, DC] Wrapped lines in chat history boxes are now indented. This prevents line wrapping from being abused to create fake messages.
- [DC] Clipboard pasting in the front end now preserves newlines. They are shown as ↵ glyphs in the edit box, and while selecting text. When entered in WormNET / IRC, they are translated into | characters.
- [CS] Sending notices is now supported using the /notice command, although W:A does not distinguish between incoming messages and notices.
- [CS] A /hb command has been added to the WormNET IRC lobby, which is an alias for "/msg HostingBuddy".
- [CS, DC] Web and E-mail URLs are now automatically parsed and converted to hyperlinks in message histories (WormNET, LAN and host/join screen).
- [CS] WormNET private message formatting codes can now also be used for private messages in the host/join screen.
- [CS] New private message formatting codes have been added: \u to start underlined text, \U to stop.
- [CS] While the game is minimised, it will flash its taskbar button and produce a standard beep when the player receives a private message in the WormNET lobby or in the host/join screen, or when the player's nickname is mentioned in WormNET chat.
- [CS] While the game is minimised from the host screen, it will flash its taskbar button when someone joins the game.
- [CS] While the game is minimised from the join screen, it will flash its taskbar button when the host lights up.
- [DC] The /afk or /away command may now be used in the network Join dialog. In the Away state, your game will automatically light up when the host lights up. This is especially useful for spectators. It also works for players who plan to actively play upon returning to the computer, in a casual game. In Away mode, once the game starts your turns will be automatically skipped (assuming you're not a spectator), just as if you'd entered /afk or /away in-game. The Away state will be remembered upon return from the game. In the Join dialog, typing in the chat or clicking most dialog buttons will cancel the Away state.
- [CS, DC] Pressing Ctrl+Home will enable "Home Lock", making the camera remain centred on the current worm. Pressing and releasing Home disables it.
- [CS] Home (or Home Lock) will override the effect of Scroll Lock. Both can be temporarily overridden by holding down the left mouse button.
- [DC] Previously, when the Escape menu was open, any team cursor (such as a Teleport or Homing Missile cursor) would be hidden from view. Now, a team cursor is rendered in quasi-transparency when other cursors are in use.
- [CS] W:A will automatically begin ignoring in-game chat from players who send more than 5 chat lines within the same second. When this happens, a message will be displayed with unignore instructions.
- [CS] It is now possible to ignore players during the game using the /ignore and /unignore commands (in addition to the /ex and /inc commands, and using Ctrl+F1...F6). Typing /ex alone will now clear all ignores instead of ignoring all players, to be consistent with the behaviour of /ignore alone in the WormNET lobby and host/join screen.
- [CS] W:A now saves the state of transparent labels, chat panel pinned status, home lock and the heights of pinned and unpinned chat panels between games.
- [CS] The chat panel can now be shrunk (using Ctrl+Up) to the minimum size required to display all players (as small as one line).
- [DC, CS] The screenshot function is now much faster. Whereas before, pressing Pause would cause the game to pause noticeably as the screenshot was created, it is now instantaneous. This means that the Export Video feature can now work at full frame rate or faster, even at moderately high resolutions. Note that by default, Export Video goes no faster than the normal frame rate; to get it to go as fast as possible, adjust the playback speed by holding 0 while pressing 9.
- [DC] The Export Video dialog no longer has an upper limit on resolution.
- [CS] It is now possible to automate Export Video by specifying export parameters on the command line, after the /getvideo switch. The order is as follows: /getvideo ReplayFile.WAgame framerate-divider start-time end-time resolution-width resolution-height basename. The syntax for the values is the same as in the Export Video option dialog. At least the frame rate divider must be specified; other parameters will be set to their default values if not specified. This feature can be used to extract a single frame as an image, by specifying the same start and end time.
- [CS] Pressing Space during the playback of a recorded game will now skip to the beginning of the next turn.
- [DC] Weapon Panel
- [DC] In v3.6.28.0 it became possible to view the weapon panel during other players' turns, but the panel was still being automatically closed at the beginning and end of local turns, even though it could be reopened right away. The panel is no longer ever automatically closed; only a player's direct actions will close it.
- [DC] Previously, it was not possible to view the weapon panel during other players' turns if there were multiple players on the same computer with different team colours. Now, a menu of team colours is displayed at the bottom of the panel in these cases, allowing the inventory of any local team to be viewed by clicking the team's colour swatch.
- [DC] It is now possible to view the weapon panel during playback of a recorded game. A menu of team colours is displayed at the bottom of the panel, allowing any team's inventory to be viewed by clicking the team's colour swatch.
- [DC] When the weapon panel is redrawn, the cursor position is now remembered even if it was on an empty square of the grid, or on a weapon that disappeared during the redraw. Previously, the cursor was reset to the upper-left corner of the panel in these circumstances.
- [DC] Previously, Select Worm was hidden from teams with only 1 worm. Now, it is displayed in disabled form. (This is important if you have a stockpiled Select Worm that can persist to the next round.)
- [DC] During manual placement at the beginning of a game, it is now possible to "reselect" the Teleport. This has no practical value and is just for consistency and fun.
- [DC] Selecting a weapon from the weapon panel will now automatically close the chat panel.
- [DC] A new "Sanitize Replay" feature has been added. This creates a copy of a replay with all private chat messages removed. To use this feature, right click on the WAgame file in Explorer and click "Sanitize Replay". The file "replay.wagame" will be sanitized to "replay {sanitized}.wagame".
- [DC] It is now possible to view the contents of crates and fuses of random mines during playback of games played with v3.6.29.0+. Previously, these were displayed as question marks. This feature has not been made fully convenient yet; currently you must fast-forward almost to the end of the replay and then [R]estart it to see the contents of crates and fuses of random mines.
- [DC] The Teleport fudging algorithm (which tweaks the position of the cursor if it is not precisely located in a spot allowing space for a Worm) is now much better at reading the user's intentions. If any fudging is needed, it will now be biased towards placing the Worm directly on land.
- [DC] The resolutions in the Options Menu combo box are now sorted by total number of pixels. Resolutions that are identical in total number of pixels are sorted by height.
- [DC] When using "Extract Scheme" on a recorded game file having an old logic version but including settings in its scheme that are interpreted by newer versions to represent customised Mines / Oil Drums and/or Jet Pack fuel, the extracted scheme will now have these settings reset to their default values, so that a game played on the latest version using this scheme will have the same settings as the actual recorded game did.
- [DC] In v3.6.19.12, the Map Editor's Generate button was removed, and replaced with a Reseed button. The Generate button has now been brought back (inserted above the Reseed button), and generates exactly the same maps as it did before being removed.
- [DC] Test versions
- [DC] BattyRope, 150% Speed, and TestStuff have all been added to the latest game logic version, so that older versions will not need to be emulated to enable these options.
- [DC] Girder Radius Assist has been added to TestStuff.
- [DC] Note that TestStuff has been incremented to "version 7". However, emulation of earlier versions of TestStuff is now allowed. There is a warning message for this, because it results in the TestStuff feature list differing from the one that is automatically printed when the host enables TestStuff. The warning message will also clear all lights, allowing players to light up again if the emulation of an older TestStuff is not a problem.
- [DC] Some new test versions have been added:
- RacingStuff: This can be toggled with any one of the following commands: /rs, /race, /racing, /racestuff, or /racingstuff. This enables Phased Worms, in which worms pass through each other without resistance, and enables worm selection without ending hot seat time. This option is especially useful for Bungee Races.
- BoomRacing: This can be toggled with any one of the following commands: /boom, /boomrace, or /boomracing. This enables Phased Teams, and enables worm selection without ending hot seat time. This option is especially useful for Boom Races and Assault Courses.
- Phased Teams creates a condition in which enemy teams cannot influence each other in any way with some exceptions:
- The landscape is shared, so terrain creation (girders, arrows) and destruction (explosions, Fire Punch, Kamikaze, Blow Torch, Pneumatic Drill, Mole Bomb, Mole Squadron, Napalm Strike, Flame Thrower) influence all teams. Worms standing on terrain may fall if that terrain is destroyed or pierced by an arrow; the creation of terrain puts an obstacle in the path of enemy teams, and its destruction removes an obstacle.
- Rising water drowns all teams, regardless of who or what caused it to rise.
- Destroying an Oil Drum will remove it as an obstacle, meaning Worms that were standing on it will fall.
- If a Mine placed on startup is triggered by proximity, it will only directly damage allies of the team that triggered it. However, its disappearance will mean that it can no longer serve as an obstacle for enemy teams.
- Anything that creates flames (Napalm Strike, Petrol Bomb, Oil Drum explosion) may erase pre-existing flames if the maximum number of flamelets is reached. The flames erased may belong to an enemy team.
- Enemy Worms will visually hide the terrain covered by their sprites. (This is also a shortcoming of Phased Worms.)
- These shortcomings may be addressed in a future Beta Update.
- [DC, CS] Export Log changes
- [DC] The WAgame file format version is now logged, right after the game logic version.
- [CS] The W:A version used to export the log is now logged as well.
- [DC] The turn time totals and associated team and player names (at the end of the log) are now formatted for improved readability.
- [DC] Export Log will no longer fall into an endless loop when emulating the BattyRope Jet Pack bug. Note that there are other endless loop bugs that Export Log does not handle yet.
- [DC] The "Damage dealt" log entries now include an accounting of kills.
- [DC] The exported log will now indicate which player was the host.
- Readme entries for versions in which CyberShadow and Deadcode collaborated (v3.6.28.0 and onward) have been annotated in small print to show which developer(s) implemented each fix and feature.
- [DC] means it was implemented by Deadcode (David Ellsworth).
- [CS] means it was implemented by CyberShadow (Vladimir Panteleev).
- [CS, DC] means it was primarily implemented by CyberShadow, with adjustments by Deadcode.
- [CS, DC] at the root of a tree means that most of the subentries were implemented by CyberShadow, and the rest by Deadcode.
- Note that the [CS] and [DC] tags indicate coding credit only, and do not cover planning discussions and documentation edits.