• Welcome to Valhalla Legends Archive.
 

A few questions

Started by soccerist, January 20, 2003, 09:24 PM

Previous topic - Next topic

soccerist

I'd like to create my own binary C++ unix bot, but first I have a few questions I need clarification on.  

1.
What exactly is BotNet?  Is it a server we can test our bots on that emulates battle.net server?  And about the protocol specifications for BotNet... how are they the same, and different from BNLS? (I assume this is what the REAL battle.net uses).

2.
From reading around this forum I think my first steps are to get the socket connection part with the server.  

For it, I need to connect(), then send() & recv() packets following the protocol specifications to do all the stuff needed to log in.  I have to identify each packet and analyze them to do this.  Am I correct so far?



Just trying to get some guidance.  Thx.

soCC

Moonshine

#1
The BotNet (assuming you're talking about the vL one), is a seperate network of bots outside of bnet, not a bnet emulation.  It implements various features in which battle.net does not have such as: No flood protection whispering (not over bnet, but through the botnet), seeing what bots are in which channel, their info, etc.

goto: http://www.valhallalegends.com/files/BotNetProtocol.txt

For details.  And yes, you are correct in your assumption of the basic steps to perform a battle.net connection/login.

tA-Kane

#2
Read up on various documents at
http://botdev.valhallalegends.com/

Additionally, the Battle.net Logon Server (BNLS) protocol specification is here...
http://www.valhallalegends.com/yoni/BNLSProtocolSpec.txt


BotNet is much different from BNLS. You should read the protocol specs of each to see the differences.
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

soccerist

#3
Is BNLS Protocol the same protocol used to log into Battle.net ?

Moonshine

#4
No.

UserLoser

#5
BNLS is a separate server designed by Yoni + Skywing.  What it does is you send data, then it sends you back the correct hashed data you need to log onto Battle.net.  Using BNLS is easier, saves time, and will get you Warcraft III logins.

soccerist

#6
Does that mean you'll have to connect to BNLS every time you want to connect to Battle.net?  

If yes...I'm planning to use my bot that's totally independent of any middle-man server, so maybe that won't be much use to me.  *_*

Also, I read somewhere that bnet uses the SHA-1 hashing algorithm.  I'll see what I can with that.  Any tips anyone?


RhiNo

#7
QuoteDoes that mean you'll have to connect to BNLS every time you want to connect to Battle.net?  

If yes...I'm planning to use my bot that's totally independent of any middle-man server, so maybe that won't be much use to me.  *_*

Yes =\ so you will have to cut out the middle man as you said.

soccerist

#8
Is there a BNCS Protocol Spec around somewhere?  I know there are some of the packet ID's in BNLSProtocolSpec.txt.  Just having the (more complete) BNCS one would help my life a lot.  I'm just trying to sort through packets the hard way.  :(


Arta

#9
There is indeed!

As of today, Bnetdocs is available:

http://www.valhallalegends.com/arta/bnetdocs/

soccerist

#10
omg arta, you da man!

Haha.  I have like 5 pieces of paper back and front, with hex written all over them.  trying to figure out what is what.  lol.  (I am trying to do this without copying code)

I'm sure this is how the first person who figured out the stuff did it too.  

Thanks much.

soccerist

#11
Oh yeah.  1 thing.  I noticed there's no "official" way to log out.  Just closing the browser.  You might want to implement that.  Btw, Great job!
 ;D

Arta

Thanks :)

I'll probably add that when I implement user preferences, which will have colour schemes (just for kp), password change/recovery, that kind of thing .

Zakath

#13
Haha...Kp asked for customizable color schemes?
Quote from: iago on February 02, 2005, 03:07 PM
Yes, you can't have everybody...contributing to the main source repository.  That would be stupid and create chaos.

Opensource projects...would be dumb.

Arta

#14
Yeah, he's such a sissy ;)