pisto
20 Aug 2010, 18:09
cleaning up this thread (http://forum.team17.co.uk/showthread.php?t=41828) for the crowd.
The issue
In the latest update (3.6.29.0) there's an oversight in the code that leads to desynchronization (in online games and replays), if you use laser sight while shooting. It applies only to game logic >=3.6.28.22, so if you have enabled teststuff or other special versions you can safely use aim with it.
This bug is particularly annoying because it's easy to trigger lasersight by mistake.
So, with some researches, I found that there are two solutions.
Force a slightly older version with RubberWorm (by Deadcode)
The most recent version which doesn't have this bug is 3.6.28.20-21, which in Rubberworm is numbered as 79. So you just need to either type /version79 in the host lobby, or edit in the scheme the crate probability of Select Worm to 79 (it's 0x4F in hexdecimal notation).
Pro: easy to enable, and RubberWorm is quite widespread. Also, Deadcode is willing to create a new module which uses this workaround, and only the host would need it.
Con: version 3.6.28.20-21 lacks an important feature against cheating, that is undefined content crates. It's possible to code an hack that shows crate contents, mine fuses, and possibly reveal invisible worms and activate lasersight locally.
wkLaserFix
Like wkJetFix (http://worms2d.info/JetFix), this module silently corrects the bug. It means that if you play an online game and all the players run version 3.6.29.0, and someone uses lasersight and shoots, the players who have this module will go on, those who don't will desynch.
Pro: game engine version is 3.6.29.0, so you have that nice anti-cheat system explained above. You can safely forget this module in your w:a directory, because it does nothing if you are emulating versions <=3.6.28.20-21.
Con: you can't disable lasersight within the turn, unless while jumping (:eek:).
I decided to release the module despite of this bug, because I think it's very minor. In the case of future updates, if you can't remember which version you have, just right click on the dll, click on properties, and then details. This is version 0.0.0.0.
You can use both of these (put the dll in the w:a directory and type /version79 whnever you want).
EDIT:
current version is 0.0.1.1, which has some features more. See next post for a description, and then download from here (http://forum.team17.co.uk/showpost.php?p=730425&postcount=7)
The issue
In the latest update (3.6.29.0) there's an oversight in the code that leads to desynchronization (in online games and replays), if you use laser sight while shooting. It applies only to game logic >=3.6.28.22, so if you have enabled teststuff or other special versions you can safely use aim with it.
This bug is particularly annoying because it's easy to trigger lasersight by mistake.
So, with some researches, I found that there are two solutions.
Force a slightly older version with RubberWorm (by Deadcode)
The most recent version which doesn't have this bug is 3.6.28.20-21, which in Rubberworm is numbered as 79. So you just need to either type /version79 in the host lobby, or edit in the scheme the crate probability of Select Worm to 79 (it's 0x4F in hexdecimal notation).
Pro: easy to enable, and RubberWorm is quite widespread. Also, Deadcode is willing to create a new module which uses this workaround, and only the host would need it.
Con: version 3.6.28.20-21 lacks an important feature against cheating, that is undefined content crates. It's possible to code an hack that shows crate contents, mine fuses, and possibly reveal invisible worms and activate lasersight locally.
wkLaserFix
Like wkJetFix (http://worms2d.info/JetFix), this module silently corrects the bug. It means that if you play an online game and all the players run version 3.6.29.0, and someone uses lasersight and shoots, the players who have this module will go on, those who don't will desynch.
Pro: game engine version is 3.6.29.0, so you have that nice anti-cheat system explained above. You can safely forget this module in your w:a directory, because it does nothing if you are emulating versions <=3.6.28.20-21.
Con: you can't disable lasersight within the turn, unless while jumping (:eek:).
I decided to release the module despite of this bug, because I think it's very minor. In the case of future updates, if you can't remember which version you have, just right click on the dll, click on properties, and then details. This is version 0.0.0.0.
You can use both of these (put the dll in the w:a directory and type /version79 whnever you want).
EDIT:
current version is 0.0.1.1, which has some features more. See next post for a description, and then download from here (http://forum.team17.co.uk/showpost.php?p=730425&postcount=7)