WormKit
From Worms Knowledge Base
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.
Modules
Original modules
Name | Short description | Com. | W:A version | Developer |
---|---|---|---|---|
AntiKeyboardHook[1] | Stop Worms from disabling Alt+Tab / Win+... keyboard combinations.[2] | All | CyberShadow | |
FileOverride[1] | Override files from the CD-ROM with your versions. | All | CyberShadow | |
SoundCardSelect[1] | Choose the soundcard W:A should use for sound output. | All | CyberShadow | |
WormNAT2 | Allows hosting games even if you're behind a router or firewall. | 3.6.28.0+ | CyberShadow |
Current modules by community
Name | Short description | Com. | W:A version | Developer |
---|---|---|---|---|
AntiLag | A simple module to fix the screen lags in-game by increasing the WA.exe process priority. | All | Kawoosh | |
D3D9Wnd | A Direct3D 9-based windowed mode, which works natively and includes some cool features. | 3.7.2.1 ▼ | Kawoosh, StepS | |
IndiMask | It allows maps to have both destructible and indy areas by embedding data in the palette. | 3.7.2.1 ▼ | Plutonic | |
KawooshKick | An in-game kicking module, fully compatible with v3.7.2.1, supports the kicking reason. | 3.7.2.1 ▼ | Kawoosh | |
LobbyCmd | Allows to change the in-game resolution from a network game lobby to any value. | 3.7.2.1 ▼ | Kawoosh | |
MapGEN | Allows to generate random PNG maps from the map editor. | All | Plutonic | |
NV3Doff | Prevents the NVIDIA 3DVision from becoming active when using Direct3D 9. | All | Kawoosh | |
Rehost | Allows reopening games when using a snooper to host. | 3.7.2.1 ▼ | Kawoosh | |
ReplayShark | Allows to build a catalog of nice moments by pressing a button when something cool happens. | 3.7.2.1 ▼ | Glide | |
RubberWorm | Extends the W:A physics engine with new options. | 3.7.2.1 ▼ | Pisto, Kawoosh | |
UseDesktopWindow | A module which in future will help to run WWP and older W:A on Wine. | All | Muzer | |
wkWMDB | Allows the downloading of maps randomly from the WMDB site from within the editor, based on schemes and map size. | All | Plutonic | |
wndmode | DirectDraw windowed mode running in a wrapper. | All | menopem, VEG, Kawoosh, StepS |
Developer modules, SDKs, debuggers
Name | Short description | Com. | W:A version | Developer |
---|---|---|---|---|
MinidumpOnCtrlBreak | Helpful to find reasons of certain freezes. Creates dump by pressing Ctrl+Break. | All | CyberShadow | |
PointerScan | A pointer scan made specifically for W:A. Helpful in the development of new WormKit modules. | All | Pisto | |
VersionCheck | An example on C++ to verify the W:A version before hooking code. | All | Kawoosh | |
wkSample | The example open source module, which shows the development of WormKit modules. | All | The SCS |
Obsolete or incompatible modules
Name | Short description | Com. | W:A version | Developer |
---|---|---|---|---|
ColorFix | Fixes the color bug on Vista and Windows 7 by suspending an "explorer.exe" process. | All | CyberShadow | |
PathOverride | Modifies the registry to use WormKit.exe for URLs (like "wa://") and replay files. | All | Kawoosh | |
RandomMap | Allows you to download random maps from WMDB directly from the map editor. | Undefined | ShadowTheAge | |
PrivateCfg | Allows you to store all the W:A settings in an INI file instead of registry. | 3.7.0.0 ▼ | Kawoosh | |
FkeyRearrange | Allows user to redefine weapons order and content for each F hotkey. | 3.6.31.0 ▼ | boobl | |
KeyRemap | A W:A-specific key remapper which doesn't affect chatting and works only in game. | 3.6.31.0 | Kawoosh | |
Localizer | Allows you to translate W:A fully (frontend, ingame, etc), goes with an editor. | 3.6.31.0 | Kawoosh | |
Project X | Extends W:A with scripting, custom weapons and DirectX 9 rendering. | 3.6.31.0 | Entuser | |
PXColorPwnage | Fixes the Darker team colour scheme when PX is enabled. | 3.6.31.0 | Kawoosh | |
CinusKick | An analog to wKick module for W:A update 3.6.29.0. | 3.6.29.0 | Cinus | |
JetFix | Provides a workaround for the jetpack bug when using BattyRope or TestStuff. | 3.6.29.0 | Pisto | |
LaserFix | A fix for the Laser Sight desynchronization bug in v3.6.29.0, and some nice features. | 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. | 3.6.28.0 | Pisto | |
wkMagic | First proof-of-concept module that allowed game logic code modification in online games. | 3.6.26.5 | CyberShadow |
History
WormKit was first released on April 5, 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.