PDA

View Full Version : emulating old game logic - what tools are available?


franpa
26 Feb 2009, 03:27
Hi, I was wondering what current tools are available for forcing emulation of older versions of W:A's game logic.

bonz
26 Feb 2009, 09:20
There is a tool, which allows emulating any beta versions older than 3.6.26.5. Only works with 3.6.26.5 though.

franpa
26 Feb 2009, 09:41
I am aware of...

Older Version Guy
Pisto's Workit module

bonz
26 Feb 2009, 10:44
I am aware of...

Older Version Guy
Pisto's Workit module
No, not that one.
A more official one.

Muzer
26 Feb 2009, 19:50
Older Version Guy
The wormnet version of that was never publically released, although I'm sure he'd happily release it, since there's now no point it not doing so

Pisto's Workit module
What? Where? Am I missing something?

franpa
27 Feb 2009, 04:34
I'm pretty sure he had a wormkit module that displayed an interface box behind W:A that let you choose the version... unless I'm confusing that with Older Version Guy o_O

Koen-ftw
27 Feb 2009, 10:27
The wormnet version of that was never publically released, although I'm sure he'd happily release it, since there's now no point it not doing so

People could abuse it, since you can force anyone in the game to emulate to the version you're using.

franpa
27 Feb 2009, 10:33
How can they "abuse" it? replay logs should have the engine version used, stamped somewhere... so as to avoid people using buggy versions in tournaments etc.

Muzer
27 Feb 2009, 19:02
People could abuse it, since you can force anyone in the game to emulate to the version you're using.
Am I missing something?

1) People emulate the version you are using anyway
2) If I remember correctly from back then, you can only use it when you're hosting (and it's closed source)
3) It displays the normal "game will emulate..." message anyway
4) It's obvious when you're using it as a player called "OlderVersionGuy" appears in your game

pisto
27 Feb 2009, 20:26
Am I missing something?

1) People emulate the version you are using anyway
2) If I remember correctly from back then, you can only use it when you're hosting (and it's closed source)
3) It displays the normal "game will emulate..." message anyway
4) It's obvious when you're using it as a player called "OlderVersionGuy" appears in your game

right to all. anyway, from 3.69.29.0 some version can't be enabled with OlderVersionGuy. RubberWorm allows to enable instead any version you want, but it doesn't display the message "game will emulate...".

Indeed, the only interesting version that you might like to enalbe is teststuff3 (slightly different than teststuff5, the public one) with big map support. At least if there aren't other changes (or bugs that heve been fixed and you wanted to play with) that I'm not aware of in other old versions of the game engine.

Koen-ftw
27 Feb 2009, 23:56
How can they "abuse" it? replay logs should have the engine version used, stamped somewhere... so as to avoid people using buggy versions in tournaments etc.

Older versions have bugs which can be exploited (eg dropping worms through the land using a girder). And joining a random game with teststuff enabled can really mess things up if the host doesn't know what TS is. Things like that.

franpa
28 Feb 2009, 00:06
And joining a random game with teststuff enabled can really mess things up if the host doesn't know what TS is. Things like that.
if the host doesn't know then theres a good chance I would desync for using a different engine version to everyone else. and yea, the Wormkit module only displays emulating 3.6.29.0 instead of the version actually being emulated.

Koen-ftw
28 Feb 2009, 00:13
I don't know how this module of yours works, but if you emulate an older version everyone in the game will use that and you won't just desync, afaik.

franpa
28 Feb 2009, 00:54
I assume the function that tells people what version your using refers to a separate memory address to the location that determines the version your using. the only time they match each other is when you yourself, is the host thus ensuring everyone is running the same game logic as each other.

Why? well if you join another game, you will sync both values to the host BUT OlderVersionGuy and CheatEngine will revert the value that determines what game logic your using back without updating the value that is used to tell other people what version your using.

So far no one has either found or released information on the address that is used to announce your version to the host which is why OlderVersionGuy doesn't support it and the address is not listed by Pisto :P.

Koen-ftw
28 Feb 2009, 00:59
I assume the function that tells people what version your using refers to a separate memory address to the location that determines the version your using. the only time they match each other is when you yourself, is the host thus ensuring everyone is running the same game logic as each other.

what


If you join a game, using an old version, the game will emulate. If someone with .28 joins your .29 game it will show a message telling you the game will be using the .28 engine version. Unless the module tells the game to emulate after the game has started, which I highly doubt, you and everyone in the game will be using the old version (teststuff3 for instance).

But I don't think I can convince you on this one. :p

franpa
28 Feb 2009, 01:10
I updated my post with a hypotheses/guess on why it happens.

Koen-ftw
28 Feb 2009, 01:40
Alright then, now I understand. I thought it worked like the 'official' module bonz mentioned earlier. Well then, I take back what I said about the possible abuse! ;)

pisto
28 Feb 2009, 11:15
the version check works so: every client when joins tell the maximum version that they can run. Then the host at the moment of starting a game caluclates the lowest supported version by all the clients, and send a command to them telling which resulted so. In theory, the host can send any version it likes, even greater than the normal result would be (and this is what happens with the public teststuff/150%, to prevent that a client could force one of those versions I guess). So, it's possible to force any version (even without showing the "emulate" message if I remember correctly) frozing that address that I PMed to you, before you click on start game.

Malevol3nt
3 Mar 2009, 11:43
Why do you need older game's logic?

franpa
3 Mar 2009, 11:47
Test Stuff version 3 for instance ;) it even works with large maps IIRC.

Malevol3nt
3 Mar 2009, 15:38
But you can use TS3 in 36.280 & 36.290 allready. Only need to use /ts3 or something instead of just /ts. Afaik.

pisto
3 Mar 2009, 17:42
/ts3 is a RubberWorm option.

franpa
4 Mar 2009, 02:32
But you can use TS3 in 36.280 & 36.290 allready. Only need to use /ts3 or something instead of just /ts. Afaik.

Without 3rd party hacks/mods/memory tools there is only Test Stuff version 4 available.