Forums > Announcements
Worms Armageddon v3.8 Released
Deadcode:
[*][DC] Fixes affecting game logic (continued)[*][DC] Bug incompletely fixed in v3.6.19.17: The previous fix, "When placing worms at the beginning of a game, placing directly on land caused an annoying delay of two seconds, whereas letting the worm drop onto land did not create much of a delay. Now, placing directly on land causes virtually no delay (the only delay will be due to network lag)." was incomplete. A long delay still occurred after placing the last worm of the last team directly on land. This delay is now the same as that which occurs after placing the last worm one pixel above land.
[*][DC] Bug introduced in v3.5 Beta 1: When Girder or Teleport was clicked at an invalid location while a worm was jumping, falling, or landing, instead of triggering a warning beep as it should, this caused the mouse cursor to disappear, without the accompanying spangle animation that happened when clicking at valid locations. The warning beep would then only happen if Space was subsequently pressed from the ground in an attempt to place the girder or trigger the teleport.
[*][DC] If any mouse cursor triggering weapon (homing, strike, girder, or teleport) was used and had the "Remember as Default" property (currently only possible with the RubberWorm "Remember weapons" option enabled, which applies it to all weapons), then after the weapon's use, it would be reselected immediately before retreat time, blocking that retreat time from being effectively used due to the mouse cursor being enabled (which blocks the player's worm from being controlled via the arrow keys and other hotkeys).
[*][DC] With the Laser Sight utility enabled, the crosshair exhibited a glitch in which it switched between being shown at two different distances from the current worm. This was especially visible to non-allied players in an online game, since for them, the crosshair is shown at times when the active player sees the laser sight. (Strictly speaking this change doesn't affect the game logic, but it is tied to the logic version so that all players see the same thing.)
[*][DC] Any object (such as a worm) whose collision mask intersected with terrain would move through all terrain as if it weren't there (unless prevented from doing so due to being blocked by another object), until either passing into a space free of terrain (after which it would behave normally, and collide with the next piece of terrain it touched), or drowning. This is now fixed, by pinning the object in place as long as there is terrain intersecting with its collision mask.
[*]The previous glitch in which a Girder could be placed at a location intersecting with objects/terrain (fixed/introduced in v3.5 Beta 1, and fixed in v3.6.19.7, v3.6.31.2b, and v3.8), if it had not been fixed, would now behave differently thanks to this new fix. Objects intersecting with the girder, instead of falling through it (and potentially drowning), would now be pinned by the girder, prevented from moving in any direction until the portions of the girder intersecting with them have been destroyed.
[*]The glitch in which a Longbow arrow embedding itself in the terrain at the location of a Grave would cause the grave to fall through the terrain (introduced in v3.5 Beta 1, v3.6.19.7, and v3.6.19.12) is now fixed. Now, such a longbow arrow will pin the grave in place until the portion of it intersecting with the grave's collision mask has been destroyed.
[/list][*][DC] It is now possible to place a Girder in a location that intersects with a Grave. This finally realises the goal of making graves have no tangible effect on the physics of the game (with only one exception – that the game waits for all objects, including graves, to stop moving before progressing to the next state), which began in v3.5 Beta 1, v3.6.19.7, and v3.6.19.12, with the fixes preventing graves from absorbing Longbow arrows.
[*][DC] Bug introduced in v3.6.21.1: If the Ninja Rope was fired on the single frame (1/50 second) step between walking off a ledge and falling, the firing of the rope would be immediately cancelled, such that the rope-firing sound effect would be heard but the rope would not be seen to fire at all.
[*][DC] With BattyRope enabled, if using Scales of Justice resulted in the death of inactive worms on Rope, Bungee, or Jet Pack, an endless turn would result, due to the game waiting for the worms with 0 health to be on land.
[*][DC] Frozen worms were unfrozen upon skimming water. Since frozen worms normally can't have horizontal velocity, the way to reproduce this was to trigger Freeze while another worm from the current team was moving in a trajectory that would make it skim.
[*][DC] Although it was not locally allowed as input, in schemes with worm selection and manual placement enabled, it was internally possible to select worm during initial placement. If a team used this cheating loophole to select one of their already-placed worms before manual placement finished, and used Freeze, the game would then see manual placement as being finished, even though not all worms were placed. Worms that had not been placed would be located way up in the sky and virtually untouchable during turns, but able to take turns themselves. If more than one worm was in this state, use of Firepunch by one of them would result in an endless turn.
[*][DC] In a scheme with manual placement enabled, instant utilities in a team's inventory would go into effect when that team was placing their first worm, instead of on their first turn after placement was finished. This could come into play in schemes with Stockpiling enabled, if a team collected instant utilities after the end of their last turn (e.g., by jumping at the very end of their retreat, such that the jump ended after the retreat ended and resulted in grabbing a crate, or by having an animal grab a crate after the end of their turn). The most bizarre way in which this manifested was with Crate Shower, which would in fact be triggered during manual placement if carried over from the previous round.
[*][DC] If one or more non-delayed instant utilities were present in a team's inventory when starting a turn, it was possible to directly select one of them, on the first frame of that turn. Then, even though all instant utilities would subsequently be automatically consumed and activated, it was possible to "use" the one that had been selected (by pressing Space), even though it was no longer present in the inventory. If it was Damage×2, using it would remove it from the activated-utilities icon bar in the lower-right of the screen (as if toggling it off), but would leave Damage×2 in effect. If it was Crate Spy, using it would both remove it from the activated-utilities icon bar and deactivate it. If it was Double Time or Crate Shower, using it would have no effect.
[*][DC] The v3.7.0.0 feature "When a Double Time crate is collected by an animal, the animal's remaining fuse time is now doubled." had the following bug and flaw:
[*]Bug: It was possible to "double dip". If the team lost its turn before their animal collected the crate, and/or a delay was set for the Double Time utility (which wasn't possible in the scheme format at the time) and the crate fell in a crate shower, the animal's remaining fuse time would still be doubled, but the Double Time crate would not be consumed and would instead be added to the team's inventory, thus doubling the turn time of their next turn.
[*]Flaw: The one-use-per-turn limit (for turn/retreat time doubling) and the one-use-per-animal limit (for animal fuse time doubling) were applied independently.
[/list]Both the bug and flaw have been fixed by changing the logic of this feature. Now, anytime the Double Time instant utility is activated, either by direct collection by a worm, collection by an animal, or by being present in a team's inventory at the beginning of their turn, it will double the remaining fuses of all active animals owned by that team at that moment.
[*][DC] An active crate shower (initiated by a Crate Shower instant utility) blocked pending worm damage and deaths, and forced an Indian Nuclear Test to wait until the crate shower finished before returning the worm that fired it to a normal state.
[*][DC] With BattyRope enabled, inactive worms on Jet Pack, Ninja Rope, or Bungee would be able to collect crates during others' turns.
[*][DC] With BattyRope enabled, the fuel display for any inactive worm on Jet Pack would be hidden if another worm on the same team was currently in retreat. (Strictly speaking this fix doesn't affect the game logic, but it is tied to the logic version so that all players will see the same thing.)
[*][DC] The check making it impossible to use worm selection while the turn timer is paused (e.g. showing pending damage, or during the first shot of a Shotgun or Longbow with "Worm Selection is never cancelled" enabled – see Footnote 7) was only being done at the keyboard input level, not at the game logic level, thus making it possible to circumvent.
[*][DC] Under certain circumstances, using worm selection could override the remembered weapon of the next selected worm. This could happen in either of two ways:
* Start a game with BattyRope enabled. Use a W:A client of v3.7.0.0 or earlier, before the addition of the feature "The game no longer checks for the Tab key being pressed unless the current worm is in worm selection mode, and the key is now checked before all other keys, allowing the selected worm to be moved on the same frame as it is selected." Get on Rope / Bungee / Parachute / Jet Pack. Select "Select Worm", then press Enter and Tab simultaneously. The next selected worm's remembered weapon would be overridden by "Select Worm".
* Start a game with "Worm Selection is never cancelled" and "Weapon use doesn't end turn" enabled (see Footnote 7). Fire only one shot from Shotgun or Longbow, or 1-4 girders from Girder Pack. Press Tab. The next selected worm's remembered weapon would be overridden by the weapon just used.Although the nature of this bug is easier to see with the RubberWorm "Remember weapons" option enabled, it still happens without it, except that the remembered weapon is overridden by a different default weapon (unless Shotgun or Longbow is the one doing the overriding).
[*][DC] With "Worm Selection is never cancelled" enabled, it was possible to fire more than one weapon in a single turn (even with "Weapon use doesn't end turn" disabled – see Footnote 7). This could be done in two ways:
* First, incompletely use a multiple-shot weapon (fire only one shot from Shotgun or Longbow, or 1-4 girders from Girder Pack). Then press Tab and Space simultaneously (Latent bug exposed by a feature in v3.7.2.1) to make the next selected worm fire its default/remembered weapon – or by other means, switch to any worm (even the same one that fired the first weapon, by switching to another worm and back), select any weapon, and fire it. This could only be done once per turn, for a total of two weapons used in a single turn.
* With BattyRope enabled, get on Rope / Bungee / Parachute / Jet Pack with at least one worm, then fire up to 127 weapons in a single frame (optionally selecting a different weapon each time) by doing round-robin worm selection in-between weapon firings.[*][DC] For the purposes of crates releasing sheep when detonated, and Sheep Heaven's effect on crate probabilities, Sheep Launcher crates were not counted as containing sheep.
[*][DC] With "Worm Selection is never cancelled" and "Loss of control doesn't end turn" both enabled (see Footnote 7), it was possible to kill all of one's own worms, with one of them still being temporarily controllable (a zombie worm); at this point, pressing Tab would crash the game, because there would be no worm with nonzero energy to switch to. Pressing Tab in this situation now has no effect. (See Footnote 2.)
[*][DC] Latent bug introduced in v3.6.26.4 and made possible in v3.6.28.0 by RubberWorm: If a worm firing a Ninja Rope repeat shot while "sliding" on a surface (actually bounce-sliding, which can only happen with RubberWorm bounciness enabled) came to a stop before the rope attached, then whichever weapon had been selected would be "fake fired" (used without being fired). With every weapon except for Ninja Rope, Bungee, Parachute, Select Worm, and utilities, this would trigger the beginning of retreat time. With multiple-shot weapons (Shotgun, Longbow, or Girder Pack) this would also display the message "N Shot(s) Remaining", although it was not possible to fire the remaining shot(s). With Shotgun and Longbow, it would additionally force the rope to detach and block all movement for the duration of the retreat. (However, with Select Worm selected, it would actually be fired for real, allowing subsequent worm selection while still on the rope, even without BattyRope enabled – although the rope would be detached when switching to the next worm.)
[/list][/list]
Changes
[*][DC] A DPI-awareness manifest has been added to W:A. On systems running Windows Vista and later, with a custom DPI setting, this prevents W:A's GDI-mode dialog boxes (such as the "Export Video" dialog, and the dialog that acknowledges "Export Log" having finished) from being rendered with a fixed-size font and resampled (which made the text look blurry at DPI settings higher than 100%).
[*][DC] From v3.6.26.4 onward, when a checksum mismatch occurred in an online game, the local checksum and the incorrect remote checksum were both recorded, such that in playback or Export Log it would appear as a "Remote Checksum Mismatch" error. In the case that upon playback, the remote checksum that was incorrect at the time the game was being played is now correct (according to the instance of W:A used for playback), it was displayed as "Remote Checksum Good", a useful feature for analysing the causes for desynchronisations. In v3.6.30.0 a more comprehensive format for recording remote checksum errors was introduced, however, a simple remote checksum error recorded in this format was no longer printed in an informative way (there was no differentiation between a remote checksum that was good or bad according to the instance of W:A doing playback). It is now printed in the same way as the older format ("Remote Checksum Mismatch" / "Remote Checksum Good").
[*][CS] The error message displayed upon failing to load a WormKit module has been improved.
[*][CS] On Windows systems running Windows XP or newer, the default graphics API is now Direct3D 9 (shader), with the alternative fallback renderer being changed to DirectDraw (32-bit). This replaces the first-start suggestion to enable Windows compatibility flags on Windows 8 and newer.
[*][DC] The Export Video dialog box has been rearranged.
[*][DC] When hosting a password-protected game, W:A sent the password to the WormNET server using the &Pwd=string parameter in the HTTP request, resulting in a potential violation of privacy. Now it simply sends &Pwd=1 instead if the game is password-protected, and no &Pwd= parameter otherwise.
[*][DC] There was an unnecessary 1 second pause upon showing the "Please wait... working..." dialog, whenever starting a game from the front end.
[*][DC] W:A no longer shows a warning if it has been run "as administrator", because the bugs that happened in this situation have been fixed.
[*][DC] In v3.6.19.7, a bug was fixed in which the text cursor of a combo box wasn't properly updated when selecting a different item in the drop-down list. The fix was to always move the cursor to the end of the text in the combo box upon closing the drop-down list. This fix ignored the fact that if the list is opened and closed without selecting a different item, the best behaviour would be to keep the text cursor where it was; this is what is now done.
[*][DC] Display mode changes are now avoided in some additional cases. If the desktop resolution, front end resolution (640×480), and in-game resolution are all different, then this can potentially prevent the monitor from blanking out for a period of time while changing modes.
[*][DC] When starting a game from the front end with a Direct3D 9 renderer in use, W:A no longer switches to the desktop's video mode before switching to the in-game video mode. (Note that with a DirectDraw renderer in use, this was already the behaviour since v3.5 Beta 1.)
[*][DC] When exiting from a game and returning to the front end with a DirectDraw or Direct3D 9 renderer in use, W:A no longer switches to the desktop's video mode before switching back to the front end's video mode.
[/list][*][DC] The Direct3D 9 renderers no longer explicitly release and recreate the Direct3D 9 device upon restoring from a minimised state.
[*][DC] The DirectDraw renderer no longer has a frame rate limit. (In v3.6.31.2b, a frame rate limitation of 100 fps was added; in v3.7.0.0 the limit was changed to 125 fps. The Direct3D renderers added in v3.7.0.0 never had a frame rate limitation.)
[*][DC] The Windows Application Compatibility setting (Layer_ForceDirectDrawEmulation) has been removed from the Advanced Options menu, as it is no longer needed to get any renderer to work properly under any version of Windows. For those who had enabled this in previous versions of W:A, it is recommended that you disable it using a version of W:A that still had the option in its interface.
[*][DC] Double-clicking the chat message history box in the LAN Lobby no longer clears the view of the chat history. This was a confusing and not very useful feature, and interfered with double-clicking on hyperlinks (starting when the feature "Web and E-mail URLs are now automatically parsed and converted to hyperlinks in message histories" was added in v3.6.30.0).
[*][DC] Controls such as buttons and input forms of pop-up windows (e.g. Export Video and Playback At) will now use the system style instead of being forced to the classic style (Win2000-like). Also, in all Windows versions they now use the default dialog font instead of forcing use of MS Sans Serif.[/list]
Deadcode:
[*][DC] The door that covers the special weapons in the Weapon Editor has been repalettised and now looks slightly better than before.
[*][DC] The country code mappings have been updated to include codes that weren't in the original mapping implemented in v3.6.19.7. This maps the location code in the registry (HKEY_CURRENT_USER\Control Panel\International\Geo, which can be set from Control Panel: Regional and Language Options: Location) to ISO 3166-1 Alpha-2 codes. Note that this change does not mean there are any new country flags displayed by W:A, just that the potential to add country flags for the new locations has been added.
[*][DC] The "custom.img" temporary file is no longer created or used.
[*][DC] Address space layout randomisation (ASLR) has been enabled, to mitigate possible undiscovered buffer overflow security vulnerabilities. This option, supported by Windows Vista and later, causes memory layout to be randomised. Some existing WormKit modules may need to be patched/rereleased to account for this.
[*][DC] The in-game clipboard paste feature, added in v3.6.28.0, blocked keyboard repeat on the paste hotkeys Ctrl+V and Shift+Insert. Keyboard repeat now works on these hotkeys, keeping consistency with the rest of the UI.
[*][DC] When loading .CUS maps (colour maps that were saved using v3.5 Beta 1/2/3pre1), the cavern roof flag in the header is now obeyed, rather than detecting it from the top 8 pixel rows of the map.
[*][DC] Commands typed in the in-game chat panel are now case-insensitive; for example, /afk, /AFK, /AfK, /msg, /Msg, and /MSG will all work. (Previously, in-game commands were only accepted in lowercase.)
[*][DC] The behaviour of the OK / Exit and Cancel buttons, and the Escape key, is now consistent and sensible in the Scheme Options and Weapon Options screens.
[*]When changes have been made, the Exit button becomes an OK button.
[*]Pressing Escape presents the user with the option to save changes and exit, discard changes and exit, or cancel the exit. This behaviour had already been present in the Weapons Options screen, but is now in the Scheme Options screen as well, and has been given a message that more intuitively describes what Yes, No, and Cancel do (and as a side effect, the effects of Yes and No have been inverted).
[*]To a lesser extent, the Options menu, Advanced Options screen, and Team Editor have also been made more consistent. The exceptions are that the Options menu and Team Editor still do not detect whether changes have been made, the Advanced Options screen still does not have a visible Cancel button, and the Escape key behaviour has not been changed in any of these screens to match its new behaviour in the Scheme Options and Weapon Options screens.
[/list][*][DC] In front end dialog boxes with a Yes button, the Enter key now acts as clicking Yes, and in ones with a No button but no Cancel button, pressing Escape acts as clicking No.
[*][DC] The team list in the Host/Join screen is now sorted the same as it is in the Offline Multiplayer screen.
[*][DC] The Force Wine virtual desktop option has been removed, as it is no longer needed for running W:A under Wine. If running W:A under a virtual desktop is still desired (e.g. to experiment with using the DirectDraw (8-bit) renderer), it is still possible to do so, either by enabling the "Emulate a virtual desktop" checkbox in winecfg (and closing all instances of wine that were open at the time this setting was changed), or by launching W:A with the command line “wine explorer "/desktop=640x480,Worms Armageddon" [WA.exe's full command-line]” instead of just “wine [WA.exe's full command-line]”.
[*][DC] The centering, alignment, and spacing of front end controls (buttons, text, edit boxes, group-boxes, etc.) have been improved in all dialog boxes and screens.
[*][CS] The </CENTER> close tag is now correctly handled when parsing HTML.
[*][DC] Schemes saved in .WSC format and replay files saved in .WAgame format had different rules for deciding what scheme-version byte value (1 or 2, corresponding to a scheme data size in bytes of 221 or 297, respectively) to use. When saving in .WSC format, the determination was made based on what version of W:A would be needed to correctly interpret all settings in the scheme. When saving into .WAgame format, the determination was made based on which scheme format could contain all the settings used. Both formats are now saved using the latter rules. This may result in some .WSC files that were sized 297 bytes when saved with a W:A version earlier than 3.8, but which when loaded and then resaved using W:A v3.8 or later, will become 221 bytes in size, losslessly.
[*][DC] The game will now display the string NET_CONNECTIONDELAYED when connecting to a hosted game takes at least 5 seconds. This string explains that the connection is taking a while, and gives some rudimentary advice as to what may be causing the problem.
[*][CS] Scheme files with a mismatching file size will now no longer be hidden from scheme selection dropdowns. Instead, an error message will be displayed when attempting to load them.
[*][CS] The background debris graphics in the front end is now animated at a constant speed, regardless of the vertical sync settings and frame rate.
[*][DC] The text cursor (caret) in the front end is now animated at a constant speed, regardless of the vertical sync settings and frame rate.
[*][DC] The water graphics in the Map Editor are now animated at a constant speed, regardless of the vertical sync settings and frame rate.
[*][DC] Code has been added to correctly emulate the v3.7.2.2 build released on Steam, whose version numbering intersected with internal alpha builds of the game developed independently.
[*][DC] Fonts in the front end which were previously completely non-antialiased (rendered with a single solid color) are now antialiased. This is done dynamically, adapting to the current palette, and is recalculated every time the palette changes, for every font that was not previously antialiased. As such, it may conceivably cause a slight slowdown in some circumstances, and has been made optional; to disable or enable it, use the FrontendFontDynamicAntialiasing_Off.reg or FrontendFontDynamicAntialiasing_On.reg registry tweaks, respectively. It defaults to being enabled.
[*][DC] In the Network Join screen, if the last scheme received from the host is invalid, this condition will now be shown (analogously to how an invalid map is shown). The host's player name will be crosshatched in red in the player list, and the scheme name will be displayed in red.
[*][DC] If a client in the network game lobby (Join/Next Round/End of Match) receives a signal to start the game that is either malformed, or occurs after receiving an invalid or incomplete map or scheme (which wasn't subsequently alleviated by valid and complete reception of whatever was invalid), the game will now be disconnected, and an appropriate error message will be shown. This avoids what would previously happen in this circumstance, i.e. starting a game that was likely to instantly desynchronise, and creating a potentially invalid replay file.
[*][DC] Deleting a scheme file no longer reverts to "[ Intermediate ]", but rather, retains the scheme file's loaded settings.
[*][DC] When saving a map, the Map Editor assumed that anything after the last "." in a typed filename was an file extension. Any such extension found would be deleted and replaced with the correct extension (corresponding to the current map type, .LEV, .BIT, or .PNG). Now, only supported map file extensions (.LEV, .BIT, .IMG, .CUS, .PNG, and .dat) will be detected, case insensitively, as file extensions to be deleted before the correct extension is appended, and anything else will be treated as a literal part of the filename.
[*][CS] On operating systems where 8-bit DirectDraw is known to be emulated in software (i.e. Windows 8 and newer), it is no longer selectable on the Advanced Options screen.
[*][DC] In the Steam version, the Steam overlay is now told to place itself at the upper-right corner (instead of the lower-right as was the default), to minimize its obstruction of in-game UI elements.
[*][CS] The camera lock feature (activated by pressing Scroll Lock) now no longer resets at the beginning of a local player's turn, i.e., it now always behaves like Shift + Scroll Lock (introduced in v3.6.29.0). Pressing Shift + Scroll Lock now has no additional effect on top of pressing Scroll Lock, though pressing Ctrl + Shift + Scroll Lock can still be useful to activate the camera lock mode which ignores mouse movement on systems where Ctrl + Scroll Lock by itself generates a Break keypress.
[*][DC] Changes affecting game logic
[*][DC] It is now possible to set a weapon/utility to have zero ammo and nonzero delay. Previously, the game would automatically set the delay to zero on anything with zero ammo.
[*]Note, this changes the behaviour of team special weapons. Previously, any special weapon that was not a particular team's special weapon could appear in a crate on that team's turn. Any team collecting that crate would then be able to use it without delay, if it was not that team's special weapon. Now, the default delays of special weapons apply to all teams, and no special weapon can appear in a crate until its delay has expired.
[/list][*][DC] It is now possible to use the Tab key to switch worms while the mouse cursor is enabled for a homing weapon, strike, girder, or teleport. This only makes a difference if such a weapon has the "Remember as Default" property (currently only possible with the RubberWorm "Remember weapons" option enabled), and/or the "Worm Selection is never cancelled" option is enabled (see Footnote 7). (Strictly speaking this change doesn't affect the game logic, but it is tied to the logic version for fairness.)
[*][DC] During Super/Aqua Sheep flight, it is now possible to press T to display a thought bubble, and Tab to switch worms (with "Worm Selection is never cancelled" enabled – see Footnote 7). (Strictly speaking this change doesn't affect the game logic, but it is tied to the logic version for fairness.)
[*][DC] The Laser Sight is no longer hidden while a gun is being fired or the turn timer is paused. Since guns can be reaimed while firing (in most circumstances), and the player can plan their move while the turn timer is paused, this makes the Laser Sight utility a bit more useful than it previously was. (Strictly speaking this change doesn't affect the game logic, but it is tied to the logic version for fairness.)
[*][DC] With "Weapon use doesn't end turn" disabled (the default; see Footnote 7), if using Scales of Justice results in the death of inactive worm(s) on Rope or Jet Pack that are nonmoving (in the case of rope, that means perfectly vertical) and resting on land, the transition stripping those worm(s) of Rope or Jet Pack is now animated differently (the same as it was already done with "Weapon use doesn't end turn" enabled); instead of a sudden transition to the worm falling and then standing, the rope is now simply removed, and Jet Pack is dismounted.
[*][CS,DC] When many worms attached to a Ninja Rope were against the floor or a wall (such as due to Batty Ropes being enabled), sounds were getting cut off due to the WormLanding.wav sound effect being played frequently at a low volume. It is now played at the lowest priority (same priority as object-on-object collision sounds) in this case, disallowing it from displacing most other sounds. (Strictly speaking this change doesn't affect the game logic, but it is tied to the logic version so that all players hear the same thing.)
[*][DC] The behaviour of the Sheep Launcher has been changed:
[*]New behaviour: The Sheep Launcher (after being fired) is always detonated by a single press of Space. It can collect crates while staying in launcher mode, and doesn't have to directly hit them to collect them – it can collect one merely by passing by it with sufficient proximity, just like a land-walking sheep or a Super Sheep. It only switches to land-walking sheep mode if it hits the terrain, a worm, or an oildrum.
[*]Original behaviour: If Space was pressed while the launcher was still in mid-air before hitting anything, it would change its sprite to a land-walking sheep (still wearing the helmet), while otherwise behaving virtually identically to how it did while in launcher mode. It would then take an additional press of Space to make it explode. Directly hitting a crate while in launcher mode would automatically change it to a land-walking sheep, just like pressing Space, at which point it would collect the crate. Only after changing to land-walking sheep mode would it be able to collect crates, and only then would it be able to do so by mere proximity.
[/list]In order to allow players' muscle memory to adapt optimally to this change, when W:A v3.8 and later is emulating older game logic versions, a single press of Space by the local player will still immediately detonate the Sheep Launcher (although if it was in launcher mode, the detonation will happen one frame later than it would with v3.8 game logic). However, the behaviours of automatically changing to a land-walking sheep to collect crates, and not being able to collect them by mere proximity in launcher mode, will remain in effect.
[/list][/list]
Features
[*][DC] Most in-game motion and animations are now rendered at the hardware refresh rate, rather than being locked to 50 Hz as before. The game engine still runs at 50 Hz, so "tweening" is used to accomplish this. As a result, most in-game motion that used to appear somewhat jerky will now look quite smooth. (Note, tweening of animations is still limited by the number of pre-rendered frames in Gfx.dir. The difference is that now, the available frames are used as effectively as possible.)
[*]The "frame rate divider" value for Export Video has been replaced with "frames per second", which can now be given any positive integer value, regardless of whether or not it is a divisor or multiple of 50 fps. Likewise, the FPS-divider argument to /getvideo has been replaced with an FPS argument.
[*]Export Video will now work its way through the replay file as fast as it can, instead of defaulting to 1× playback speed – so for the best speed possible, disable "Wait for vertical sync" and "Assisted vertical sync". Playback speed will not be changed in response to the 1-9 keys, but the single-step key S can now be used, and will advance by one exported video frame, not one game logic frame. Subsequently pressing 1-9 after S will resume maximum-speed Export Video.
[/list][/list][*][DC] When loading its water graphics, the game now first tries to load DATA\Gfx\Water.dir, which is a re-rendered version of the original blue water waves – using the same algorithm, but antialiased and animated at a much higher framerate, to make it look good in super-slow-motion playback. If that file is not found, the game falls back to loading the original rendering of blue water waves, Data\Water\Blue\Water.dir (on CD-ROM if running the CD Edition).
[*][CS] Hardware rendering is now available for 8-bit DirectDraw. When enabled, graphics performance should be very close to W:A versions before 3.6.31.2b. An additional hardware rendering option, Use VRAM, has also been added. (Note: Because DirectDraw is emulated in newer Windows versions, this feature is only available on Windows 7 and older.)
[*][DC] It is now possible to save a snapshot of the current map in-game. The map is saved in its current destroyed/augmented state, with the water level set to its precise current level. There are two ways to do this: One is to press Alt+Pause, and the other is to enter /map in the chat panel (synonyms of this command are /mapshot, /snapmap, /savemap, and /getmap).
[*]Map snapshots are saved in the User\SavedLevels\Capture folder. In order to facilitate using this folder, it is sorted before all other folders.
[*]In order to save the precise water level while keeping the map format backwards-compatible, the water level is written in such a way that in most cases, versions of W:A prior to v3.8 will not be able to preserve the exact water level when opening the file in the Map Editor; however, versions as early as v3.6.28.0 will be able to preserve the exact water level when receiving the map over the network, and when playing back replay files.
[*]When saving a snapshot of a map in which indestructible borders are enabled, the exact state of the portion of the borders that is currently underwater will not be preserved if the water level has risen since the game round started, due to the fact that the initial water height preserves the submerged borders, but subsequent rising of water erases the borders.
[/list][*][DC] W:A now handles it more gracefully if Gfx.dir, Gfx0.dir, and/or Gfx1.dir are missing from the DATA\Gfx directory. It will fall back on whichever one exists, in order of preference.
[*][DC] A file named GfxC-3.0.dir has been added to the DATA\Gfx directory. This is a small file containing only the necessary bitmaps (Longbow arrows, Girders, and masks) for emulating versions earlier than v3.6.22.0 and no earlier than v3.0. It is now possible to delete Gfx.dir without losing any functionality (unless the ability to run old EXEs from the same W:A installation is desired).
[*][DC] When the /register parameter is combined with /nowk or /wk, this is now incorporated into the command line of the registered associations.[/list]
Deadcode:
[*][DC] The R key now functions during instant replays, restarting the replay from its beginning (or the current "bookmark" position, if one was created using the M key during the playback of that instant replay).
[*][DC] Leading zeroes in the instant replay countdown timer's digital number font are now darkened.
[*][DC] This version of W:A can now emulate and interoperate with W:A v1.0. It is possible for an online game to have mixture of v1.0 and v3.7.2.20+ users, and it doesn't matter who is hosting.
[*]A file named GfxC-1.0.dir has been added to the DATA\Gfx directory. This is a small file containing only the necessary bitmaps (Longbow arrows, Girders, and masks) for emulating W:A v1.0 without needing to keep a copy of the entire v1.0 Gfx.dir.
[*]Note, W:A v1.0 applies terrain textures just like v3.0, but unlike v3.0, it allows the "Tools" texture to be used.
[*]When loading a .BIT or .LEV with a date stamp earlier than the release date of the W:A v3.0 patch on 1999.04.23, the file will be assumed to have been saved by W:A v1.0.
[/list][*][DC] Mouse wheel support in the front end has been made comprehensive. All controls that were previously not affected by the mouse wheel, and should have been, now are. Also, mouse wheel input now goes to the control over which the mouse cursor is hovering, rather than to the control that has keyboard focus.
[*][DC] When doing playback or Export Log on a replay of an online game created by v3.6.19.17-v3.6.25.1a, "Checksum Missing" errors that were caused by a Remote Checksum Mismatch are now noted as such. (Before v3.6.26.1, checksums during remote players' turns were only recorded when the remote checksum agreed with the local checksum.)
[*][DC] It is now possible to do Export Log on a batch of multiple replay files. This is currently only possible using the command line:
/getlogs Path\To\filename-pattern.WAgame [/sort=num] [/from filename.WAgame]
The meaning of each parameter is as follows:
[*]Path\To\filename-pattern.WAgame – The path to the files cannot contain any wildcards. The filename pattern can use a wildcard pattern in "glob" syntax, where * matches any number of characters including none, and ? matches any single character. If no wildcard characters are used, only one file will be processed if it exists.
[*]/sort=num – Sorts the file list numerically, e.g. processing match.12.WAgame before match.111.WAgame, instead of the default (which is a case-insensitive ASCII sort)
[*]/from filename.WAgame – Skips over all files in the sorted list until filename.WAgame is reached, and then start the batch Export Log from that point onward. This is meant to be used to continue a previous batch Export Log operation that was interrupted before finishing. It must be used with the exact same combination of /getlog and /sort= parameter(s) as the previous run(s), to behave as intended.
[/list]Batch Export Log is currently single-threaded, but multithreading is planned for a future update. Note that while batch Export Log is running, you cannot safely start a new game of W:A or launch a replay playback or Export Log session, due to shared temporary files related to map loading/initialization. This will be fixed in a future update; for now it is still possible to do this safely, by hitting Pause in the Batch Export Log window (it is important to do this while the counter is counting forward from a non-00:00:00 position, because otherwise map initialization might be in progress), launching the other replay or game, and then unpausing Batch Export Log by hitting any key with that window in focus.
[*][DC] The in-game menu that is opened by pressing Esc now remembers your mouse cursor position after being closed. (It is still reset to a centred position at the beginning of each round, however.)
[*][DC] When doing playback / Export Log of an online game replay file created by v3.6.29.24 or later, a checksum that was spurious from the perspective of the local player at the time of recording, but is no longer spurious at the time of playback (due to a difference in game logic or initial state), is now printed as such.
[*][CS,DC] There is now a button on the Advanced Options screen to associate W:A with .WAgame files and the wa:// URL. When appropriate, an elevated WA.exe will be spawned in order to write to protected Windows Registry locations.
[*][DC] It is now possible to take screenshots with transparency. This can be enabled or disabled using the CaptureTransparentPNGs_On.reg and CaptureTransparentPNGs_Off.reg registry tweaks, respectively. This applies both to screenshots taken using the Pause key and to video frames captured using the Export Video feature. Note that transparent areas only exist when all background detail is turned off.
[*][DC] The number of pixels the mouse must be moved within a single frame to temporarily unlock the camera (yielding manual camera control until the mouse has been idle for at least 2 seconds of game time) is now configurable via a registry value. It can also be disabled or set to the default value using the CameraUnlockMouseSpeed_Minimum.reg and CameraUnlockMouseSpeed_Default.reg registry tweaks, respectively.
[*][DC] All options in the Export Video dialog box except for "Start at" and "End at" are now remembered.
[*][DC] The /open command now optionally allows a host to change the game name and password when reopening the game, by popping up a dialog box allowing them to be changed.
[*][DC] The Weapon Editor now provides access to editing the ammo and delay of the Damage×2 utility, which until now was inaccessible in the front end and only editable externally.
[*][DC] A third state has been added to the "Legacy utility key" option (LegacyUtilityKey_Both.reg), in which both keybindings are enabled simultaneously.
[*][DC] W:A can now be used in windowed mode, with all renderers (except for 8-bit DirectDraw with hardware rendering). (Special thanks to StepS for lots of research and testing contributing to this feature.)
[*]To enable or disable this, toggle the Windowed mode checkbox in Advanced Options, or use the WindowedMode_On.reg and WindowedMode_Off.reg registry tweaks.
[*]Note that although 8-bit DirectDraw works in windowed mode, part of its palette will be incorrect.
[*]When in-game, the mouse can be in either a grabbed or ungrabbed state. In the grabbed state, the Windows mouse cursor is hidden, and the mouse and keyboard control the game as if it were full-screen. In the ungrabbed state, the Windows mouse cursor is visible, and it along with the keyboard can be used to move the window, open the system menu, etc., but not to control the game in any way. To switch from the grabbed state to the ungrabbed state, press Ctrl+G, or do anything that takes focus away from W:A (such as using Alt+Tab to switch to a different application). To go back to the grabbed state, either click inside the client region of the W:A window, or restore focus to W:A from an unfocused state by some means other than clicking directly on it (such as using Alt+Tab or clicking W:A's taskbar button).
[/list][*][DC] The file open dialog box used by the Map Editor's Import function now allows opening a file by double-clicking it.
[*][DC] Assisted vertical sync is now supported by all renderers.
[*][DC] The "browser back" buttons on mice and keyboards will now act like the ESC key in the front end, exiting the current dialog/screen.
[*][CS,DC] An option has been added to use OpenGL rendering.
[*][DC] It is now possible to start an offline game with CPU teams only, and no human teams present, pitting the CPU to play against itself.
[*][DC] It is now possible for transitions between the front end and game play to occur in the background while minimised. Previously (from v3.6.30.0 onward), the game always paused during such a switch if it was minimised, and required the user to manually restore W:A before allowing the switch to happen. (In v3.5 Beta 1 through v3.6.29.0, W:A automatically restored itself, stealing focus.)
[*][DC] The AFK (Away From Keyboard) mode (activated by entering /afk or /away in the chat) now works while minimised, and multiple rounds and matches can go by with no user intervention while staying minimised.
[/list][*][DC] The /url command can now be used by a host who is using WormNAT2. This is accomplished by exporting a function from WA.exe (see Footnote 5).
[*][DC] Some files are now preallocated on disk to prevent fragmentation, speeding up their access on hard drives. Currently, this is only done for the temporary file containing the current game's decompressed map (data\land.dat).
[*][DC] In the circumstances where W:A prints to a console window (currently just for /getlog and /repair), it now detects whether stdout is a valid handle, and if it is, it prints to stdout instead of opening a new console window. To make WA.exe behave like a console app from the command line, you can pipe it through "cat" (which must be installed, e.g. from UnxUtils or Cygwin) by appending "|cat" at the end of the command line.
[*][DC] Flags have been added for Vietnam and Kyrgyzstan, and the flag for Iraq has been updated. The flags for Finland, Colombia, Ecuador, and Venezuela have been edited.
[*][DC] Every time a .LEV style map is generated, a corresponding SVG (Scalable Vector Graphics) file is now automatically written, with the filename DATA\landgen.svg.
[*][DC] Six Turkish characters have been added to W:A's font set: ĞğŞşİı
[*][DC] The game has been fully translated to Finnish by Juho Toivanen.
[*][CS,DC] An option to display timestamps (in local time) in front end and in-game chat logs has been added. Currently, this can be enabled by using the TimestampFormat_HMS.reg registry tweak for 24-hour time of day timestamps, and disabled using the TimestampFormat_None.reg tweak. The exact format can be customized by editing the TimestampFormat registry option, the syntax of which is that of the C strftime function. Currently, timestamps are only available for live games, and will not be displayed when playing back replay files.
[*][DC] In the Steam version, W:A will now use the Steam persona name, instead of the system username, as the default nickname.
[*][DC] It is now possible to play on maps up to the maximum size of 32504×32600 (whereas before, only the width or height could be maximum, but not both), as long as the system supports Large Address Awareness and enough memory is available.
[*][DC] It is now easily possible to enter automatic turn-skipping mode in an offline game, by entering /afk or /away in the chat. Previously, this could only be done by pressing Enter and PageUp simultaneously after typing the command.
[*][DC] It is now possible to toggle the displaying of extra information during replay playback that would normally be hidden in a live game. This is toggled by pressing Shift+Alt+Delete in-game.
Display of the following information is toggled:
[*]Crate contents
[*]Hundredths of a second in turn time and retreat time
[*]Mine fuses and duds
[*]Full-time, full-precision display of weapon fuses
[/list]Display of the following is not controlled by this toggle:
[*]Allied chat
[*]Invisible worms
[*]Weapon panel for all alliances
[/list][*][DC] In the Map Editor, it is now possible to automatically view the color preview (or large map thumbnail) while cycling through randomly generated maps via a map thumbnail. To do this, hold the right mouse button while cycling through maps on the map thumbnail (either by clicking, Shift+clicking, or using the mouse wheel, while the mouse is hovering over a map thumbnail). This will have the same effect as right-clicking the map thumbnail immediately after switching to each different map.
[*][DC] It is now possible to have W:A play sound effects while it is in the background. To set this option, use the "Play audio in background" checkbox in the Advanced Options screen, or use the PlayAudioInBackground_Enable.reg and PlayAudioInBackground_Disable.reg registry tweaks. Even with this option enabled, ambient sounds (front end menu loop and in-game ambient music) will still be disabled while W:A is in the background.
[*][DC] The number of the currently selected mission is now visible in the Mission screen. So as not to be overly intrusive, it is displayed in the heading of the "Mission Details" box.
[*][DC] A "Streaming Mode" option has been added. It is intended to be used when broadcasting streaming video of W:A. When enabled, it prevents the IP address from being shown on-screen while joining an online game, prevents the /url command from displaying the URL on-screen, and puts both address and both port fields of the Network Configuration screen in password-entry mode. To set this option, use the StreamingMode_On.reg and StreamingMode_Off.reg registry tweaks prior to starting W:A, or use the /stream command in the WormNET lobby, LAN lobby, or Host/Join/Next Round/End of Match lobby.
[*][DC] It is now possible for the host in an online game to add CPU teams. The game will only be allowed to start if all clients present support this feature.
[*][DC] It is now possible to change the "controller" setting (Human / CPU 1-5) when editing a team, whereas before it was only possible to edit this setting when creating a team.
[*][DC] It is now possible to select and copy text into the clipboard from the next-round and end-of-match screens' Results, Awards, and Details text boxes.
[*][DC] The exact value of the Hot Seat time is now precisely displayed in the front end and can be fine-tuned. To adjust it in increments of 1 second, hold the Shift key while left- or right-clicking to increase or decrease the value. Without Shift being held, this setting will cycle through the values 0, 5, 10, and 15, the same as it used to.
[*][CS] WormNET servers can now specify an IRC port for the game to connect to in the <CONNECT> tag. The syntax is <CONNECT HOST:PORT> (for example: <CONNECT 192.168.0.1:9999>). Previous versions of W:A only allowed connecting to the standard IRC port, 6667.
[*][DC] During replay file playback, the Sudden Death timer is now shown precisely, with hundredths of a second. Note that it is rounded up at the beginning of every turn.
[*][DC,CS] W:A now has a new scheme format, supporting the tweaking of many extended options, some that were previously internal, and some that have been newly implemented. Access to a limited subset of these options was previously opened up by a third-party module called "RubberWorm", and earlier versions of W:A had bundled some subsets of options in the form of the TestStuff, RacingStuff and BoomRacing hosting options, but the options are now all individually accessible. The options come in a range of types:
[*]Boolean – true or false. Accessed via a checkbox.
[*]Three-way boolean – true, false, or default. Accessed via a checkbox. The "default" state is shown as greyed-out square in the checkbox, and signals that the actual state (true or false) shall be determined from the game logic version.
[*]Enumeration – a limited range of values that mean different things. Accessed via a drop-down list.
[*]Integer – a whole number. The range varies depending on the option. Some options allow negative values.
[*]Fixed-point – has an integer part ranging at most from -32768 to +32767, and a fractional part ranging from 0/65536 to 65535/65536 in 1/65536 increments. The numbers are edited in the UI in decimal form, e.g. 0.00000, 0.00002, 0.00003, ..., 0.99998, 1.00000, ... , 32767.99998. Note that although the game engine tends to round fixed-point values down, the choice was made to round to nearest in the extended scheme editor UI; as a result, many default values are 9-padded (such as 0.24 becoming 0.23999).
[/list]The button used to access these options indicates whether any have been modified from default without the need to enter the screen, and when viewing the options themselves, each individual one indicates whether it has been modified from default, and can be reset to default by clicking that indicator. The options are:
[*]Physics
[*]Wind can be adjusted, either as the maximum strength randomised wind shall have, or as a constant strength the wind shall have on every turn. In randomised wind mode, the wind bias may be adjusted; this determines how much of an effect the horizontal distance from the map's center of the worm receiving a turn has on biasing the wind to blow in the opposite direction.
[*]Gravity can be adjusted, in fixed-point units, where the default is 0.23999 pixels per frame of acceleration every frame (a frame is 1/50 seconds).
[*]Terrain friction can be adjusted with high precision, in fixed-point units. The default is 0.95999. A value of 1.00000 yields no friction, and 0.00000 makes objects instantly stop whenever they would normally slide.
[*]Rope knocking power can be adjusted as a percentage, optionally overriding the channel or offline value. (The units are the same as in the OfflineRopeKnocking registry tweak.)[/list][/list][/list]
Deadcode:
[*][DC,CS] New scheme format (continued)
[*]Physics (continued)
[*]Phased Worms – Controls to what extent allied and/or unallied worms move through and cannot affect each other. There are two settings, Phased Allies, which controls worms' effects on their teammates, and Phased Enemies, which controls worms' effects on their opponents. Each of these can be set to one of four values:
[*]Off – default behaviour; worms block other worms, and their weapons both hit other worms and damage them.
[*]Worms – worms pass through other worms, but their weapons still hit them and damage them.
[*]Worms+Weapons – worms pass through other worms; their weapons also pass through other worms, but when a weapon explodes, its damage still effects those other worms.
[*]Worms+Weapons+Damage – worms have no influence on other worms whatsoever, with some exceptions (see Footnote 6).
[/list][*]Explosions push all objects (checkbox)
[*]Pneumatic Drill Modification (checkbox) – controls whether the Drill imparts horizontal velocity to worms it hits.
[*]Petrol Turn Decay (fixed-point) – precisely controls the per-turn rate at which the persistent flames from a Petrol Bomb shrink and eventually disappear. The resulting number of turns for which flames last can go from 1 to 65535, with all values from 1 to 257 being precisely specifiable (beyond that point there are some gaps).
[*]Petrol Touch Decay – controls the rate at which persistent flames from a Petrol Bomb shrink and eventually disappear every time a worm touches them (damaging that worm).
[*]Maximum flamelet count – The maximum number of individual fire objects (from Petrol, Napalm, or certain explosions) that can exist at once. Once this limit is reached, creation of new flamelets will erase older flamelets.
[*]Maximum projectile speed (fixed-point) – The maximum horizontal and vertical velocity at which an object following projectile physics can move, in pixels per frame. A value of zero disables the limit. The default is 32.
[*]Maximum rope speed (fixed-point) – The maximum speed at which a worm with a Ninja Rope or Bungee attached can move, in pixels per frame. A value of zero disables the limit. The default is 16.
[*]Maximum Jet Pack speed (fixed-point) – The maximum horizontal and vertical velocity at which a worm using the Jet Pack can move, in pixels per frame. A value of zero disables the limit. The default is 5.
[/list][*]Gameplay (note that the distinction between “Physics” and “Gameplay” is a bit arbitrary, and mainly exists to divide the settings into different pages)
[*]No-crate Probability – Edited in the Game Options screen, not Extended Game Options. Can be enabled or disabled by clicking its icon (a parachuting crate with a red "X" over it). When enabled, allows the per-turn probability of no crate falling to be directly controlled. It has the same units as the Weapon, Utility, and Health crate probability controls that are above it in the Game Options screen, e.g. if all are set to 10%, there will be an equal probability of any four occurrences (25% chance of a weapon crate falling, a utility crate falling, a health crate falling, or no crate falling) on any given turn. When disabled (the default), the original three crate probability controls act as they did before – the no-crate probability is equal to the number of empty squares in whichever of the three crate probability settings are set to any nonzero value (which means that the only way to make a crate drop on every turn is to set each probability to either 0% or 100%).
[*]Unrestrict Rope (checkbox) – Allows firing the rope 54 degrees below the horizon, and reduces rope friction/drag. Default off.
[*]Maximum crate count on map at once – The game will not spawn crates when doing so would exceed this limit. The default is 5.
[*]Sudden Death disables Worm Select (checkbox) – Normally, Worm Select is unavailable after Sudden Death, but you can disable that behaviour here.
[*]Sudden Death worm damage per turn – How many health points Worms lose during each turn of Sudden Death.
[*]Batty Rope (checkbox) – After the end of their turns, worms with a Ninja Rope attached will remain attached, those using Bungee will stay on it, and those using Jet Pack will keep it equipped. Default off.
[*]Rope-roll drops – Whether dropping weapons (using the Enter key) during a rope roll (in-between Ninja Rope swings or after Bungee detachment) is allowed.
[*]Disabled – The default. While on the Ninja Rope, weapons can only be triggered while the rope is attached, and not during a rope roll.
[*]As from rope only – Weapons that would normally be usable while the rope is attached are also usable during a rope roll.
[*]As from rope or jump – Same as "As from rope only", except that weapons that would normally be usable during a jump are also usable during a rope roll.
[/list][*]X-Impact loss of control (checkbox) – Whether a horizontal collision (skid or wall hit) at a high horizontal velocity causes loss of control. Default on.
[*]Keep control after bumping head (checkbox) – Whether control is retained after an upwards vertical collision with terrain during Ninja Rope or Bungee use. Default off.
[*]Keep control after skimming – Whether control is retained after a skim (collision with water at a high horizontal velocity) during Ninja Rope or Bungee use, and if so, whether the ability to reshoot the Ninja Rope is retained.
[*]Lose control – default behaviour.
[*]Keep control – keep control, but lose the ability to reshoot the Ninja Rope.
[*]Keep control and rope – keep control, and retain the ability to reshoot the Ninja Rope, if that was the type of rope in use.
[/list][*]Fall damage is triggered by explosions (checkbox) – Normally, Worms thrown by explosions do not experience fall damage, unless they experience horizontal collision(s) before hitting the ground. This setting enables fall damage (in addition to whatever damage caused by the explosion itself) even in the absence of any horizontal collisions.
[*]Undetermined Crates (checkbox) – Determines the contents of weapon and utility crates at the moment when the crate is picked up (or a player activates Crate Spy), instead of when the crate is created. The default is for this to be determined by the game logic version (disabled for v3.6.28.0 and older, enabled for v3.6.29.0 and newer). It should only be disabled when all players trust each other not to secretly use information-revealing cheats.
[*]Undetermined Fuses (checkbox) – Determines the fuse of mines (when random mine fuses are enabled) at the moment when the mine is triggered, instead of when the mine is created. The default is for this to be determined by the game logic version (disabled for v3.6.28.0 and older, enabled for v3.6.29.0 and newer). It should only be disabled when all players trust each other not to secretly use information-revealing cheats.
[*]Pause timer while firing (checkbox) – Whether the timer is paused while a Worm is firing their weapon. Default on.
[*]Loss of control doesn't end turn (checkbox) – When enabled, events that cause loss of control will still have that effect, but control will eventually be regained without ending the current turn. Default off.
[*]Weapon use doesn't end turn (checkbox) – Allows weapons to be used multiple times in a single turn. Default off.
[*]“Weapon use doesn't end turn” doesn't block any weapons (checkbox) – prevents the Earth Quake, Armageddon, and Indian Nuclear Test weapons from being disabled when “Weapon use doesn't end turn” is enabled. Default off.
[*]Game engine speed (fixed point) – Changes the speed at which all game physics and sound effects occur. Default 1.00000. Will be shown in blue above the game timer if it has a non-default value.
[*]Fractional round timer (checkbox) – Default off.
[*]If disabled, the Sudden Death round timer counts down in whole-number seconds. In a scheme with 1 second turns, the round timer will never count down unless a player misses their turn by not firing a weapon. With 0 second turns, the round timer will never count down under any circumstances, and Sudden Death cannot be reached unless manually triggered.
[*]If enabled, the Sudden Death round timer counts down in fractions of a second. This is especially useful for schemes with 0 or 1 second turns.
[/list][*]Automatic end-of-turn retreat (checkbox) – When enabled, a retreat will be triggered when turn time expires. This is especially useful in "Weapon use doesn't end turn" mode, where retreats aren't possible otherwise. The amount of retreat time depends upon whether the worm is on Rope / Bungee / Parachute / Jet Pack (getting air retreat time) or not (getting land retreat time) when turn time expires. Default off.
[*]Note that in "Weapon use doesn't end turn" mode, enabling this option will allow weapons/animals released during the turn to continue to be controlled after the turn and retreat are both finished. To enable this functionality without giving actual retreat time, enable "Automatic end-of-turn retreat" and set the retreat time to 0.
[/list][*]Health crates cure poison – Controls what happens to poisoned worms when a health crate is collected:
[*]Don't cure – Health crates have no effect on poison.
[*]Cure collecting worm – Cures the worm that collected the health crate, or if an animal collected it, cures the worm that released the animal.
[*]Cure all worms in team – Cures all worms in the team that collected the health crate, but not other teams allied to that team. Default behaviour.
[*]Cure all allied worms – Cures all worms in all teams allied to the team that collected the health crate.
[/list][*]Sheep Heaven's gate – Controls what happens if the existing Sheep Heaven "cheat" option is enabled, acting as a gate that only allows the desired effects through. (As such, it has no effect if Sheep Heaven is not enabled.) Any non-empty combination of the following three options may be chosen (the default is all three together):
[*]explode – Causes all crates (not just ones containing sheep-themed weapons) to release a sheep upon exploding, which then explodes on impact
[*]fuse – Extends the fuse time of Super Sheep, Aqua Sheep, and Sheep Launcher to a number large enough that it should never run out in practice (100,000 seconds).
[*]odds – Causes crates to contain sheep more often, by boosting the crate probability of sheep-themed weapons to 400% (where 100% is the maximum that can be set in the Weapon Editor). In v3.8 and later, the sheep superweapon (French Sheep Strike) is also boosted, to 4 times the probability of all other superweapons.
[/list][*]Conserve instant utilities (checkbox) – Default off. When enabled, this causes instant utilities to be consumed one at a time instead of all at once, behaving as follows:
[*]Damage×2 and Crate Shower: Once activated, no more will be consumed for the remainder of the turn. Further crates collected on that turn will be added to the team's inventory.
[*]Crate Spy: Once activated, no more will be consumed for the remainder of the round. Further crates collected during that round will be added to the team's inventory.
[*]Double Time: Once activated the maximum times on a single turn (see "Double Time stack limit" below), no more will be consumed for the remainder of the turn. Further crates collected on that turn will be added to the team's inventory.
[*]Setting the Damage×2 ammo in the scheme controls the number of consecutive full turn rotations during which Damage×2 will be in effect for all teams. (Whereas with this option disabled, all nonzero ammo values have the same effect.)
[/list][*]Expedite instant utilities (checkbox) – Forces instant utilities collected in crates to be instantly consumed in circumstances when they would otherwise be stored in the team's inventory for later activation, such as after the active turn has ended (e.g. by triggering a jump while the turn is still active, such that the worm reaches and collects an instant utility crate after the turn has ended). This prevents instant utilities from being "abused", i.e. being collected at the last moment such that they are saved and activated at the beginning of the next turn. Default off.
[*]Double Time stack limit – The number of times a Double Time instant utility can be activated in a single turn. The time multiplier decreases with each use, going 2×, 3/2×, 4/3×, 5/4×, etc. When this limit is exceeded, further collection of Double Time utility crates will have no effect (thus being wasted if "Conserve instant utilities" is disabled, or saved in the team's inventory for activation on its next turn otherwise). A value of 0 represents an unlimited number of activations. The default is 1.
[/list][*]Glitches
[*]Indian Rope glitch (checkbox) – Whether selecting the Ninja Rope while moving makes it possible to bypass the angle limit and shoot a rope that can even extend straight downwards. The default is for this to be determined by the game logic version (enabled for v1.0 emulation, disabled for all later versions).
[*]Herd-doubling glitch (checkbox) – Whether jumping at just the right moment makes it possible to release double the number of Mad Cows as the selected herd count, in a single invocation of the Mad Cow weapon. The default is for this to be determined by the game logic version (enabled for v3.0 and earlier, disabled for v3.5 Beta 1 and later).
[*]Jet Pack Bungee glitch (checkbox) – Whether it is possible to trigger a Bungee from mid-air using the Jet Pack. Default on.
[*]Angle cheat glitch (checkbox) – Whether selecting the Longbow or Baseball Bat while moving makes it possible to bypass the angle limit of the respective weapon. Default on.
[*]Glide glitch (checkbox) – Whether a certain type of leftward collision by a Jumping, post-Drilling, or post-retreat worm can trigger a glitch in which the worm continues moving in the air (with reduced speed) instead of landing. Default on.
[*]Skip-walking
[*]Disabled – Prevents it from making walking faster than normal.
[*]Possible – Makes the skip-walking glitch behave as it historically did. This is the default.
[*]Facilitated – Allows skip-walking to be done by repeatedly pressing the Up, Down, or Middle arrow key while walking, similarly to how it can be done by repeatedly right-clicking the mouse while walking. Also makes it possible to skip-walk during retreat time and after the first shot of a Shotgun or Longbow.
[/list][*]Block roofing (only affects games played on cavern maps)
[*]Allow roofing – As was historically possible, worms can get above the roof of a cavern map through any of a number of techniques/tricks. This is the default.
[*]Block above – Blocks worms from getting above the part of the roof that is visible, directly above the map. This works by projecting the roof upwards to infinity from the perspective of Worm collision mechanics, in a way that is ignored by all other types of objects.
[*]Block everywhere – Same as "Block above", but also blocks worms from getting above the bottom of the roof everywhere to the left and right of the map.
[/list][*]Floating weapon glitch (checkbox) – Whether it is possible to drop a weapon (that normally would fall or fly) onto a surface, such that if done just right, it sits still until its hidden fuse expires before exploding or homing. Default on.
[*]Terrain overlap phasing glitch (checkbox) – Controls what happens when an object's collision mask intersects with terrain. If enabled, the object ignores the presence of the terrain and passes through it, until reaching a space free of terrain, after which it behaves normally and collides with any subsequent terrain it encounters. If disabled, the object is pinned by the terrain, until every pixel of terrain that intersects with it is destroyed. The default is for this to be determined by the game logic version (enabled for v3.7.2.1 and earlier, disabled for v3.8 and later).
[/list][*]Input
[*]Auto-place worms by ally (checkbox) – When worm placement is automatic, group worms by team colour. May make automatic placement feasible even in Fort-style maps. Default off.
[*]Circular Aim (checkbox) – When holding the up or down arrow to aim, this will cause the aim to continue moving past the top or bottom, instead of stopping. Intended to make shots at specific angles more challenging. Default off.
[*]Anti-lock Aim (checkbox) – The aiming angle is not preserved and is reset between turns (to an angle distinct from the last used one). Intended to make repeat shots more challenging. Default off.
[*]Anti-lock Power (checkbox) – Holding down the space bar to fire will cause the power to begin decreasing after reaching its maximum. Intended to make full-power shots more challenging. Default off.
[*]Worm Selection doesn't end Hot Seat (checkbox) – With this enabled, using Worm Select does not cause the Hot Seat timer to end and the turn timer to start. Default off.
[*]Worm Selection is never cancelled (checkbox) – With this enabled, the Tab key can be always used during a turn to switch to another Worm. Default off.
[*]Girder Radius Assist (checkbox) – Prevents the Girder mouse cursor from being moved to positions that are out of range (as determined by the Girder power) such that a beep would result if an attempt was made to place a girder there. As such, a beep will only be able to happen when an attempt is made to place a Girder where it would intersect with an existing object, and never due to being out of range. Can prevent an awkward end of a turn where a player spends time figuring out an ideal girder placement, just to have it denied by being out of range. Default off.
[/list][*]Visual
[*]Blood Level – Amount of blood (as a percentage), or 255 to use the channel / offline setting value. The offline default is 25%; in the WormNET channel #AnythingGoes, the default is 100%, and in #PartyTime, it is 0%. (Note: The other Blood setting, in "Cheats", is independent and controls blood colour.)
[/list][*]RubberWorm
[*]Bounciness (fixed point) – Makes worms spring back like a banana (with the respective sound) upon any collision, without any fall damage or loss of control, and sets the strength (coefficient of restitution) of said bounciness. A value of 1.00000 can cause worms to keep bouncing at the same height forever. The ratio of the height of each bounce to the previous one will be the square of this value; as such, a value of 0.5 will cause each successive bounce to reach 1/4 of the height of the previous one, and 0.70711, i.e. √(1/2), will cause each bounce to reach 1/2 the height of the previous one.
[*]Air Viscosity (fixed point) – Makes objects such as projectiles experience "friction" when flying through the air, and sets the strength of said friction. A value of 0.00000 (the default) results in no air friction, and 1.00000 would result in no motion through the air being possible. As such, the maximum value allowed is 0.25000, which causes objects to lose 25% of their speed every frame (1/50 second), already an impractically huge amount of friction.
[*]Air Viscosity (Worms) (checkbox) – Whether "Air Viscosity" should also affect Worms.
[*]Wind Influence (fixed point) – Any nonzero value extends the set of objects that are sensitive to wind, excluding Worms, and sets the level of said sensitivity. A value of 1.00000 gives them the same wind response as Bazooka shells.
[*]Wind Influence (Worms) (checkbox) – Whether "Wind Influence" should also affect Worms.[/list][/list][/list]
Deadcode:
[*][DC,CS] New scheme format (continued)
[*]RubberWorm (continued)
[*]Gravity Type – Controls how certain objects such as Worms and projectiles are affected by gravity.
[*]Unmodified – The default.
[*]Standard – Gravity is multiplied normally.
[*]Black hole (constant) – Objects are pulled to the middle of the map, with a constant force independent of their distance.
[*]Black hole (linear) – Objects are pulled to the middle of the map, with a force that is inversely proportional their distance from the middle. (This is inverse linear, and not inverse square like the gravity of our universe.)
[/list][*]Gravity Strength (fixed point) – Controls the extent to which objects such as Worms and projectiles are affected by gravity. With a Gravity Type of "Standard" or "Black hole (constant)", this is specified as a gravity multiplier (with a value of 1.00000 being normal). With a Gravity Type of "Black hole (linear)", this is specified as the distance in pixels at which gravity is of normal strength.
[*]Crate Rate – Specifies how many crates can potentially spawn simultaneously at the start of the turn (this will be limited by the value of the other setting, "Maximum crate count on map at once"). With crate drop probabilities set to 100%, causes the exact amount specified to spawn.
[*]Crate Shower – Enables continuous crate drops during the turn, up to the maximum set by "Maximum crate count on map at once".
[*]Anti-sink – Prevents Worms from drowning when touching the sea (unless done two times in a row). Worms that touch the sea will automatically be teleported to the last piece of land they were standing on.
[*]Remember weapons – Prevents the last used weapon selection from resetting to a common weapon regardless of its importance (as defined by the game engine). For example, multiple Bananas can be fired in a row without resetting to Grenades after the first shot.
[*]Extended fuses/herds – Enables the use of numeric keys 0-9 instead of just 1-5 to set timed weapon fuses and animal herd sizes. The 0 key will set 0 seconds for timed weapons, and 10 animals for herds.
[*]Anti-lock aim – The aiming angle is not preserved and is reset between turns. Compared to the regular Anti-lock Aim option, this always resets the angle to zero degrees in horizontal left or right direction.
[*]Kaos mood – Changes the utility crate probabilities (Fast Walk, Laser Sight, Damage*2, Invisibility, Low Gravity, Crate Spy, Jet Pack, Double Time, Crate Shower) from a set of presets, tailored to the "Kaos" scheme. (This will be replaced in a later W:A version with full individual editing of all crate probabilities.)
[/list][/list][*][DC] W:A can now emulate RubberWorm game logic without any third-party modules being loaded. There are two ways this can be done:
[*]Replay files of games played using RubberWorm under previous versions of W:A may now be played back with full emulation. However, since RubberWorm did not tag replay files in any way to indicate its use, W:A must be told whether to enable RubberWorm detection when parsing replay files. To enable it, import EmulateRubberWorm_On.reg (from the Tweaks folder) into your system registry, or use the command line options /rwemu=on or /rwemu=off which will override the registry setting.
[*]The entire range of RubberWorm versions are emulated. Since emulating the wrong version can potentially cause a desynchronisation, some autodetection is applied. The potential RubberWorm version a particular replay file could have used is first narrowed down according to what version of W:A was used, but for most versions of W:A this doesn't narrow it down to a single RubberWorm version. W:A addresses this issue by using the timestamp of when the replay was originally recorded, and matching this up with the latest RubberWorm version available at the time. This may not always be correct however, either due to users having their system date set incorrectly, or due to their using an outdated RubberWorm version. Thus, the emulated RubberWorm version can be controlled as a Unix time value integer, either by directly setting the registry value EmulateRubberWorm, or by using the /rwemu= command line parameter with an integer in decimal or hexadecimal specifying the desired Unix time override value – for example /rwemu=50EEDF6B or /rwemu=1357832043 will identically set the value to 2013-01-10 15:34:03 GMT, corresponding to RubberWorm v0.0.1.12-13 for W:A v3.7.0.0. For the full list, see 2.0 Supplementary Documentation – Integration and Command-Line Parameters. Note that the detected W:A version will always override this (the version emulated will be rounded off to the oldest or newest RubberWorm corresponding to that W:A version, depending on the direction in which the time override setting is out of range), so for example, it will not be possible to force emulation of a version of RubberWorm made for W:A v3.7.0.0 when playing a replay file recorded with W:A v3.7.2.1.
[/list][*]The new scheme format includes all of the options that were controllable via RubberWorm. The ones that controlled aspects internally present in the game engine (but previously not exposed as scheme settings) are in general categories, and the ones that introduced new game mechanics are in the RubberWorm category.
[/list][*][DC] W:A can automatically import RubberWorm scheme settings (which are stored as nonzero superweapon crate probabilities, values that the game otherwise ignores) into its new extended scheme format when loading a .WSC file. (The RubberWorm game logic version override is also imported, but only as a set of "test version" options, if any, excluding Rope knocking power; the logic version itself is ignored.) This is enabled by default, and can be controlled by importing any one of the following (from the Tweaks folder) into your system registry:
[*]ImportRubberWorm_Disable.reg - Ignore RubberWorm scheme settings, leaving them in the form of superweapon crate probabilities (which the game ignores), when loading .WSC files in the front end.
[*]ImportRubberWorm_Silently.reg - Silently import RubberWorm scheme settings. From the perspective of the user, it will be indistinguishable from loading a .WSC file that has already been converted to the extended scheme format.
[*]ImportRubberWorm_Quietly.reg (Default) - In the Offline Multiplayer screen and Options menu, this behaves identically to ImportRubberWorm_Silently.reg, but in the Host lobby, the message SCHEME_IMPORTED_RUBBERWORM will be printed in the chat history (to the host only) every time RubberWorm settings are imported from a loaded .WSC file.
[*]ImportRubberWorm_Verbosely.reg - In all three front end screens where .WSC files can be loaded, this will pop up a modal dialog box showing the message SCHEME_IMPORTED_RUBBERWORM every time RubberWorm settings are imported from a loaded .WSC file.
[/list][*][DC] W:A can now emulate Project X synchronisation bugs (which occur when Project X disables its customisation functionality) during replay file playback. To enable this, import EmulateProjectXBugs_On.reg (from the Tweaks folder) into your system registry, or use the command line options /pxbugemu=on or /pxbugemu=off which will override the registry setting. This applies only to replay files in which the local player was using W:A v3.6.31.0, and should only be enabled if the local player had the Project X WormKit module installed. Replays matching these criteria, in which a Checksum Mismatch or related error occurs during playback, may be "cured" by enabling this option. The emulated synchronisation bugs are:
[*]The colours of the flying dirt from when the Longbow or Mole Bomb hit a longbow arrow or girder are not taken from the pixels in the arrow or girder itself (like standard W:A does), but from the initial state of the map. If, at the beginning of the game, there was no land where the arrow/girder pixels currently are, no dirt will fly, thus causing a desynchronisation from clients that are not running Project X (because dirt particles affect the random number seed). In practice this usually happens when an arrow is shot into another arrow, or a Mole Bomb digs through a girder, but it could also happen when an arrow is shot into a girder, or a Mole Bomb digs through a longbow arrow.
[*]Unlike standard W:A, large explosions do not erase smaller circles from the soil background. In fact, under Project X the soil background never gets erased at all, whereas in standard W:A it's possible for the entire soil background to be erased. This can cause a desynchronisation if <v3.6.22.0 is emulated.
[*]Project X changes a floating-point precision flag (probably due to not setting D3DCREATE_FPU_PRESERVE), causing the physics of RubberWorm's "Black hole (linear)" Gravity Type to be modified slightly, due to intermediate floating-point results being rounded to single precision. Sooner or later players will be desynchronised, if some are using Project X and others aren't.
[/list][*][DC] It is now possible to disable all in-game UI animations. This can be controlled by using the UIAnimations_Disabled.reg and UIAnimations_Enabled.reg registry tweaks; the default is for the animations to be enabled. The following animations are affected:
[*]Opening/closing of the in-game dialog box (by pressing ESC) and its quit confirmation box
[*]Opening/closing of the weapon panel (by clicking the right mouse button)
[*]Opening/closing of the chat panel (by pressing PageDown/PageUp)
[*]Scrolling of lines of chat
[/list][*][DC] It is now possible to edit the amount of Jet Pack fuel in a scheme. This is done in the Weapon Editor by adjusting the Jet Pack's "Power"; any value from 0 to 250 may be set, where 0 represents infinite fuel. (This setting was enabled in the scheme format in v3.6.29.0, but until now could only be edited externally.)
[*][DC] To guard against corruption of the team file WG.WGT, its previous state (before the current instance of W:A was started) is now backed up as WG.backup-previous.WGT. This means that on rare occasions when the file becomes corrupted, W:A will now be able to recover from the situation. If this occurs, it prompts the user whether to automatically restore the backup, reset the team file, or do nothing and exit.
[*][DC] Scheme Save and Delete buttons have been added to the Host lobby.
[*][CS] The way translations are handled has been updated.
[*]Game language files now include a line containing the version number that they originated from in the header.
[*]A new escape sequence has been added for an alternate way to represent no-break space characters: \_
[*]Game language files distributed with Worms Armageddon updates are now automatically updated in the same way that English.txt is; for example, if a string has been renamed or deleted in English.txt, the same change is applied to other language files. (Previously, this had to be done manually, and thus imperfectly.)
[*]Incomplete game language files distributed with Worms Armageddon updates now include "#TODO" markers for all strings which require translation or review.
[*]A new language file, New.txt, is now included. This file can be used as a starting point for translating Worms Armageddon to a new language.
[*]localisation.log now includes copy entries, used for newly-added strings which are based on existing strings.
[*]A translation tool to facilitate editing of language files is available online at loc.worms2d.info.
[/list]To contribute new or updated translations, please see section 7.0.
[*][CS] A secret password (type-in cheat code) has been added which, when activated, effectively unlocks Full Wormage (makes all scheme settings available). The effect can be undone by typing the password a second time; whether Full Wormage has been unlocked in this way is saved to the registry. The password must be typed in the main menu, and its activation is confirmed by a sound effect. (In a future update, the password will be revealed upon completing all the requirements to unlock Full Wormage normally.)
[*][DC] In order to support a larger variety of image manipulation software (e.g. the GIMP) for use in the creation/preparation of W:A maps, the Map Editor will now recognize PNG files with embedded transparency (i.e. with a tRNS chunk, which specifies the alpha values of every palette entry). If such transparency information is found, it will override the usual means of conveying transparency (a palette value of exact black) and use only the transparency information.
[*]PNG maps saved by W:A will now include a tRNS chunk, identifying the first palette entry as being transparent, and all others as being opaque. This will have the effect of allowing image editing/viewing software to interpret the transparency in these maps as true transparency, rather than blackness. It is backwards-compatible; previous versions of W:A will just ignore the tRNS chunk, and v3.8+ will obey it (with no effect, because due to the W:A-specific PNG chunk being present, they would treat the first palette entry, which is black, as being transparent anyway). It affects all PNG maps saved in the Map Editor, sent over the network in online games hosted by v3.8+, and embedded in replay files that were either played offline or hosted by v3.8+. An "Export Map" operation on such a replay file will yield a PNG file with proper transparency.
[/list][/list]
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version