Difference between revisions of "WormKit"

From Worms Knowledge Base

Jump to: navigation, search
m (Third-party modules)
m (Date format)
 
(184 intermediate revisions by 24 users not shown)
Line 5: Line 5:
 
| developer = [[People/CyberShadow|CyberShadow]]
 
| developer = [[People/CyberShadow|CyberShadow]]
 
| games = [[Worms Armageddon|W:A]]
 
| games = [[Worms Armageddon|W:A]]
 +
| waver = All versions
 
| language = Delphi
 
| language = Delphi
| license = Open-source
+
| license = Open-source<ref name="cybershadow-github"/>
| website = [http://worms.thecybershadow.net/wormkit/ thecybershadow.net]
+
 
}}
 
}}
  
'''WormKit''' is an extension framework for [[Worms Armageddon]], which consists of a module loader, and a set of modules, each with a different purpose.
+
'''WormKit''' was an extension framework for [[Worms Armageddon]]. The distribution contained a module loader (whose only purpose is to load WormKit modules), and a set of default modules, each providing specific functionality.
  
There are currently several publicly released WormKit modules, out of which 4 come with the default WormKit distribution. They are:
+
By convention, a WormKit module is a DLL file, the filename of which begins with the prefix "wk". There is no API or further integration, however some DLLs can provide common functionality for other modules to share (such as wkPackets).
  
* '''[[WormNAT2]]''' - allows hosting games even if you're behind a router or firewall;
+
Starting with W:A [[Worms_Armageddon_ReadMe_(English)/v3.7.0.0_Update|version 3.7.0.0]], the ability to load WormKit modules is included as a game option, which makes the loader itself obsolete.
* '''FileOverride''' - override files from the CD-ROM with your versions;
+
* '''AntiKeyboardHook''' - stop Worms from disabling Alt+Tab / Win+... keyboard combinations.
+
* '''SoundCardSelect''' - choose the soundcard W:A should use for sound output.
+
  
WormKit was first released on April 5, 2006. Since its release, no significant changes or additions were made to the framework (with the exception of ReplayShark). There was some work on additional modules, including an anti-cheating system (wkWormisign) and a Fiddler-like scripted game engine add-on (wkMagic) - however, none reached a development phase mature enough to be released, and thus the ideas were dropped.
+
Some of the WormKit modules listed on this page have eventually become part of the base game. Such is the case, for example, with [[D3D9Wnd]] and [[RubberWorm]] in [[Worms_Armageddon_ReadMe_(English)/v3.8_Update|Update 3.8]].
  
* [http://worms.thecybershadow.net/wormkit/ WormKit homepage]
+
== Modules ==
  
== Third-party modules ==
+
=== Original modules ===
  
* '''[[RubberWorm]]''' - extends the W:A physics engine with new options. Written by [[People/Pisto|Pisto]].
+
{| class="wikitable sortable"
* '''[[Project X]]''' - extends W:A with scripting, custom weapons and real-time gameplay options. Written by [[People/Entuser|Entuser]].
+
|-
* '''[[ReplayShark]]''' - allows users to build a directory of classic worms moments simply by pressing a button every time something cool happens. Written by [[People/Glide|Glide]].
+
! style="width:164px" | Name
* '''[[wkMapGEN]]''' - Component of [[MapGEN]], allows the generation of random large PNG maps of a variety of schemes from the game lobby. Written by [[People/Plutonic|Plutonic]].
+
! style="none" | Short description
* '''[[JetFix]]''' - Provides a workaround for the jetpack bug when using [[BattyRope]] or [[TestStuff]]. Written by [[People/Pisto|Pisto]].
+
! style="width:68px" | Compat.
* '''[[FkeyRearrange]]''' - allowes user to redefine weapons order and content for each F hotkey. Written by [[People/boobl|boobl]].
+
! style="width:100px" | W:A version
 +
! style="width:100px" | Developer
 +
|-
 +
| '''[http://worms.thecybershadow.net/wormkit/wkFileOverride.zip FileOverride]'''<ref name="cybershadow-github">Source code for WormKit and default modules can be found on [https://github.com/CyberShadow/WormKit GitHub].</ref>
 +
| In the CD edition, allows to override CD-only files with your versions.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/CyberShadow|CyberShadow]]
 +
|-
 +
| '''[http://worms.thecybershadow.net/wormkit/wkSoundCardSelect.zip SoundCardSelect]'''<ref name="cybershadow-github" />
 +
| Choose the soundcard W:A should use for sound output.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/CyberShadow|CyberShadow]]
 +
|-
 +
| '''[[WormNAT2]]'''
 +
| Allows hosting games even if you're behind a router or firewall.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.6.28.0+
 +
| [[People/CyberShadow|CyberShadow]]
 +
|}
 +
 
 +
=== Current modules by community ===
 +
 
 +
{| class="wikitable sortable"
 +
|-
 +
! style="width:164px" | Name
 +
! style="none" | Short description
 +
! style="width:68px" | Compat.
 +
! style="width:100px" | W:A version
 +
! style="width:100px" | Developer
 +
|-
 +
| '''[http://files.steps.club/wa/wk/wkAntiLag.dll AntiLag]'''
 +
| A simple module to fix screen lags in-game by increasing the WA.exe process priority.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[[wkBindKeys|BindKeys]]'''
 +
| A key mapper which works independently of the game's code and has a toggle key option.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/Drey08|drey08]]
 +
|-
 +
| '''[[FkeyRearrange]]'''
 +
| Allows the user to redefine the order and content of weapons for each F hotkey.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.1 {{and lower}}
 +
| [[People/boobl|boobl]], [[People/StepS|StepS]]
 +
|-
 +
| '''[[wkIndiMask|IndiMask]]'''
 +
| It allows maps to have both destructible and indy areas by embedding data in the palette.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.0 {{and lower}} 3.8.1 via unofficial patch
 +
| [[People/Plutonic|Plutonic]]
 +
|-
 +
| '''[[wkKick38|Kick38]]'''
 +
| A kick module for 3.8. Allows host to kick players from in-game.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.x
 +
| [[terion]]
 +
|-
 +
| '''[[MapGEN]]'''
 +
| Allows to generate random PNG maps from the map editor.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/Plutonic|Plutonic]]
 +
|-
 +
| '''[[wkMultiInstance]]'''
 +
| Allows launching multiple WA instances without file conflicts.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/nizikawa|nizikawa]]
 +
|-
 +
| '''[https://www.tus-wa.com/forums/worms-armageddon/wormkit-module-for-ingame-music-32542 NewWave]'''
 +
| Play custom music instead of the original in-game music.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/terion|terion]]
 +
|-
 +
| '''[http://files.steps.club/wa/wk/wkNV3Doff.dll NV3Doff]'''
 +
| Prevents the NVIDIA 3DVision from becoming active when using Direct3D 9.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[[wkRandomMaps]]'''
 +
| Picks random maps from SavedLevels folder.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.1
 +
| [[People/Masta|Masta]]
 +
|-
 +
| '''[[wkRealTime]]'''
 +
| Real-time online multiplayer for racing schemes.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.x
 +
| [[People/nizikawa|nizikawa]]
 +
|-
 +
| '''[[wkRemapKeys|RemapKeys]]'''
 +
| A W:A-specific key remapper which doesn't affect chatting and works in-game only.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.7+
 +
| [[People/Kawoosh|Kawoosh]], [[People/StepS|StepS]]
 +
|-
 +
| '''[[SuperFrontendHD]]'''
 +
| Allows to run the menu screens at any screen resolution with higher-definition graphics.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.7+
 +
| [[People/StepS|StepS]]
 +
|-
 +
| '''[[wkTerrainSync]]'''
 +
| Allows to specify custom terrains for use with the map generator.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.x
 +
| [[People/nizikawa|nizikawa]]
 +
|-
 +
| '''[[wkTextMacros]]'''
 +
| Implements automatic text macros in both lobby and in-game chat.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.x
 +
| [[People/terion|terion]]
 +
|-
 +
| '''[[wkToolAssist]]'''
 +
| Adds Tool Assisted features - playing the game in super slow motion or frame by frame, saving and restoring game state, showing roping trajectory
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.1
 +
| [[People/nizikawa|nizikawa]]
 +
|-
 +
| '''[[TrackMeBetter]]'''
 +
| Allows to tune the in-game camera tracking rectangle for object motion.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.7.2.1, 3.8.1
 +
| [[People/StepS|StepS]],[[People/nizikawa|nizikawa]]
 +
|-
 +
| '''[[wkTTS]]'''
 +
| Reads chat messages with text-to-speech.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.x
 +
| [[People/greisane|greisane]]
 +
|-
 +
| '''[[wkWMDB]]'''
 +
| Allows the downloading of maps randomly from the WMDB site from within the editor, based on schemes and map size.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/Plutonic|Plutonic]]
 +
|-
 +
| '''[[wkWormOrder]]'''
 +
| Appends worm order numbers to their names and allows randomizing the worm order within the team in multiplayer games
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.x
 +
| [[People/nizikawa|nizikawa]]
 +
|-
 +
| '''[[wkPin]]'''
 +
| Allows the weapon menu to remain open. Allows forcing the chat window to a set size.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.1
 +
| [[Tester7]]
 +
|-
 +
| '''[[wkFlamingHealthBars]]'''
 +
| Brings back the famous flaming team health bars and allows the use of custom health bars.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.x
 +
| [[People/terion|terion]]
 +
|}
 +
 
 +
=== Developer modules, SDKs, debuggers ===
 +
 
 +
{| class="wikitable sortable"
 +
|-
 +
! style="width:164px" | Name
 +
! style="none" | Short description
 +
! style="width:68px" | Compat.
 +
! style="width:100px" | W:A version
 +
! style="width:100px" | Developer
 +
|-
 +
| '''[http://files.steps.club/wa/wk/wkDetectFocusLoss.dll DetectFocusLoss]'''
 +
| Helpful to find what process(es) steal focus from the game (causing e.g. unwanted minimizations)
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/StepS|StepS]]
 +
|-
 +
| '''[https://dump.thecybershadow.net/8405f07d0cfca4498c9d9bcc6075b860/wkMinidumpOnCtrlBreak.dll MinidumpOnCtrlBreak]'''
 +
| Helpful to find reasons of certain freezes. Creates dump by pressing Ctrl+Break.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/CyberShadow|CyberShadow]]
 +
|-
 +
| '''[http://files.steps.club/wa/wk/wkVersionCheck.zip VersionCheck]'''
 +
| An example on C++ to verify the W:A version before hooking code.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[[wkSample]]'''
 +
| The example open source module, which shows the development of WormKit modules.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/TheSCS|The SCS]]
 +
|}
 +
 
 +
=== Not compatible with the latest release ===
 +
 
 +
{| class="wikitable sortable"
 +
|-
 +
! style="width:164px" | Name
 +
! style="none" | Short description
 +
! style="width:68px" | Compat.
 +
! style="width:100px" | W:A version
 +
! style="width:100px" | Developer
 +
|-
 +
| '''[[wkKawooshKick|KawooshKick]]'''
 +
| An in-game kicking module, fully compatible with v3.7.2.1, supports kicking reasons.
 +
| {{WA editions|cd|steam}}
 +
| 3.7.2.1 {{and lower}}
 +
| [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[[wkLobbyCmd|LobbyCmd]]'''
 +
| Allows to change the in-game resolution from a network game lobby to any value.
 +
| {{WA editions|cd|steam}}
 +
| 3.7.2.1 {{and lower}}
 +
| [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[[wkPointerScan|PointerScan]]'''
 +
| A pointer scan made specifically for W:A. Helpful in the development of new WormKit modules.
 +
| {{WA editions|cd}}
 +
| 3.6.31.0 {{and lower}}
 +
| [[People/Pisto|Pisto]]
 +
|-
 +
| '''[[wkPrivateCfg|PrivateCfg]]'''
 +
| Allows you to store all the W:A settings in an INI file instead of registry.
 +
| {{WA editions|cd}}
 +
| 3.7.0.0 {{and lower}}
 +
| [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[[Project X]]'''
 +
| Extends W:A with scripting, custom weapons and DirectX 9 rendering.
 +
| {{WA editions|cd}}
 +
| 3.6.31.0
 +
| [http://px.worms2d.info Entuser]
 +
|-
 +
| '''[[wkRehost|Rehost]]'''
 +
| Allows reopening games when using a snooper to host.
 +
| {{WA editions|cd}}
 +
| 3.7.2.1 {{and lower}}
 +
| [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[[ReplayShark]]'''
 +
| Allows to build a catalog of nice moments by pressing a button when something cool happens.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.7.2.1 {{and lower}}
 +
| [[People/Glide|Glide]]
 +
|-
 +
| '''[http://files.steps.club/wa/wk/wkSnow.zip Snow]'''
 +
| A module to enable, customize and/or disable snow anytime, doesn't affect map generation.
 +
| {{WA editions|cd|steam}}
 +
| 3.7.2.1 {{and lower}}
 +
| [[People/StepS|StepS]]
 +
|}
 +
 
 +
=== Obsolete (historical) ===
 +
 
 +
{| class="wikitable sortable"
 +
|-
 +
! style="width:164px" | Name
 +
! style="none" | Short description
 +
! style="width:68px" | Compat.
 +
! style="width:100px" | W:A version
 +
! style="width:100px" | Developer
 +
|-
 +
| '''[http://beta.team17.com/showthread.php?t=38762 ColorFix]'''
 +
| Fixes the color bug on Vista and Windows 7 by suspending the "explorer.exe" process.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/CyberShadow|CyberShadow]]
 +
|-
 +
| '''[https://worms.thecybershadow.net/wormkit/wkAntiKeyboardHook.zip AntiKeyboardHook]'''<ref name="cybershadow-github" />
 +
| Stop MS Windows (2000 - 8.1) from disabling Alt+Tab / Win+... keyboard combinations for wa.exe.<ref name="loader-only">This module will not work with the game's "Load WormKit modules" option. A loader (WormKit.exe or [[WormKitDS]]) must be used instead.</ref><ref name="akh-obsolete">This module is now obsolete on Windows 10 (because the root cause has been fixed by Microsoft). This module was never necessary for non-CD editions of the game, and there exists a registry-based fix that is preferable instead.</ref>
 +
| {{WA editions|cd}}
 +
| All
 +
| [[People/CyberShadow|CyberShadow]]
 +
|-
 +
| '''[[wkPathOverride|PathOverride]]'''
 +
| Modifies the registry to use WormKit.exe for URLs (like "wa://") and replay files.
 +
| {{WA editions|cd}}
 +
| All
 +
| [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[[wkRandomMap|RandomMap]]'''
 +
| Allows you to download random maps from [[WMDB]] directly from the map editor.
 +
| {{WA editions|cd}}
 +
| Undefined<ref name="bad">After the 3.7.0.0 update, wkRandomMap has stopped working on some systems, but it is unknown what makes it malfunction on any particular system. This module is now deprecated; wkWMDB is preferable.</ref>
 +
| [http://shadowtheage.narod.ru ShadowTheAge]
 +
|-
 +
| '''[http://tim32.org/~muzer/t17-archive/forum.team17.com/archive/index.php/t-57737.html wndmode]'''
 +
| DirectDraw windowed mode running in a wrapper.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/menopem|menopem]], [[People/VEG|VEG]],<br>[[People/Kawoosh|Kawoosh]], [[People/StepS|StepS]]
 +
|-
 +
| '''[[wkUseDesktopWindow|UseDesktopWindow]]'''
 +
| A module which in future will help to run WWP and older W:A on Wine.
 +
| {{WA editions|cd|steam|gog}}
 +
| All
 +
| [[People/Muzer|Muzer]]
 +
|-
 +
| '''[[D3D9Wnd]]'''
 +
| A Direct3D 9-based windowed mode, which works natively and includes some cool features.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.7.x
 +
| [[People/Kawoosh|Kawoosh]], [[People/StepS|StepS]]
 +
|-
 +
| '''[[RubberWorm]]'''
 +
| Extends the W:A physics engine with new options.
 +
| {{WA editions|cd|steam}}
 +
| 3.7.2.1 {{and lower}}
 +
| [[People/Pisto|Pisto]], [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[[WA_Localizer|Localizer]]'''
 +
| Allows you to translate W:A fully (frontend, ingame, etc), goes with an editor.
 +
| {{WA editions|cd}}
 +
| 3.6.31.0
 +
| [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[http://myfiles.my1.ru/wa/wk/wkPXColorPwnage.dll PXColorPwnage]'''
 +
| Fixes the Darker team colour scheme when PX is enabled.
 +
| {{WA editions|cd}}
 +
| 3.6.31.0
 +
| [[People/Kawoosh|Kawoosh]]
 +
|-
 +
| '''[http://worms.cinus.org/wkcinuskick CinusKick]'''
 +
| An analog to wKick module for W:A update 3.6.29.0.
 +
| {{WA editions|cd}}
 +
| 3.6.29.0
 +
| [http://worms.cinus.org Cinus]
 +
|-
 +
| '''[[JetFix]]'''
 +
| Provides a workaround for the jetpack bug when using [[BattyRope]] or [[TestStuff]].
 +
| {{WA editions|cd}}
 +
| 3.6.29.0
 +
| [[People/Pisto|Pisto]]
 +
|-
 +
| '''[[LaserFix]]'''
 +
| A fix for the [[Laser Sight]] desynchronization bug in v3.6.29.0, and some nice features.
 +
| {{WA editions|cd}}
 +
| 3.6.29.0
 +
| [[People/Pisto|Pisto]]
 +
|-
 +
| '''[http://forum.team17.com/showthread.php?t=35805 wKick]'''
 +
| Allows you to kick people in-game by typing a command in the chat. Works only on 3.6.28.0.
 +
| {{WA editions|cd}}
 +
| 3.6.28.0
 +
| [[People/Pisto|Pisto]]
 +
|-
 +
| '''[[wkMagic]]'''
 +
| First proof-of-concept module that allowed game logic code modification in online games.
 +
| {{WA editions|cd}}
 +
| 3.6.26.5
 +
| [[People/CyberShadow|CyberShadow]]
 +
|-
 +
| '''[[wkTerrain]]'''
 +
| Allows to specify custom terrains for use with the map generator.
 +
| {{WA editions|cd|steam|gog}}
 +
| 3.8.x
 +
| [[People/xKoweKx|xKoweKx]], [[People/terion|terion]]
 +
|}
 +
 
 +
=== For Worms 2 / WWP ===
 +
 
 +
{| class="wikitable sortable"
 +
|-
 +
! style="width:164px" | Name
 +
! style="none" | Short description
 +
! style="width:68px" | Compat.
 +
! style="width:100px" | Version
 +
! style="width:100px" | Developer
 +
|-
 +
| '''[[ReSolution]]'''
 +
| Allows to change the in-game resolution in Worms 2 and Worms World Party to any value, as well as zoom and resize the game environment.
 +
| {{software|W2|WWP}}
 +
| 1.05 (W2)<br>1.0x (WWP)
 +
| [[People/StepS|StepS]]
 +
|-
 +
| '''[[DDShot]]'''
 +
| Allows to take screenshots in DirectDraw games (via the Pause key) or dump shots of all surfaces (via Alt+Pause).
 +
| {{software|W2|WWP|WA}}
 +
| All
 +
| [[People/StepS|StepS]]
 +
|-
 +
| '''[[fkNetcode]]'''
 +
| Fixes netcode related issues in the Worms 2 frontend, primarily resolving a proper external IP address for hosting games.
 +
| {{software|W2}}
 +
| 1.05/1.07 (Frontend)
 +
| [[User:Pac-Man|Pac-Man]]
 +
|-
 +
| '''[http://www.gog.com/forum/worms_series/plugin_windowed_mode_for_worms_2_improve_windows_8_performance W2 Windowed Mode]'''
 +
| Allows to run Worms 2 in a window and fixes Windows 8+ performance issues.
 +
| {{software|W2}}
 +
| All
 +
| See "wndmode"
 +
|-
 +
| '''[http://www.tus-wa.com/?topic=21030 WWP Windowed Mode]'''
 +
| Fixes compatibility with all modern systems and drivers and allows to use windowed mode.
 +
| {{software|WWP}}
 +
| All
 +
| See "wndmode"
 +
|}
 +
 
 +
== History ==
 +
 
 +
WormKit was first released on 5 April 2006. Since its release, no significant changes or additions were made to the framework itself. Although there was some work on additional default modules, including an anti-cheating system (wkWormisign) and a Fiddler-like scripted game engine add-on ([[wkMagic]]), none reached a development phase mature enough to be released, and thus the ideas were dropped.
 +
 
 +
In July 2011, [[WormKitDS]] was released. WormKitDS is an alternative module loader which removes the need of a launcher program. WormKitDS made managing WormKit-requiring replays easier, and worked under Linux and for the Steam edition of the game, whereas the original WormKit did not.
 +
 
 +
In December 2012, W:A 3.7.0.0 was released, with the addition of an option to load WormKit modules on startup. The new option made the loaders mostly obsolete.
 +
 
 +
In February 2013, the original WormKit homepage (previously located at http://worms.thecybershadow.net/wormkit/) was shut down and turned into a redirect to this page. The default modules have been made available as separate downloads. The old (obsolete) distribution can still be downloaded [http://worms.thecybershadow.net/wormkit/wormkit.zip here].
 +
 
 +
In July 2020, [[FrontendKitWS]] was created to patch issues specifically related to the [[Worms 2]] frontend, as it does not support loading modules through WormKitDS.
 +
 
 +
== See also ==
 +
* [[WormKitDS]] loads modules for Worms 2 (in-game), W:A (pre-3.7), and Worms World Party
 +
* [[FrontendKitWS]] loads modules for Worms 2 (frontend)
 +
 
 +
== Notes ==
 +
<references/>
 +
__NOTOC__

Latest revision as of 21:12, 27 April 2024

(Up to Software)
icon WormKit
Developer: CyberShadow
Supported games: W:A
Supported W:A version: All versions
Language: Delphi
License: Open-source[1]

WormKit was an extension framework for Worms Armageddon. The distribution contained a module loader (whose only purpose is to load WormKit modules), and a set of default modules, each providing specific functionality.

By convention, a WormKit module is a DLL file, the filename of which begins with the prefix "wk". There is no API or further integration, however some DLLs can provide common functionality for other modules to share (such as wkPackets).

Starting with W:A version 3.7.0.0, the ability to load WormKit modules is included as a game option, which makes the loader itself obsolete.

Some of the WormKit modules listed on this page have eventually become part of the base game. Such is the case, for example, with D3D9Wnd and RubberWorm in Update 3.8.

Modules

Original modules

Name Short description Compat. W:A version Developer
FileOverride[1] In the CD edition, allows to override CD-only files with your versions. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All CyberShadow
SoundCardSelect[1] Choose the soundcard W:A should use for sound output. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All CyberShadow
WormNAT2 Allows hosting games even if you're behind a router or firewall. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.6.28.0+ CyberShadow

Current modules by community

Name Short description Compat. W:A version Developer
AntiLag A simple module to fix screen lags in-game by increasing the WA.exe process priority. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All Kawoosh
BindKeys A key mapper which works independently of the game's code and has a toggle key option. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All drey08
FkeyRearrange Allows the user to redefine the order and content of weapons for each F hotkey. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.1 boobl, StepS
IndiMask It allows maps to have both destructible and indy areas by embedding data in the palette. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.0 3.8.1 via unofficial patch Plutonic
Kick38 A kick module for 3.8. Allows host to kick players from in-game. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.x terion
MapGEN Allows to generate random PNG maps from the map editor. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All Plutonic
wkMultiInstance Allows launching multiple WA instances without file conflicts. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All nizikawa
NewWave Play custom music instead of the original in-game music. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All terion
NV3Doff Prevents the NVIDIA 3DVision from becoming active when using Direct3D 9. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All Kawoosh
wkRandomMaps Picks random maps from SavedLevels folder. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.1 Masta
wkRealTime Real-time online multiplayer for racing schemes. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.x nizikawa
RemapKeys A W:A-specific key remapper which doesn't affect chatting and works in-game only. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.7+ Kawoosh, StepS
SuperFrontendHD Allows to run the menu screens at any screen resolution with higher-definition graphics. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.7+ StepS
wkTerrainSync Allows to specify custom terrains for use with the map generator. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.x nizikawa
wkTextMacros Implements automatic text macros in both lobby and in-game chat. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.x terion
wkToolAssist Adds Tool Assisted features - playing the game in super slow motion or frame by frame, saving and restoring game state, showing roping trajectory This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.1 nizikawa
TrackMeBetter Allows to tune the in-game camera tracking rectangle for object motion. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.7.2.1, 3.8.1 StepS,nizikawa
wkTTS Reads chat messages with text-to-speech. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.x greisane
wkWMDB Allows the downloading of maps randomly from the WMDB site from within the editor, based on schemes and map size. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All Plutonic
wkWormOrder Appends worm order numbers to their names and allows randomizing the worm order within the team in multiplayer games This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.x nizikawa
wkPin Allows the weapon menu to remain open. Allows forcing the chat window to a set size. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.1 Tester7
wkFlamingHealthBars Brings back the famous flaming team health bars and allows the use of custom health bars. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.x terion

Developer modules, SDKs, debuggers

Name Short description Compat. W:A version Developer
DetectFocusLoss Helpful to find what process(es) steal focus from the game (causing e.g. unwanted minimizations) This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All StepS
MinidumpOnCtrlBreak Helpful to find reasons of certain freezes. Creates dump by pressing Ctrl+Break. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All CyberShadow
VersionCheck An example on C++ to verify the W:A version before hooking code. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All Kawoosh
wkSample The example open source module, which shows the development of WormKit modules. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All The SCS

Not compatible with the latest release

Name Short description Compat. W:A version Developer
KawooshKick An in-game kicking module, fully compatible with v3.7.2.1, supports kicking reasons. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.7.2.1 Kawoosh
LobbyCmd Allows to change the in-game resolution from a network game lobby to any value. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.7.2.1 Kawoosh
PointerScan A pointer scan made specifically for W:A. Helpful in the development of new WormKit modules. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.6.31.0 Pisto
PrivateCfg Allows you to store all the W:A settings in an INI file instead of registry. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.7.0.0 Kawoosh
Project X Extends W:A with scripting, custom weapons and DirectX 9 rendering. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.6.31.0 Entuser
Rehost Allows reopening games when using a snooper to host. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.7.2.1 Kawoosh
ReplayShark Allows to build a catalog of nice moments by pressing a button when something cool happens. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.7.2.1 Glide
Snow A module to enable, customize and/or disable snow anytime, doesn't affect map generation. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.7.2.1 StepS

Obsolete (historical)

Name Short description Compat. W:A version Developer
ColorFix Fixes the color bug on Vista and Windows 7 by suspending the "explorer.exe" process. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All CyberShadow
AntiKeyboardHook[1] Stop MS Windows (2000 - 8.1) from disabling Alt+Tab / Win+... keyboard combinations for wa.exe.[2][3] This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. All CyberShadow
PathOverride Modifies the registry to use WormKit.exe for URLs (like "wa://") and replay files. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. All Kawoosh
RandomMap Allows you to download random maps from WMDB directly from the map editor. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. Undefined[4] ShadowTheAge
wndmode DirectDraw windowed mode running in a wrapper. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All menopem, VEG,
Kawoosh, StepS
UseDesktopWindow A module which in future will help to run WWP and older W:A on Wine. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. All Muzer
D3D9Wnd A Direct3D 9-based windowed mode, which works natively and includes some cool features. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.7.x Kawoosh, StepS
RubberWorm Extends the W:A physics engine with new options. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.7.2.1 Pisto, Kawoosh
Localizer Allows you to translate W:A fully (frontend, ingame, etc), goes with an editor. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.6.31.0 Kawoosh
PXColorPwnage Fixes the Darker team colour scheme when PX is enabled. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.6.31.0 Kawoosh
CinusKick An analog to wKick module for W:A update 3.6.29.0. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.6.29.0 Cinus
JetFix Provides a workaround for the jetpack bug when using BattyRope or TestStuff. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.6.29.0 Pisto
LaserFix A fix for the Laser Sight desynchronization bug in v3.6.29.0, and some nice features. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.6.29.0 Pisto
wKick Allows you to kick people in-game by typing a command in the chat. Works only on 3.6.28.0. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.6.28.0 Pisto
wkMagic First proof-of-concept module that allowed game logic code modification in online games. This item is compatible with the CD edition of W:A.  This item is not compatible with the Steam edition of W:A.This item is not compatible with the GOG edition of W:A. 3.6.26.5 CyberShadow
wkTerrain Allows to specify custom terrains for use with the map generator. This item is compatible with the CD edition of W:A.  This item is compatible with the Steam edition of W:A.This item is compatible with the GOG edition of W:A. 3.8.x xKoweKx, terion

For Worms 2 / WWP

Name Short description Compat. Version Developer
ReSolution Allows to change the in-game resolution in Worms 2 and Worms World Party to any value, as well as zoom and resize the game environment. [W2][—][WWP] 1.05 (W2)
1.0x (WWP)
StepS
DDShot Allows to take screenshots in DirectDraw games (via the Pause key) or dump shots of all surfaces (via Alt+Pause). [W2][WA][WWP] All StepS
fkNetcode Fixes netcode related issues in the Worms 2 frontend, primarily resolving a proper external IP address for hosting games. [W2][—][—] 1.05/1.07 (Frontend) Pac-Man
W2 Windowed Mode Allows to run Worms 2 in a window and fixes Windows 8+ performance issues. [W2][—][—] All See "wndmode"
WWP Windowed Mode Fixes compatibility with all modern systems and drivers and allows to use windowed mode. [—][—][WWP] All See "wndmode"

History

WormKit was first released on 5 April 2006. Since its release, no significant changes or additions were made to the framework itself. Although there was some work on additional default modules, including an anti-cheating system (wkWormisign) and a Fiddler-like scripted game engine add-on (wkMagic), none reached a development phase mature enough to be released, and thus the ideas were dropped.

In July 2011, WormKitDS was released. WormKitDS is an alternative module loader which removes the need of a launcher program. WormKitDS made managing WormKit-requiring replays easier, and worked under Linux and for the Steam edition of the game, whereas the original WormKit did not.

In December 2012, W:A 3.7.0.0 was released, with the addition of an option to load WormKit modules on startup. The new option made the loaders mostly obsolete.

In February 2013, the original WormKit homepage (previously located at http://worms.thecybershadow.net/wormkit/) was shut down and turned into a redirect to this page. The default modules have been made available as separate downloads. The old (obsolete) distribution can still be downloaded here.

In July 2020, FrontendKitWS was created to patch issues specifically related to the Worms 2 frontend, as it does not support loading modules through WormKitDS.

See also

  • WormKitDS loads modules for Worms 2 (in-game), W:A (pre-3.7), and Worms World Party
  • FrontendKitWS loads modules for Worms 2 (frontend)

Notes

  1. 1.0 1.1 1.2 1.3 Source code for WormKit and default modules can be found on GitHub.
  2. This module will not work with the game's "Load WormKit modules" option. A loader (WormKit.exe or WormKitDS) must be used instead.
  3. This module is now obsolete on Windows 10 (because the root cause has been fixed by Microsoft). This module was never necessary for non-CD editions of the game, and there exists a registry-based fix that is preferable instead.
  4. After the 3.7.0.0 update, wkRandomMap has stopped working on some systems, but it is unknown what makes it malfunction on any particular system. This module is now deprecated; wkWMDB is preferable.
Personal tools