• Welcome to Valhalla Legends Archive.
 

logon sequence

Started by Laff, October 14, 2004, 04:24 PM

Previous topic - Next topic

Laff

i've searched the forums and bnetdocs for the war3/tft logon sequence with no luck.  i want to use bnls as well.  can someone gimme the sequence?  thanks.

BaDDBLooD

Send 0x50
Send 0x25
Send BNLS 0x09
Send BNLS 0x01/0x0C
Send 0x51
Send BNLS 0x02
Send 0x53
Send BNLS 0x03
Send 0x54
Send 0x0A/0x0B

I didn't include the recieve, i figured that would be ok.

There are only two kinds of people who are really fascinating: people who know absolutely everything, and people who know absolutely nothing.

UserLoser.

You have bad luck then.  Following the BNLS spec will help guide your way through it, along with using a simple packet logger to log Warcraft III (if you have it, that is).  The formats for some of the messages are available on the BNLS spec, but to get you started, you first send SID_AUTH_INFO (packet id 50h), after receiving that, then you can preceede to send SID_AUTH_CHECK (packet id 51h).  Depending on the results of SID_AUTH_CHECK from the server, that'll determine if you can send any more messages; if so, you'd send SID_AUTH_ACCOUNTLOGON (packet id 53h, look on BNLS spec on how to do this, [server must always tell you to use logon version 2 since actual Blizzard Warcraft III client disconnects when logon version != 2, so that's logical to assume.  Otherwise if this isn't 2, you'd use SID_LOGONRESPONSE (packet id 29h) or SID_LOGONRESPONSE2 (packet id 3Ah)]), then the response off this message yet again determines what your next message to the server must be (account create, logon proof required).  If logon proof required, you must send SID_AUTH_ACCOUNTLOGONPROOF (packet id 54h, yet again look on BNLS spec).  If account doesn't exist, your next message could be SID_AUTH_ACCOUNTCREATE (packet id 52h, BNLS spec on how to use) . Response of SID_AUTH_ACCOUNTLOOGNPROOF from server will tell you if you have successfully passed the logon challenege, password invalid, server failed to prove it knew your password, or notify you of an error tagged onto your account.  On success, you can then send SID_ENTERCHAT (packet id 0Ah, BnetDocs).  On invalid password, obviously you supplied a bad password.  To prove the server really knows your password, you can use BNLS for this (Don't know BNLS packet id offhand, so look it up).  If it failed to know your password, just attempt to relogon.

Sorc.Polgara

When I look back on how noob I was and stuff, it really wasn't as hard as I thought.

Yes, BNLSprotocol.txt or w/e and BnetDocs are the way to go.  Once you find your starting point, it should guide you the rest of the way. sequentially.

Blaze

#4
BNLS: Send 0x0E        Optional
BNLS: Receive 0x0E    Optional
BNLS: Send 0x0F        Optional
BNLS: Receive 0x0F    Optional
BNLS: Send 0x11
BNLS: Receive 0x11
BNET: Send 0x50
BNET: Recieve 0x25
BNET: Recieve 0x50
BNET: Send 0x25        Optional
BNLS: Send 0x09
BNLS: Receive 0x09
BNLS: Send 0x01
BNLS: Receive 0x01
BNET: Send 0x51
BNET: Recieve 0x51
BNLS: Send 0x02
BNLS: Receive 0x02
BNET: Send 0x53
BNET: Recieve 0x53
BNLS: Send 0x03
BNLS: Recieve 0x03
BNET: Send 0x54
BNET: Recieve 0x54
BNET: Send 0x0A
BNET: Recieve 0x0A
Quote
Mitosis: Haha, Im great arent I!
hismajesty[yL]: No

Laff

correct me if i'm wrong, but don't you send bnet a 0x01 first?

UserLoser.

Quote from: Laff on October 14, 2004, 07:56 PM
correct me if i'm wrong, but don't you send bnet a 0x01 first?

If you're emulating a game, then yes

Laff

so 2 people have given me 2 completely different logon sequences...what should i do...

Arta


Laff

i've got a packet sniffer that i made, but i don't have a bot.  got a link to a good one?  thanks.

TangoFour

I think they meant packetlog the actual client

In any case, I suppose Stealthbot is a good bot

http://www.stealthbot.net

UserLoser.

#11
Quote from: Laff on October 15, 2004, 01:31 AM
so 2 people have given me 2 completely different logon sequences...what should i do...

Yes, but their's doesn't support things like: If account requires upgrade, upgrade proof, doesn't exist, error, ect

Laff

Quote from: TangoFour on October 15, 2004, 12:24 PM
I think they meant packetlog the actual client

packetlogging warcraftiii won't help me at all with bnls ;)

TangoFour

I guess I misunderstood

But seriously - I managed to get my bot working fine (and by that I mean connected as WarCraft 3 and able to handle chat packets) by just using the BNLS specification

BaDDBLooD

Quote from: Laff on October 15, 2004, 01:31 AM
so 2 people have given me 2 completely different logon sequences...what should i do...

Dude.. i gave you the same thing he did, i just made you do a little work, he didn't.
There are only two kinds of people who are really fascinating: people who know absolutely everything, and people who know absolutely nothing.