WormKit and 3.6.30.0

Posted October 28th, 2010 by CyberShadow in WormKit

Hi,

I noticed that there seems to be some confusion about WormKit‘s compatibility with the latest Beta update, so I’d like to explain this issue in detail.

First of all, one important thing to remember is that WormKit, by itself, doesn’t really do anything. All it does is load WormKit modules into W:A when you run it. All the functionality is provided by WormKit modules.

Often people seem to refer to WormKit when they really mean to talk about certain WormKit modules. For example, I hear phrases like these all the time…

What people say What people really mean
Do you have WormKit? Do you have <unspecified WormKit module>?
Get WormKit if you can’t host Get WormKit and set up WormNAT2 if you can’t host
WormKit-only game RubberWorm-only game (usually)
WormKit doesn’t work with this Beta One or several WormKit modules don’t work with this Beta

The last row brings us to this post’s main topic. As many of you have probably noticed, if you try running the latest Beta together with some WormKit modules, not only will they not work – but they might cause your game to crash. Some people seem to think that this is a defect with the latest Beta (after all, it worked with 3.6.29.0, and updating broke it). However, that is not true – and, in fact, we can’t avoid breaking compatibility with those modules even if we tried. I’ll explain why:

WormKit modules such as RubberWorm work by modifying the game’s program code. They do this by replacing some parts of the code at certain addresses with their own. When writing modules, module authors find these addresses beforehand by studying the WA.exe file. The problem is, however, that these addresses will always change in different versions of the .exe file – even the smallest change will likely change all addresses a WormKit module would need to patch.

Of course, we (the W:A maintainers) don’t have any control of what code ends up at which address, so we can’t avoid breaking WormKit modules which attempt to patch code at hard-coded offsets. The only way to get those modules working with the latest version of W:A is to wait for the module authors to update their modules (which mostly involves finding new addresses for the new .exe file).

Here is a list (which I also posted here) of modules which, at the time of this writing, are known to only work with 3.6.29.0:

  • RubberWorm
  • Project X
  • ReplayShark
  • CinusKick
  • LaserFix
  • JetFix (mostly obsolete)
  • IndiMask

These modules should still work, as they don’t depend on hard-coded offsets in WA.exe:

  • WormNAT2
  • FileOverride
  • AntiKeyboardHook
  • SoundCardSelect
  • PathOverride (partially obsolete)

P.S. If you’re a WormKit module author, please consider adding a version check, if you haven’t already. Writing code at hard-coded addresses without checking what you’re really patching causes a bad experience (random crashes) for your users, and lots of headache for us. Thanks!

16 responses to “WormKit and 3.6.30.0”

  1. Richard Evans RichUK on worms says:

    Things like Crateshower and various features of rubberworm and wormkit modeuls really enhance the game a lot. Would it not be a good idea to simply “team up” – the authors of wormkit and modules and add them to the next wa.exe update?

    Somehow make it so there is an “Integration” or “Plugin” option in future releases of wa.exe?

    For example: FireFox is a web browser and millions of authors make little “plug-ins”. I cant believe in this day and age that the authors of a 10 year old game can not implement a feature where part of the code is always “open source” allowing one screen for “ADVANCED PLUG INS”.

    I would upgrade to 2010 Worms Armageddon but there are two HUGE PROBLEMS with it

    1) No LG and NO Shortcut Key for Utils (specifically playing the incredibly popular scheme “HYSTERIA” and my enhanced version of that “RicHysteria”)… so hysteria is impossible in 2010 worms armageddon

    2) Equally important or more important to most people…. “STEAM”… we do not like it, very few people like it. STEAM accounts and on going garbage advertising and slow to get in to games, just a pain in the back side.

    Please make a Wormnet2010 purely for Worms Armageddon 2010 and take control of your game again, dont put it in the hands of STEAM or some other third party site, this discourages a lot of users. I am sure you can add some kind of “key code” or unique programming that will prevent copy protection and eliminate the boot legging, etc.

    Good luck anyway – I think “integration” and “Plug in” options is the best way to go…. once there is an option for that….. this will eliminate a lot of confusion on “what is the real problem” and it will also increase the number of “add on features” that people write for the game, and really BOOST the users to give you an even better reputation than what you already have.

    PITCH TIME:

    I Invented RicHysteria and also “Tube Trap” and you can find me my maps and scheme on multiple sites with feeback ranging from “poor” to “brilliant game” hehe, some one else uploaded my stuff initially without me knowing and it was unfinished… that is where you see the “poor” ratings, I have no control to remove the “unfinished works”.

    Happy worms, RichUK AKA RichUK_1974
    on WORMS! ARMAGEDDON 1999 / 2000 onwards.

  2. CyberShadow says:

    Hi,

    The main problem with having an extension API or open-sourcing parts of the game code is cheating. If we open up too much of the game’s internals, we’ll make it very easy for people to write cheat extensions. I think we can both agree that’s an undesirable outcome. We do plan to add scripting eventually.

    The shortcut key for utilities is still there, but it may not be where you expect it to be. See the “Legacy Utility Key” option in the Advanced Options screen.

    I’m not really sure what Steam has to do with Worms Armageddon… are you confusing anything with Worms Reloaded?

  3. Muzer says:

    I’m not sure who announced this, but according to http://worms2d.info/RubberWorm#Future_plans , RubberWorm support will be implemented into the beta updates at some point.

  4. mychaelo says:

    Utils were *always* accessible through ~ / ` key in US layout, really didn’t get your problem with that. About Steam: WA has nothing to do with, and was never released on it.

    The real problem with 30 and well most previous patches too – sometimes it hangs my PC when in frontend, so I cannot do anything but reboot it via reset button. A neat feature would be unlock some special keys like Ctrl-Alt-Del and Winkey natively. FYI, that wormkit antihook just doesn’t work at all in these situations.

  5. CyberShadow says:

    If W:A freezes and pressing Num Lock doesn’t toggle your keyboard LED, then you’re experiencing a hardwark lock-up, which is caused by malfunctioning hardware or drivers. There isn’t much there can be done to fix it in W:A. Today’s hardware manufacturers don’t care as much about compatibility with 10-year-old games any more.

  6. Ronald says:

    RickUK is again trying to be adorable. This time by calling W:R “WA2010″. Please cease to exist!

  7. mychaelo says:

    Take a look at this replay:
    http://rghost.ru/3159644
    Nothing special happens until sudden desync at 4 and half minutes.
    All players except yellow have 30th beta, yellow one’s 29. Game emulates 28 due to TS.

  8. CyberShadow says:

    As I’ve written on http://worms2d.info/Troubleshooting_FAQ#Desync, we’ll need replays from the side who desynced to troubleshoot desyncs.

  9. CyberShadow says:

    Actually, never mind; this seems to be a manifestation of WormNAT2′s incompatibility with Windows 7 threading. It doesn’t have anything to do with 3.6.30.0.

  10. WowwoW says:

    So now , with the 3.6.31.0 ?

  11. Sp33dy says:

    hello !!!!!!!
    can i use this for 3.6.31.0 ?????

  12. CyberShadow says:

    Yes, this blog post applies to 3.6.31.0 as well.

  13. RSD says:

    Worms Armageddon 3.6.31.0 exe file defined by some of free antiviruses as a harmful file

    http://www.virustotal.com/file-scan/report.html?id=95e6ebb3d0c3ca8c7628dcccac813c3a8891ae4c149281c95db4d4a59b8cc81b-1291127796

  14. CyberShadow says:

    It’s another false positive. Please report it to your antivirus vendor.

  15. konrad says:

    Ok, some of modules works with newest update, but do they need wormkit to run? Because whe I run game it says to remove Wormkit?

  16. CyberShadow says:

    WormKit is what loads WormKit modules, so naturally it is required. Not sure which error message you’re referring to.

Leave a Reply