• Welcome to Valhalla Legends Archive.
 

What's the difference between 0x3A and 0x29?

Started by tA-Kane, January 30, 2003, 10:09 PM

Previous topic - Next topic

tA-Kane

I've just started adding basic Diablo 2 support to my bot, and noticed that my Diablo 2 game client logs in using 0x3A instead of 0x29....

Does the windows Diablo 2 also use 0x3A to login?

And, what's the difference between the two?


Also, I've noticed that my D2 game client does not send an empty statstring when sending SID_ENTERCHAT, when the BnetDocs page on SID_ENTERCHAT states that all CDKeyed clients send a null statstring.
Macintosh programmer and enthusiast.
Battle.net Bot Programming: http://www.bash.org/?240059
I can write programs. Can you right them?

http://www.clan-mac.com
http://www.eve-online.com

tA-Kane

#1
I guess I had that one coming, lol... heh... ::)

Here's a better-worded topic question: What is different, regarding the packet formats, of 0x3A and 0x29.  :P
Macintosh programmer and enthusiast.
Battle.net Bot Programming: http://www.bash.org/?240059
I can write programs. Can you right them?

http://www.clan-mac.com
http://www.eve-online.com

UserLoser

#2
The format is the same, just the packet id is different.

Arta

#3
3A probably has additional return values, or something.

Mesiah / haiseM

#4
or something, hehe.

0x3A is the same exact format, but more detailed return values, basically.

im not sure if they accept id is the same as the old one, maybe im thinking of 0x3D...
]HighBrow Innovations
Coming soon...

AIM Online Status: 

Arta

#5
If you give me the return values I'll add the packet :)

tA-Kane

0x00: Logon Success
0x01: Account Does Not Exist
0x02: Incorrect Password

Obviously, the result codes are different.

/me wonders if 0x3A works on SEXP

...Yup, it works on SEXP   =]
Macintosh programmer and enthusiast.
Battle.net Bot Programming: http://www.bash.org/?240059
I can write programs. Can you right them?

http://www.clan-mac.com
http://www.eve-online.com

tA-Kane

The proper name of the packet (eg, SID_) is not listed on the SID_ list from the thread "useful information for bot developers"... that list was from STAR, wasn't it?

If that list was from STAR, then I would assume STAR doesn't support 0x3A. Perhaps someone could get the packet list from D2DV/D2XP? I'd do it myself, but I don't have the slightest clue as to how to do it on my Mac  =/
Macintosh programmer and enthusiast.
Battle.net Bot Programming: http://www.bash.org/?240059
I can write programs. Can you right them?

http://www.clan-mac.com
http://www.eve-online.com

tA-Kane

#8
Figured out why my Diablo 2 game client sends a non-null statstring with the SID_ENTERCHAT request; it seems that when you use 0x3A, Battle.net does not allow you into the chat database unless the character name is there.

I figured this out because I noticed that up to that point, my bot was doing everything exactly the same as the game. So I tried sending "," & Username as the statstring (which is what my Diablo 2 game client sent... "," & CharName, and is contrary to BnetDoc's SID_ENTERCHAT page), and Battle.net let me in  ;D

So the BnetDocs information on SID_ENTERCHAT is incorrect in stating that all CD-keyed products send a null statstring.  :P
Macintosh programmer and enthusiast.
Battle.net Bot Programming: http://www.bash.org/?240059
I can write programs. Can you right them?

http://www.clan-mac.com
http://www.eve-online.com

Arta

#9
Thanks, I'll look into that!

IIRC, 0x3A is SID_LOGONRESPONSE2.

tA-Kane

#10
Ewww, that'll teach me to not look at other packetlogs when I'm half-asleep  =/

Seems I was wrong about *requiring* a non-empty statstring... my bot's own packetlogs were reporting that it was sending 0x0A, when it in fact was not, until I had added the statstring. Seems there was a bug in the send queue, which made it not send data when the sendqueue (multiple packets) was under a certain length. Didn't notice that until just now, when I was screwing around with my connection, and noticed that when I disabled statstring, 0x0A+0x0C wouldn't send on my 0x0539 account, but would on my MacBinaryBot account (just that little difference).

/me feels slightly embarrassed
Macintosh programmer and enthusiast.
Battle.net Bot Programming: http://www.bash.org/?240059
I can write programs. Can you right them?

http://www.clan-mac.com
http://www.eve-online.com

Grok

#11
At the time I got on battle.net, April of 98, Dark Kingz was big and bad, and I was in this clan called SUN -- Starcraft United Nations.  It was a big gaming clan and had nobody who knew programming or hacking.  DK would steal our ops all the time by whispering us for our IP, then SYN attack us until we dropped ops.

It was because of them that I decided to write a bot.  There were only two bots in existence -- topaz chat and BNX bot, that I was aware of.  Since Lady Topaz never answered my requests for information on how to write a bot, and I didn't have a clue about network programming, I learned everything on my own.

Talking about a chat bot of course.  For a day or so I got off course, sort of, studying IRC and eggdrops, thinking that was what I needed to create.  Eventually I realized that battle.net was designed to emulate IRC somewhat.

As my bot got operational, I got tapped into WoLF, probably partly because of the bot, and their war with ]I[, which used a MIRC bot on battle.net by then.

I jumped to Royal Council and met Azure, Valor, Wizzbert, etc.  Then my bot was functional, held ops as good as BNX, and had one new feature -- automatic unban of members.

Because of multiple ops per channel then, someone could get ops on a split and ban your clan members.   So my bot would unban any member who was banned.  For a while, nobody else had that, and 'dark realm' was pretty secure.

Azure then wrote WoLF`C`Bot which for a very long time was the best chat ops-holder anywhere.

Then one day we're looking in The Void and saw like 40+ of these 'Soulburner' bots.  All the same name .. and when you squelched one they all got BRX.  And - they were not chat, they were DIABLO!!! OMG.  So we got all excited about that and then VALOR met Adron.  Sometime after that, nbbot took over and binary bots began their rule of bnet :)

</history lesson>

tA-Kane

#12
Nice history lesson...

/me ponders as to what the importance of the lesson is to the thread
Macintosh programmer and enthusiast.
Battle.net Bot Programming: http://www.bash.org/?240059
I can write programs. Can you right them?

http://www.clan-mac.com
http://www.eve-online.com

Arta

Hey, I arrived on bnet in '98 as well. I got Starcraft for my birthday that year in July (my 16th) and first logged onto bnet some time in August - Thus began a starcraft obsession that robbed me of good grades in my finals :)

tA-Kane

#14
<-- didn't come till '99. Played Starcraft demo for a month, during March, then payed $60 for the game. Twas the best overpriced thing I've received in my life so far...

I didn't try making my own bot until I got fed up with what I had at that time; a very clunky chat bot. Contacted the author of that bot, he told me how to connect to Battle.net, and from there, I just experimented.

mmm... /me reminisces
Macintosh programmer and enthusiast.
Battle.net Bot Programming: http://www.bash.org/?240059
I can write programs. Can you right them?

http://www.clan-mac.com
http://www.eve-online.com