Valhalla Legends Forums Archive | Battle.net Bot Development | I am making a bot in REALBasic

AuthorMessageTime
eBeL
I am working on a bot that allows you to join private channels and moderate then, similar to Kanebot. Currently you can log in but it uses Chat instead of Starcraft or any other game.

My questions are:
1. How can I have Battle.net identify my bot as Starcraft?
2. How do I send a CD-Key to Battle.net so I can join private channels?
3. Is there any way to have colored chat messages?
4. I am using a listbox for the data I am receiving, how can I use an edit field?
5. How can I have it display (The incoming data) instead of displaying 1005 Talk Username [SEXP] "Hello" , have it display Username: Message?

This will be compiled for OSX and Windows, here is what i am using for my source code: (DATAIN is the listbox)
NOTE: I have not gotten very far and this is my very first bot.

[code]Window1.pbC.Action:
Sub Action()
bnet.connect
End Sub

Window1.Bnet.DataAvailable:
Sub DataAvailable()
datain.addrow me.readall
datain.listindex = datain.lastIndex
End Sub

Window1.Bnet.Connected:
Sub Connected()
me.write chr(3) + chr(4)

me.write name.text
me.write chr(13) + chr(10)

me.write pass.text
me.write chr(13) + chr(10)

End Sub

Window1.PushButton2.Action:
Sub Action()
bnet.write efsay.text + chr(13) + chr(10)
datain.addrow efsay.text
efsay.text=""
End Sub

[/code]
August 7, 2004, 6:24 PM
Luxer
You are going to have to use BNLS. Search the board.
August 9, 2004, 1:46 AM
Eli_1
[quote author=Luxer link=board=17;threadid=8064;start=0#msg74656 date=1092015965]
You are going to have to use BNLS. Search the board.
[/quote]

Why does he have to use BNLS?
August 9, 2004, 2:09 AM
BaDDBLooD
[quote author=Eli_1 link=board=17;threadid=8064;start=0#msg74658 date=1092017348]
[quote author=Luxer link=board=17;threadid=8064;start=0#msg74656 date=1092015965]
You are going to have to use BNLS. Search the board.
[/quote]

Why does he have to use BNLS?
[/quote]

I Believe he said that because Real basic isn't that "advanced" shall we say.

EDIT: i heard this from quite a few people, i may be wrong though!
August 9, 2004, 3:49 AM
Eternal
RB is quite capable of fulfilling a BNLS or Hash connection.
August 9, 2004, 6:38 AM
Luxer
Geez... The point is YOU NEED TO HASH THE CDKEY AND IT IS OVER YOUR HEAD EBEL!
August 9, 2004, 2:13 PM
eBeL
[quote author=Luxer link=board=17;threadid=8064;start=0#msg74723 date=1092060787]
Geez... The point is YOU NEED TO HASH THE CDKEY AND IT IS OVER YOUR HEAD EBEL!
[/quote]

Hey, you don't understand it either, this weekend im going to buckle down and conquer it. (hopefully)
August 9, 2004, 2:59 PM
St0rm.iD
It's not that hard if you don't need to reverse the algorithm.
August 9, 2004, 3:45 PM
eBeL
How do u use BNLS lol? wat all that with the packets, it all confuses me :S
August 9, 2004, 4:29 PM
Myndfyr
[quote author=eBeL link=board=17;threadid=8064;start=0#msg74731 date=1092068942]
How do u use BNLS lol? wat all that with the packets, it all confuses me :S
[/quote]

On a somewhat related note... If you're using a telnet-type CHAT connection to log into Battle.net now, you can use Binary Gateway 3, which will allow you to use your software generally unmodified (just connecting to localhost rather than, say, useast.battle.net). You have to set up BG3 with the program and the type of connection you want.

Luxer: stop being an unhelpful lame-ass. The fact that I'm saying this and not PMing it to you will probably speak loads to the regulars who know me. If you're going to be an asshole to people who are just as new to the forums as you, take a hike and go find your information and help somewhere else.
August 9, 2004, 5:19 PM
tA-Kane
eBeL, going from a CHAT connection to a binary connection is quite a difference. I recommend you get your feet running with a CHAT connection before you undertake a binary connection. Try to keep most (or better, all) of your interface stuff separate from your connection stuff, that will help later.

Luxer, no need to bash eBeL when I know that what you're bashing him for could very well be applied to yourself. Also, you should note that it's against the forum guidelines to bash him in the first place.
August 9, 2004, 6:06 PM
St0rm.iD
[quote author=Luxer link=board=17;threadid=8064;start=0#msg74723 date=1092060787]
Geez... The point is YOU NEED TO HASH THE CDKEY AND IT IS OVER YOUR HEAD EBEL!
[/quote]

https://davnit.net/bnet/vL/phpbbs/index.php?board=17;action=display;threadid=7770
August 9, 2004, 8:50 PM
Maddox
[quote author=Myndfyre link=board=17;threadid=8064;start=0#msg74748 date=1092071942]
[quote author=eBeL link=board=17;threadid=8064;start=0#msg74731 date=1092068942]
How do u use BNLS lol? wat all that with the packets, it all confuses me :S
[/quote]

On a somewhat related note... If you're using a telnet-type CHAT connection to log into Battle.net now, you can use Binary Gateway 3, which will allow you to use your software generally unmodified (just connecting to localhost rather than, say, useast.battle.net). You have to set up BG3 with the program and the type of connection you want.

Luxer: stop being an unhelpful lame-ass. The fact that I'm saying this and not PMing it to you will probably speak loads to the regulars who know me. If you're going to be an asshole to people who are just as new to the forums as you, take a hike and go find your information and help somewhere else.
[/quote]

There is no OSX port of BG3.
August 10, 2004, 8:10 AM
eBeL
So does this mean I am out of luck with the BG3 or is there something similar for OSX?

How did you go about getting on Battle.net Keith?

I have the basic understandings on connecting as CHAT, the client I made works fine! :P
August 10, 2004, 11:48 PM
Myndfyr
[quote author=Maddox link=board=17;threadid=8064;start=0#msg74863 date=1092125408]
[quote author=Myndfyre link=board=17;threadid=8064;start=0#msg74748 date=1092071942]
[quote author=eBeL link=board=17;threadid=8064;start=0#msg74731 date=1092068942]
How do u use BNLS lol? wat all that with the packets, it all confuses me :S
[/quote]

On a somewhat related note... If you're using a telnet-type CHAT connection to log into Battle.net now, you can use Binary Gateway 3, which will allow you to use your software generally unmodified (just connecting to localhost rather than, say, useast.battle.net). You have to set up BG3 with the program and the type of connection you want.

Luxer: stop being an unhelpful lame-ass. The fact that I'm saying this and not PMing it to you will probably speak loads to the regulars who know me. If you're going to be an asshole to people who are just as new to the forums as you, take a hike and go find your information and help somewhere else.
[/quote]

There is no OSX port of BG3.
[/quote]

Ahh tis true! My bad :) I was confused by his signature.... ;)

[edit] IIRC, he can run BG3 on a Windows machine and have his OS X CHAT bot connect to the Windows machine... :P
August 11, 2004, 12:22 AM
eBeL
I dont have a windows machine :(
August 11, 2004, 1:05 AM
tA-Kane
Use Virtual PC.

Or write your own binary gateway.

Either will work.
August 11, 2004, 5:09 PM
eBeL
[quote author=tA-Kane link=board=17;threadid=8064;start=15#msg75041 date=1092244157]
Use Virtual PC.

Or write your own binary gateway.

Either will work.
[/quote]
1. I dont know binary
2. Virtual PC costs 250+$$$
Im only 14 and dont have a job, how can I afford this?
August 11, 2004, 8:25 PM
Eli_1
[quote author=eBeL link=board=17;threadid=8064;start=15#msg75078 date=1092255925]
[quote author=tA-Kane link=board=17;threadid=8064;start=15#msg75041 date=1092244157]
Use Virtual PC.

Or write your own binary gateway.

Either will work.
[/quote]
1. I dont know binary
2. Virtual PC costs 250+$$$
Im only 14 and dont have a job, how can I afford this?
[/quote]

00111110 01100101 01101011 01101111 01101010 00101111 00111100 00100000 01010000 00111010 00100000 00100001 01111001 01110010 01100001 01101110 01101001 01100010 00100000 01110111 01101111 01101110 01101011 00100000 01001001

Anyway, I believe a "binary gateway" works as sort of a proxy and translates binary packets sent to you from battle.net to their CHAT protocol equivalent, and vise versa.

e.g.
C -> BinaryGateway
Winsock.SendData "wo0t" & vbCrLf

BinaryGateway -> S
FF 0E 09 00 77 6F 30 74 00
ÿ...wo0t.
August 11, 2004, 11:09 PM
eBeL
that makes no sense
August 12, 2004, 12:51 AM
Kp
[quote author=eBeL link=board=17;threadid=8064;start=15#msg75107 date=1092271888]that makes no sense[/quote]

A tip for you: if you're going to complain that you don't understand something, specify exactly what you don't understand. Quote the specific section you had trouble comprehending. Also, minor point, but if it really didn't make any sense, regulars would've flamed and/or corrected the post. Therefore, we can safely conclude instead that it is you who lack the sense to understand what has been freely given.
August 12, 2004, 1:12 AM
eBeL
Okay we will try it your way, I do not understand what a Binary Gateway is or how to get one.

And what is this? I do not know how to use this or what it does even:

C -> BinaryGateway
Winsock.SendData "wo0t" & vbCrLf

BinaryGateway -> S
FF 0E 09 00 77 6F 30 74 00
ÿ...wo0t.
August 12, 2004, 3:13 PM
tA-Kane
Virtual PC can be gotten without paying for it..., like all things... ;)
[quote author=eBeL link=board=17;threadid=8064;start=15#msg75210 date=1092323611]Okay we will try it your way, I do not understand what a Binary Gateway is or how to get one.[/quote]A Binary Gateway is a third party server which translates a CHAT connection to and from a binary connection (such as a StarCraft connection).

CHAT Bot <-> BinaryGateway <-> StarCraft Server

CHAT Bot connects to BinaryGateway. BinaryGateway connects to the StarCraft server (Battle.net). Once connected, the BinaryGateway sends the "normal" login prompt to the CHAT bot, to trigger the bot's username and password mechanism (if it wasn't triggered upon connecting). The BinaryGateway then receives the username and password and does the binary hashing stuff, and sends that to the StarCraft server.

Once logged in, the BinaryGateway sends 2010 NAME (username) to the CHAT bot.

The BinaryGateway translates the event packets (packet ID 0x0F) into the textual events that the CHAT bot expects.

The CHAT Bot simply sends what it wants to say. The BinaryGateway translates that into sent chat events.

All during this, the BinaryGateway silently handles things that a CHAT connection doesn't see, such as advertisement changes.

[quote author=eBeL link=board=17;threadid=8064;start=15#msg75210 date=1092323611]And what is this? I do not know how to use this or what it does even:

C -> BinaryGateway
Winsock.SendData "wo0t" & vbCrLf

BinaryGateway -> S
FF 0E 09 00 77 6F 30 74 00
ÿ...wo0t.
[/quote]That's Eli's "short, sweet, and to-the-point" way of describing to you what I just described above. Think of C as the Client (CHAT bot), and S as the Server (StarCraft server; Battle.net). Client sends to BinaryGateway "wo0t" & vbCrLf. BinaryGateway receives that and translates that into the sent chat packet (FF 0E 09 00 77 6F 30 74 00), and sends it to the Server.
August 12, 2004, 4:26 PM
eBeL
so is Binary Gateway something I connect to? Or is it something you build into your bot or what...
August 12, 2004, 5:01 PM
tA-Kane
It could be either. One of the really old (from about 2 1/2 years ago) versions of my bot would allow a CHAT bot to "take over" the binary connection that my bot had already stolen from StarCraft. That was just like Binary Gateway. I want to be able to do that again in my newer bot.

The Binary Gateway that most people here are referring to, however, is a separate program.
August 12, 2004, 5:58 PM
Myndfyr
Hrm. It occurs to me that, with the release of the .NET SSCLI (Shared Source Common Language Infrastructure) for Mac OS X, I might just be able to write something of a BG for Mac using my bot. ;)

That would be an interesting endeavor.... Since I don't have a Mac to test it with especially. :/

I'll let you know if I write one, though. :)
August 12, 2004, 6:24 PM
tA-Kane
My bot compiles for Mac OS X, but I don't have Mac OS X to test it with... ;)
August 12, 2004, 7:29 PM
eBeL
Would you mind if we talked on AIM for a while? I have a few questions.
August 12, 2004, 7:45 PM
tA-Kane
Sure, I'm Kanezor on AIM. Who're you?
August 13, 2004, 7:28 PM
eBeL
Ebel3003
August 13, 2004, 7:29 PM

Search