How can I use local hashing? When I try to connect using local hashing, I get this:
...
[08:51:19.328] NOTICE: [BNET] Server successfully authenticated -- it's Blizzard's
[08:51:19.547] INFO: [BNET] Client token: ...
[08:51:19.585] INFO: [BNET] Version Hash: ...
[08:51:19.600] INFO: [BNET] Checksum: ...
[08:51:19.601] INFO: [BNET] CDKey owner: ...
[08:51:19.604] NOTICE: [BNET] CDKey and Version check sent.
[08:51:19.625] exceptions.InvalidVersion: [BNET] Invalid game version
[08:51:19.631] Login.getLogin(Login.java:180)
[08:51:19.632] PluginMain.processedPacket(PluginMain.java:328)
[08:51:19.633] pluginmanagers.PluginRegistration.processedIncomingPacket(PluginRegistration.java:722)
[08:51:19.634] bot.PacketThread.run(PacketThread.java:178)
I have the hashes in the .hashes folder and are up to date (from a live client).
The CDKeys are valid.
Using JavaOp 2.1.1.
BNetLogin->game is set to W3XP (which works when I use BNLS servers). If I try to use "Warcraft III: TFT" from the dropdown, I get:
[08:56:31.400] NOTICE: Bot 'PrivateBot' has been started.
[08:56:32.243] DEBUG: Entering disconnect()
[08:56:32.245] DEBUG: Entering connect()
[08:56:32.254] ALERT: [BNET] Unable to connect due to exception: exceptions.InvalidVersion: Game not found - warcraft iii: tft
I have googled around and looked in the archive but have found no solutions that don't involve BNLS (which I would like to avoid).
Unless I'm mistaken, JavaOp will still do local hashing for your keys and password even if you use BNLS. What's the big concern?
My bot reconnects around every two minutes before warden can disconnect it. No matter what BNLS server I use, every two or three reconnects I get the invalid game version error. My big concern is (stability)? unless the cause is something else.
To use W3X, type "w3xp" in the game client box. Apparently when I rewrote some code, I missed out on "warcraft iii: tft" in specific.
The invalid version error you're getting is stating that the hash files you're using are invalid. I can't tell you why -- that's a specific response code from Battle.net. The only thing that I can say is when you're using ROC with TFT installed, the game connects as TFT then sends a "change client" message, boiling down to, I don't think you can use TFT hashes with ROC, so changing to "w3xp" should fix it in that case.
Quote from: Joe on November 30, 2009, 06:22:13 AM
To use W3X, type "w3xp" in the game client box. Apparently when I rewrote some code, I missed out on "warcraft iii: tft" in specific.
The invalid version error you're getting is stating that the hash files you're using are invalid. I can't tell you why -- that's a specific response code from Battle.net. The only thing that I can say is when you're using ROC with TFT installed, the game connects as TFT then sends a "change client" message, boiling down to, I don't think you can use TFT hashes with ROC, so changing to "w3xp" should fix it in that case.
I have been using TFT by putting "W3XP" in the game client box, but when I try without a BNLS server I get the error. I have two valid CDKeys (1 ROC and 1 TFT), and have been using only TFT the whole time.
If my hashes are invalid and they are from a live client, should I use older ones?
I also found the verbyte for the hashes to be 17, while outside sources say it's 18. I change it to 18 and still get the error, so it's something else.
Quote from: Joe on November 30, 2009, 06:22:13 AM
The only thing that I can say is when you're using ROC with TFT installed, the game connects as TFT then sends a "change client" message, boiling down to, I don't think you can use TFT hashes with ROC, so changing to "w3xp" should fix it in that case.
Sorry if this is off-topic, but Battle.net doesn't actually care if you use SID_SWITCHPRODUCT. You can just log in as WAR3, even if you have W3XP hashes. Obviously, emulating client behavior as closely as possible is preferable, but I think this is a safe caveat to use since it's how D2XP logs in as D2DV, and the code is probably reused on the server.
My bot is no longer receiving warden packets so it does not reconnect. Problem solved for now, I guess.
What happened to warden? ???
It's basically a spying tool. They aren't always looking.
Quote from: Camel on November 30, 2009, 11:55:35 AM
Quote from: Joe on November 30, 2009, 06:22:13 AM
The only thing that I can say is when you're using ROC with TFT installed, the game connects as TFT then sends a "change client" message, boiling down to, I don't think you can use TFT hashes with ROC, so changing to "w3xp" should fix it in that case.
Sorry if this is off-topic, but Battle.net doesn't actually care if you use SID_SWITCHPRODUCT. You can just log in as WAR3, even if you have W3XP hashes. Obviously, emulating client behavior as closely as possible is preferable, but I think this is a safe caveat to use since it's how D2XP logs in as D2DV, and the code is probably reused on the server.
I stand corrected.
So, how come you could get on once, but you couldn't reconnect?
Quote from: Joe on December 02, 2009, 11:34:39 AM
Quote from: Camel on November 30, 2009, 11:55:35 AM
Quote from: Joe on November 30, 2009, 06:22:13 AM
The only thing that I can say is when you're using ROC with TFT installed, the game connects as TFT then sends a "change client" message, boiling down to, I don't think you can use TFT hashes with ROC, so changing to "w3xp" should fix it in that case.
Sorry if this is off-topic, but Battle.net doesn't actually care if you use SID_SWITCHPRODUCT. You can just log in as WAR3, even if you have W3XP hashes. Obviously, emulating client behavior as closely as possible is preferable, but I think this is a safe caveat to use since it's how D2XP logs in as D2DV, and the code is probably reused on the server.
I stand corrected.
So, how come you could get on once, but you couldn't reconnect?
I am not quite sure :-\