• Welcome to Valhalla Legends Archive.
 

Anyone maybe interrested in helping out?

Started by Skull, July 27, 2003, 05:51 PM

Previous topic - Next topic

Adron

Quote from: Skywing on August 05, 2003, 01:34 AM
Since most of the checking will have to be done with DeviceIoControl, perhaps you could 'train' it to work with a specific SecuROM version; for instance, record IOCTLs made with a "legitimate" CD and "fix up" these for a burned CD.

I did this for the D2 beta and it worked just fine. I'm sure it'll work for War3 too. I haven't fixed mine up for current version, but I wouldn't mind having one, it's annoying to have to find and insert the CD when you want to play. Lots of unnecessary wear on the disc.

Still, I don't think that no-cd cracks is something that belongs in a b.net server distribution. Having a hack for the server IP check is one thing, that's a must to fix up the compatibility issue between game and server. If all of your people need a no-cd crack to be able to play, then you're really just all about pirating? I thought there was a desire to produce something that was better than b.net too?




Adron

Btw, about the server IP authentication... Would it be possible to just hack winsock into always tell War3 that it was connecting to IP X where X was a b.net server IP and use a real, fixed hash that you got from that server?

Skull

#17
I guess it was. But I talked to some of the WF guys and hacking the dll and changing the one bit was always the easiest. Why fake it instead of just skipping the auth?
About the no-cd...no its not warez. A no-cd crack is used by the people who wants to play with their backup cd to keep their original cd unscrathed ;)
Warez is the game itself and PvPGN doesnt support warez. Just rogue servers with modding capabilities.
Hey Cup  ;D
Btw what realm are you guys in? Adron you said Bnet but what server and channel?
Cheers

Adron

The advantage of faking it would be that there's no need to make a new patch for every new version. Just what you were asking for...

About no-cd cracks: One of those should let you play without any cd at all. Not with a backup cd.

Skywing

Quote from: Adron on August 05, 2003, 12:13 PM
The advantage of faking it would be that there's no need to make a new patch for every new version. Just what you were asking for...

About no-cd cracks: One of those should let you play without any cd at all. Not with a backup cd.

Note that War3 might not use getpeername and may just save the IP it tried to connect to, so you may have to catch and rewrite that in more than one place.
Additionally, this would probably make the in-game server selector useless if you're just going to be overriding it always anyway. Maybe you could put a selector in the patcher itself.

Skull

Well I got someone else that answered this for you Adron and Sky as I couldn get this right so here it goes:

<Lord-Z> yeh but you'd technically spoof the ip
<Lord-Z> it encrypts not only the ip
<Lord-Z> but also a tickcount
<Lord-Z> passed by the client
<Lord-Z> we can obviously decrypt it
<Lord-Z> cause we got the public key
<Lord-Z> which is in the client
<Lord-Z> but the private key is server-side
<Lord-Z> so we can't possibly encrypt the right tick
<Lord-Z> and if you patch the tick, then you need a loader again :)
<`Skull> yes but for an emulated server will this be nescesarry?
<`Skull> to have both keys
<Lord-Z> yes
<Lord-Z> unless
<Lord-Z> you patch the public key in the client
<Lord-Z> but that also requires a loader :)

This should answer it....

iago

Ugh, it's so annoying when people press <enter> every 3 or 4 words.  
This'll make an interesting test for broken AV:
QuoteX5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*


Adron

#22
Ah, I was wondering if it encrypted the tick count from the client too. I guess faking it is out of the question then. Too bad.

Skywing

#23
Quote from: Adron on August 06, 2003, 06:01 AM
Ah, I was wondering if it encrypted the tick count from the client too. I guess faking it is out of the question then. Too bad.
Interesting.  My client currently only decrypts the server IP address; I suppose I'll update it some time.
Still, you could easily hook GetTickCount.
If they call it from multiple threads, you could try something like checking the threadid requesting a tick count and making a decision on whether to returrn the modified value or not.

Additionally since the public key doesn't change much in the client it would really be trivial to just search memory for the old key and patch in a new key.

Adron

Quote from: Skywing on August 06, 2003, 01:03 PM
Additionally since the public key doesn't change much in the client it would really be trivial to just search memory for the old key and patch in a new key.

*That* was a good idea. If that particular public key is only used for the server verification it should be very easy to make a generic hack to search for it in memory and replace it with one that authenticates your server.

Skull

So Skywing what you say is that making a request to see where the changes are and then auto patch it should work eh....
Well sounds like a good idea yea, lets just hope our loader guys actually still exsists *coughAdroncough*