v3.6.28.0 Beta Update (2007.06.29)

Contents

Fixes

[CS] Occasionally, W:A would freeze while minimised, making it impossible to restore the game and continue playing. It would become necessary to kill the "WA.exe" process.

[DC] In the front end, pasting text from the clipboard could cause a crash later on if the pasted string had a length divisible by 16 characters.

[DC] A WormNET server could cause a client-side crash by sending a malformed scheme-configuration string when the client joined a channel.

[DC] The previous feature "The precise fuse display (introduced in v3.6.20.1) is now disabled at the minimum Info display level (pressing Delete cycles through Info levels)." was incomplete. At the minimum display level, fuses that exceeded 3 or 5 seconds (depending on the weapon) were still shown. This was particularly troublesome because the 4-digit fuse could not be hidden when playing back Super Sheep runs in which Sheep Heaven was enabled.

[DC] A mine with a random fuse that happened to be exactly n.00 seconds would be displayed as "n.100" during playback of replays.

[DC] The game no longer uses 100% CPU when minimised. (An earlier fix in v3.6.20.1 was meant to do this, but was incomplete and did not work on all systems.)

[DC] With the slow front end workaround activated, there may now be flicker on certain systems (due to the fix that prevents 100% CPU use). Importing SlowFrontendWorkaround_AntiFlicker.reg (from the Tweaks folder) into your system registry may fix this problem, but it may cause the game's front end to use nearly 100% CPU unless minimised.

[CS] If, while playing a game, W:A is minimised by an external application or by a hotkey such as Alt+Tab, its colour palette will no longer be corrupted upon restoring.

[CS] The /me command now works properly while in the WormNET lobby (i.e., IRC). The formatting has also been changed to include surrounding asterisks.

[CS] Quit messages are now displayed in the WormNET lobby, along with the quit reason. A quit reason is now sent when hosting a game.

[DC] Map Editor

[DC] When loading a PNG map that had been previously resaved within the map editor, its cavern border status would be reset, instead of being overridden by the header as it should be.

[DC] When loading a PNG map that hadn't been previously resaved within the map editor, the enabled/disabled status of "Placement Holes" was carried over from the last map. Now it defaults to being disabled.

[DC] The Map Editor refused to load PNG maps that didn't have a true black in the palette. Black is now automatically added when necessary, if there is room in the palette.

[DC] In the file list box, subfolders with names matching "*.CUS, *.IMG, *.PNG, *.BIT, *.LEV" would be listed twice — once as a subfolder with <> around its name, and once as a fake file.

[DC] After loading an incomplete PNG file (resulting in the message "PNG Error: Invalid chunk length"), the incompletely-loaded picture would be committed upon exiting the Map Editor. Now, the notice "INVALID MAP FILE" is displayed instead.

[DC] The eight mini-thumbnails of generated maps were rendered at 160×58 and then resampled to 120×43, resulting in more aliasing than necessary. Now they are rendered directly at 120x44. (Note that as before, they are not anti-aliased.) The mini-thumbnails also had a mismatch between their clickable area and the area that caused their borders to light up upon mouse-over.

[DC] Entering a line at least 256 characters long in the host/join chat caused a local crash.

[DC] If the host of a game chose an intrinsic map (Cars, Polar, etc.), and then someone joined later, the chosen map would not be communicated to them. Thus if the game was started with that map, it would desync.

[DC] It was possible, sometimes even likely, for certain intrinsic maps (Birthday, Fruity2, Paris, Polar, Shoes, Speccy, and Village) to be initialised with Placement Holes in them. This depended on the random seed; now, a host will automatically avoid seeds that would lead to the presence of Placement Holes.

[CS] There are some filename inconsistencies between the various Soundbanks on the W:A CD-ROM. Two of them were handled in v3.6.19.7. This version handles a few more variations, in soundbanks including "Cad", "Formula One" and "Russian".

[DC] The game did not range-check the number of worms per team when loading a WAgame file. Giving this a value greater than 8 (using a hex editor or memory editor) would have bizarre effects due to the resulting access of out-of-range array elements, and may have even caused a crash with certain values.

[DC] When a text notice appears in-game (e.g., "1x Ninja Rope") it is now shown immediately, rather than being delayed by 1 frame as it was before. Also, the "transparency" dithering effect that is applied to the text is now never purely vertical, whereas before, this depended on the width of the rendered text.

[DC] In certain circumstances, replay launching (e.g. Playback) would fail with a crash error. This was rare, but consistent for those who experienced it.

[DC] The game now runs properly from the Czech W:A CD-ROM, whereas before, it would give a "WARNING: No default Flag Found" message upon startup.

[CS] A compatibility switch for Wine has been added, which works around several Wine issues which may prevent large maps from working. To activate the workaround, import the file NoLandInVram_On.reg (from the Tweaks folder) into Wine's registry using Wine's Regedit tool.

[CS] The utility selection hotkey, intended to be the key located between Escape, Tab and 1, is now bound to that key regardless of the currently active keyboard layout. To revert to the old behaviour, using the current layout's grave accent ( ` ) key for utility selection, import LegacyUtilityKey_On.reg (from the Tweaks folder) into your system registry.

[DC] If an error occurred while connecting to an online game, for example if the room was full or if your name was already in use, the mouse cursor would inappropriately remain in the "busy" state.

[DC] At the Next Round stage, if only players of a single ally remained after others quit or disconnected, the light bulb button and text entry box would disappear, but it would still be possible to enter text into the chat. Now, these two elements do not disappear unless all players except for the local player have quit or disconnected.

[DC] The Exit button in the Next Round screen is now never greyed out or disabled in any way.

[DC] If a player was automatically kicked in-game due to a desynchronisation or invalid data, the connection was not closed — meaning that the player would have to wait 3 minutes on their end for the connection to time out (unless they quit manually before the timeout).

[DC] If a player quits or is disconnected in-game, you will no longer have to wait 60 seconds for them to time-out in the Next Round screen.

[DC] Since v3.6.19.7, right-clicking the scheme name in the Net Join dialog would erroneously bring up a Windows GUI context menu with an invisible mouse cursor.

[DC] In the Match Finished screen (where the stats are shown), if the user minimised before the fanfare finished and the music began, the game would crash upon being restored.

[DC, CS] Fixes affecting game logic

[DC] If a player released Mad Cows from a Worm on the Rope, Bungee, Parachute or Jet Pack (by pressing Enter), and then pressed Enter a second time, the Worm would instantly dismount and would not respond to player input for the remainder of the turn and retreat.

[DC] It was possible for a perfectly aimed Shotgun to miss, if the target was farther away than the width of a map. For example, Worms at opposite diagonal corners of a map would not be able to hit each other with a gun.

[DC] If an external scheme editor was used to make the Petrol Bomb a "zero power" weapon, and an attempt was made to start a game with that scheme, W:A would crash. (See Footnote 2.)

[DC] It was possible for the Pneumatic Drill to fail when used by one Worm atop another. This happened when the top Worm (the one doing the Drilling) had not left the floor since initial autoplacement or Teleportation directly on land, but the bottom Worm (the one being Drilled) had fallen or landed on the floor.

[DC] In a cavern map with Indestructible Borders enabled and no detected available positions for Worm autoplacement, the attempt at autoplacement would fall into an infinite loop, audible as a string of beeps. This could happen after starting a game with an empty (or nearly 100% full) colour map with Placement Holes disabled, if the timer was allowed to expire on the forced manual placement or a CPU team was present. The game now automatically drowns the Worm in this case, which is what was intended.

[DC] The crosshair angle for the Blow Torch was misleading; it pointed at a 30° angle, whereas the digging angle is 22.5°.

[DC] The v3.6.26.4 Scales of Justice bug fix introduced a new bug. If a dead ally created a "gap" in the original list of allies, the ally at the end of the list would not have any health deducted or added.

[DC] It was previously possible for an empty Donor Card to be created. Now an ordinary grave is created instead.

[DC] It was possible, when blowing up a large number of Oil Drums and Crates simultaneously, to invoke a bug in the flamelet code (specifically, the code that destroys an old flamelet to create a new one).

[CS] It is possible, especially in large maps, for a projectile or flying animal to reach the edges of the coordinate system. In previous versions, passing an edge would result in wraparound or odd behaviour. Now, objects are prevented from going beyond an edge; objects that are player-controlled or respond to wind may turn around and come back from an edge.

[DC] Due to unnecessary rounding errors, the Kamikaze deviated from a 45° angle by about 3° upwards when fired down-left or up-right; it also stretched further when going up-left and shorter when going down-right.

[CS, DC] A dormant Mine would be stripped of its horizontal velocity upon bouncing on the floor or ceiling. This would happen in situations where the mine was knocked by an explosion, punch, etc., while it was still dormant. (A Mine is dormant for 4 seconds after it has been dropped; during this period, proximity to a Worm will not trigger it.)

Changes

[DC, CS] Some extra information is now logged into "palette.log".

Features

[CS] Registry scripts that change game options have been moved to a new Tweaks folder.

[DC, CS] Limitations relaxed or removed

[DC, CS] It is now possible to play on PNG maps having dimensions other than 1920×696. A cavern map may now be up to 32504 pixels wide or 32600 pixels tall; an island is limited to being 28408 wide or 30552 tall. The minimum map size is 640×32. A map's width and height must be divisible by 8.

In the network join screen, the game now displays a warning message when it begins receiving a map file larger than 512 kB. Also, if the map is a colour PNG, and the image area (width × height) is larger than 8 megapixels, the game will require confirmation from the user to load the map once it has been received. The warning limit for the map's area can 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.

If you are using Wine, large map support may not work properly without the NoLandInVram workaround. See Fixes, above.

[DC] It is now possible to play with up to 48 Worms if all players are using v3.6.28.0 or later. Because of limitations in the network protocol of older W:A versions, if the total exceeds 18 Worms, clients using older versions will be shown only 1 Worm in each team and the game will not be allowed to start. Note that most randomly generated 1920×696 maps will not accommodate 48 worms without forcing manual placement, unless the host modifies the map to have lots of Placement Holes (see below; this can now be done by clicking the circled-girder icon in the Map Editor).

[CS] It is now possible to customise the initial number of in-game hazard objects (Mines and Oil Drums). The setting can be adjusted in the Scheme Options editor by Shift+clicking the Mine/Oil Drum button. The maximum number is 250, however this is limited by the rule which forbids two objects from being initially placed too close to each other.

[CS, DC] W:A launching / command line parameters

[CS] People hosting Direct IP games may now offer links in the format wa://address-of-host, and launching this link will cause W:A to automatically launch and join the hosted game. This link format supports additional parameters (See Footnote 3.). A port can be specified using the wa://ip:port syntax.

[CS] The command line "WA.exe /host" will cause W:A to automatically launch and host a Direct IP game.

[CS] The /play parameter required to play replays is now optional, as long as the replay has a .WAgame file extension. This allows associating .WAgame files with WA.exe directly.

[DC] The /playat parameter will now accept the starting time as an argument in the command line, bypassing the dialog box. With this parameter, playback starts paused. The syntax is: WA.exe /playat "filename.WAgame" time

[CS] Minimising

[CS] While the game is minimised, it will flash its taskbar button and produce a standard beep in the following circumstances:

At the start of a local player's turn

If the player has gone "away" using the /away or /afk command, the game will only produce a standard beep

When the user receives a private whisper

[CS] The game can now be minimised from both the front end and in-game by pressing Shift+Escape.

[CS, DC] In-game

[CS] It is now possible to paste from the clipboard in the in-game chat, using Ctrl+V or Shift+Insert. Several other editing hotkeys have been added: Ctrl+Left and Ctrl+Right move the cursor word by word, Ctrl+Delete deletes the word starting at the cursor, and Ctrl+Backspace deletes the word before the cursor.

[DC, CS] The Home key, which centres on the currently active Worm, now works regardless of whether it is your turn or not. When held down, it now maintains this centring continuously. The key has no effect during others' turns if the current worm is invisible.

[CS] Holding Shift now causes the mouse sensitivity to be multiplied by 4. Holding the middle mouse button does the same. With both combined, the multiplier becomes 16. This is useful (sometimes even necessary) when playing on a very large map.

[DC] If M is pressed during playback, the current frame will be marked as if "Playback at" had been used. Subsequently pressing R will fast-forward to that point after restarting the replay. As before, Shift+R resets the marker to the first frame of the replay. The marker is temporary and lasts only for the duration of the current playback session.

[CS] During a game, players may now use Ctrl+PageDown to initiate "chat pinning", in which the chat panel is displayed even when it is not "in focus". This allows a player to play while reading what the other players are saying. Since this could give users of v3.6.28.0+ an unfair advantage in situations where there is emulation, in online games with more than 2 players its absence is emulated.

[CS] The network chat panel can now be resized using Ctrl+Up and Ctrl+Down. The position is remembered independently for the panel's active and pinned states, but only for the duration of the game.

[DC] Cursor movement within the weapon panel, and the sliding of the panel when it is opened and closed, is now smooth (as opposed to being updated only 50 times per second).

[DC] The player colour swatches in the right side of the in-game chat box are now slightly wider.

[DC] The Pause screenshot key now works in the front end.

[DC] If you have achieved a Gold Medal in a mission, you can now adjust the number of Attempts by left- or right-clicking the number. (A higher number of Attempts generally adds items and/or events to a mission to make it easier.) [This feature was accidentally disabled in v3.6.28.0. See Features under v3.6.29.0 Beta Update.]

[DC] The exact values of the Turn Time, Retreat Time, Round Time, Worm Energy and Health Crate Energy settings are now precisely displayed in all screens of the front end and can be fine-tuned. To adjust them in increments of 1, hold the Shift key while left- or right-clicking to increase or decrease the value. Without Shift being held, these settings will cycle through a set of values similarly to how they used to.

The Round Time is normally measured in minutes, however it can also be adjusted up to 128 seconds in steps of 1 second. The way this is done is a little strange — you need to go below 0 minutes, and then left- and right-clicking will have a "backwards" effect on the number of seconds.

[DC] In the Map Editor, you may now fine-tune the number of Placement Holes instead of being constrained to either 0 or 18. This is done by left- or right-clicking the circled-girder icon, which displays the current number of Holes; holding Shift allows you to fine tune the value, otherwise it skips from 0 to 18 to 32 to 48 and then to the maximum. The allowed range is 0-300, but hosting a game with more than 18 Holes requires all players to be using v3.6.28.0 or later. If a map is too small to accommodate the requested number of holes, the value will max out; for example, a solid 640×480 map can't have more than 8-13 holes, depending on its random seed; but if it maxes out at 10, further Reseeds will be limited to 10 Holes (and eventually as few as 8) unless you manually increment the count. Holding Ctrl while clicking Reseed will force it to try for as many Holes as it can get.

[DC] Various actions involving map rendering, such as clicking a map thumbnail to cycle through randomly generated maps or re-rendering a map preview in the Map Editor, will now be a bit more responsive. The progress indicator — a small flat piechart (not to be confused with the 3D piechart that shows during the loading of a game) — has been removed. It was never very meaningful anyway, and may possibly be reimplemented in a future version.

[CS] The quick description messages in the front end and some in-game text can be made to use a larger font, to improve accessibility. To enable this feature, import LargerFonts_On.reg (from the Tweaks folder) into your system registry.

[DC] In the "Playback at..." entry box, you may now use shortcuts such as "3:" instead of "3:00" for 3 minutes, or "1::" instead of "1:00:00" for 1 hour. Before, the best shortcuts for those were "3:0" and "1:0:0".

[DC] Using the "Playback at..." entry box, it is now possible to start playback in paused (single-step) mode.

[CS, DC] Games can now be started with just one team, or with teams of just one allied colour. In such cases, the game will only end in a draw (when all teams surrender or are eliminated). This works for both "multiplayer" and "online" games. When an online game is started without anyone else joining, it will act like an offline game.

[DC] Maps from OnlineWorms (Korean, Japanese, and Chinese Worms) and WWP Aqua (Korean) can now be loaded from W:A's Map Editor. The land*.dat files must be placed underneath User\SavedLevels and are loaded just like other maps.

Note that WWP Aqua's maps use a full palette of 256 colours. The Map Editor will allow you to load them with the full palette intact, but exiting forces the map to be dithered to 113 colours so that it will be usable in-game.

[CS] W:A now auto-detects the user's IP address using a reply from the WormNET server. This should make manually configuring the external IP address unnecessary in most cases. The IP address can still be overridden using the "Force IP address" checkbox.

[CS] Background gradients are now rendered by the game. When a PNG map with more than 96 colours is used, this now replaces the old behaviour of not having a background at all. The gradient is dithered and may include colours from the map's palette; if a 112 colour map is used, the gradient will only use colours from the map's palette.

[CS] In case of an unrecoverable error, W:A will save an error report to the file errorlog.txt, and a minidump to crash.dmp.

[DC] In the Host/Join screens, entering "/v", "/ver", or "/versions" will display the game logic versions of all players currently present.

[DC] A rudimentary host/join chat logging feature has been added. Currently, this logs the hosting and joining of games, the player list upon joining, the chat, players joining and leaving, players kicked (in the host's log), and games initiated. GMT timestamps are included for each log entry, and in the filenames of the logs. The logs are stored in User\Logs.

[DC, CS] Flags

[DC, CS] Flags have been added for seven additional countries for a total of eleven. Extended flags now include Chile, Serbia, Slovenia, Lebanon, Moldova, Ukraine, Latvia, Slovakia, Costa Rica, Estonia, and China.

[DC] Extended nation flags are now shown in the host/join screen and in WormNET's list of hosted games.

[DC] Previously implemented "test versions" can now be accessed. These are game logic versions which, when emulated, enable some options that are not yet official. If you are hosting a game, you may enable and disable the test versions using commands entered into the chat (see below). The game will then explain this mode change to all players present. Newly joining players will be informed if one of these modes is enabled. These modes persist both through multiple rounds and when the host clicks "Play Again". They are mutually exclusive (enabling one will disable others), although TestStuff is a superset of BattyRope. Access to the options enabled by these test versions should not be considered official at this time, as they are planned to be added to the scheme format (among many other new options that may be more useful) and will then be individually selectable, whereas in test versions they are grouped together and attached to a specific game logic version.

BattyRope: Toggled by entering "/batty" in the chat. Allows the Ninja Rope to stay connected during other players' turns, and also forces Rope Knocking to be enabled.

TestStuff5: Toggled by entering "/ts" or "/test" in the chat. Enables BattyRope, Rope Knocking, use of weapons during a rope roll, the Indian Rope Trick, worm selection without ending hot seat time, and skipwalking facilitation (up/down/middle arrow keys act like right-clicking while walking); disables loss of control while roping; doubles the maximum speed for roping and jetpacking, and abolishes the speed limit for projectile motion. Also enables Circular Aiming and Anti-lock Power. [TestStuff was supposed to include Girder Radius Assist as well, but this feature was accidentally disabled.]

[CS] It is now possible to set the TCP port used for hosting games. This setting is in the Network Configuration screen, and affects both WormNET and Direct IP games. Games hosted on a port other than the default one, 17011, will be inaccessible to game versions prior to 3.6.28.0.

[DC] Adjustments to previous features

[DC] Right-clicking the Water Level bar in the Map Editor sets the appropriate level for "water drops". However, since the water level is still stored as a percentage, "water drops" are only achievable at certain map heights. At other heights, right-clicking the Water Level bar will result in a "can't click here" beep.

[DC] Export Log additions

[DC] Instances of the "alien" glitch are now logged. (This is where a Worm horizontally hitting a wall at a nearly vertical angle steeper than 87.138° (slope=20) and a vertical speed past the fall damage threshold will stop and twang as if it hit the ground, but will then continue to fall. If the worm fell from a rope dismount, it will not lose control of its turn.)

[CS, DC] Features affecting game logic

[CS, DC] Players may now view the weapon panel for their team at any time, including during other players' turns. (Strictly speaking this change doesn't affect the game logic, but it is tied to the logic version for fairness.)

[CS] Chat pinning — see above. (Strictly speaking this change doesn't affect the game logic, but it is tied to the logic version for fairness.)