Valhalla Legends Forums Archive | Battle.net Bot Development | To Any Newbies Or Critics

AuthorMessageTime
ChR0NiC
For the last possibly 36 hours (not in a row) I have been working on an Active X Control that is the same as CleanSlateBot except it has W3 support and is in my mind a little more user friendly. I made this for anyone who has nothing better to do than bash my work and for any people for example like this

[quote author=Unfortunate link=board=17;threadid=8169;start=0#msg75626 date=1092595489]
im working on a bot i just finished it ...
[/quote]
[quote author=Unfortunate link=board=17;threadid=8169;start=0#msg75628 date=1092596604]
o and do you know what packet it is
[/quote]

I know I will never replace Cuphead, but I hope my Active X Control can pick up where his left off, I posted it up on the web and made a little tutorial for it and urge anybody with questions about it to contact me on AIM. I have posted this up here, I have called this "BNLS Logon Control" and it is able to logon all clients including W3 and is able to change pw's, create accounts and is pretty stable and I am happy the way it turned out. I did not add Realm support because I did not feel it was necessary, and I didn't quite know in which way to handle it, especially if the users want to choose their characters from a list, so I left it up to them.

Edit: I might be doing updates for people who request them if there is a big enough interest here, but if not I will only leave the first version.
August 16, 2004, 7:29 PM
Eli_1
May God damn you to an eternal hell. :P
August 16, 2004, 7:46 PM
warz
Documentation could be more in depth. On a side note, that one rule is stupid. Anyone knows that when you release something you not only recieve, yes, some praise for doing so, but you recieve more than usual amounts of flames and criticism. Who's going to follow your rule anyways? The day I listen to a guy who justifies his reasons for releasing his own program and goes by the alias ChRoNiC is the day I will hopefully die.
August 16, 2004, 7:53 PM
ChR0NiC
Basically I meant if you hex it and claim it as your own may you burn in hell, and you have a very very bad attitude you know that? I had a small feeling that the only thing that would come of this is people going

[quote]
OMG YOU ARE JUST TRYING TO BE CUPHEAD AND NOBODY IS GOING TO USE IT AND I HOPE YOU DIE[/quote]

When all I was trying to do was be helpful and make an alternative to CSB, I thought maybe a new version or alternative is due.

[quote author=warz link=board=17;threadid=8185;start=0#msg75737 date=1092686009]
Documentation could be more in depth.
[/quote]

Suggestions then ?
August 16, 2004, 8:05 PM
The-Rabid-Lord
I have to say, I just used it and I think its good. We need something uptodate so us noobs that cant handle packets and hashing can use it :P
August 16, 2004, 8:11 PM
BaDDBLooD
Actually this has support to do your own packets =\
August 16, 2004, 8:15 PM
KkBlazekK
If this isn't backdoored this could be very usefull for noobs. I think that the construct packet idea is genius.

Edit:

Only one problem, There will be hundreds of idiots using this within a year
August 16, 2004, 8:16 PM
The-Rabid-Lord
[quote author=BaDDBLooD link=board=17;threadid=8185;start=0#msg75741 date=1092687339]
Actually this has support to do your own packets =\
[/quote]
So advanced people can do it aswell.
August 16, 2004, 8:17 PM
KkBlazekK
Add support for a custom packet being received...
August 16, 2004, 8:19 PM
ChR0NiC
[quote author=Kk)Blaze(kK link=board=17;threadid=8185;start=0#msg75744 date=1092687547]
Add support for a custom packet being received...
[/quote]

I did, you have to do it like this

[code]
Private Sub BNLSLogon1_HandlePackets(Data As String)

'Do your packet handling here :P it's in the tutorial

End Sub
[/code]

Edit: Forgot code tags :P
August 16, 2004, 8:20 PM
KkBlazekK
oops missed that...
August 16, 2004, 8:21 PM
iago
So, is it a) opensource or b) backdoored? None of the above is not a valid answer.
August 16, 2004, 8:26 PM
ChR0NiC
[quote author=iago link=board=17;threadid=8185;start=0#msg75748 date=1092688018]
So, is it a) opensource or b) backdoored? None of the above is not a valid answer.
[/quote]

[me=ChR0NiC]cries :'([/me]

Since I am sure Skywing keeps a log of all the logins that go through BNLS I guess it's backdoored :P
August 16, 2004, 9:11 PM
TangoFour
Too bad I already started on my Java bot or I would've used this as a replacement for CleanSlateBot.

Then again, at least Java is something I'm good at, and I find it easier to debug

Still, nice job
August 16, 2004, 9:13 PM
UserLoser.
[quote author=ChR0NiC link=board=17;threadid=8185;start=0#msg75757 date=1092690699]
[quote author=iago link=board=17;threadid=8185;start=0#msg75748 date=1092688018]
So, is it a) opensource or b) backdoored? None of the above is not a valid answer.
[/quote]

[me=ChR0NiC]cries :'([/me]

Since I am sure Skywing keeps a log of all the logins that go through BNLS I guess it's backdoored :P
[/quote]

doubtful. valhallalegends.com should have run out of space on it's HD ages ago, or was that why they moved everything to a new server and left BNLS on it's own? :P
August 16, 2004, 9:17 PM
iago
[quote author=TangoFour link=board=17;threadid=8185;start=0#msg75758 date=1092690821]
Too bad I already started on my Java bot or I would've used this as a replacement for CleanSlateBot.

Then again, at least Java is something I'm good at, and I find it easier to debug

Still, nice job
[/quote]

if you need hashing stuff for Java, contact me and I'll tell you where to get it. I don't mind sharing mine. If you want to do it yourself, even better! :)
August 16, 2004, 9:29 PM
TangoFour
I'm currently relying on BNLS actually - I failed a class on Algorithm design and analysis last year so I won't even try tacking hashing algorithms until I finish that class this year
August 16, 2004, 9:37 PM
iago
[quote author=TangoFour link=board=17;threadid=8185;start=15#msg75766 date=1092692229]
I'm currently relying on BNLS actually - I failed a class on Algorithm design and analysis last year so I won't even try tacking hashing algorithms until I finish that class this year
[/quote]

Algorithm classes suck. I would have failed mine, but everybody else did worse than me and I rode the curve :)

Like I said, I have working hashing code which I don't mind people using, all you have to do is ask.
August 16, 2004, 9:50 PM
R.a.B.B.i.T
[color=red]R.a.B.B.i.T asks[/color]

Wait...I don't use Java..what would I do with Java hashing code?

Oo...erm
August 16, 2004, 10:46 PM
ChR0NiC
Pffffffffft, back on topic damn you *shakes fist*

You people start using my OCX or I'll throw half cooked muffins at you >:(
August 16, 2004, 10:47 PM
Adron
[quote author=ChR0NiC link=board=17;threadid=8185;start=15#msg75794 date=1092696428]
You people start using my OCX or I'll throw half cooked muffins at you >:(
[/quote]

You are obviously in the early stages of software development. Remember this time when you're swamped with support requests from stupid users.
August 16, 2004, 11:07 PM
ChR0NiC
[quote author=Adron link=board=17;threadid=8185;start=15#msg75803 date=1092697670]
You are obviously in the early stages of software development. Remember this time when you're swamped with support requests from stupid users.
[/quote]

*shivers*
[me=ChR0NiC]throws a half cooked muffin at Adron[/me]
August 16, 2004, 11:12 PM
KkBlazekK
[quote author=ChR0NiC link=board=17;threadid=8185;start=15#msg75806 date=1092697951]
[me=ChR0NiC]throws a half cooked muffin at Ardon[/me]
[/quote]

You shouldn't threw un-cooked food at admins. They might be poisoned.
August 17, 2004, 2:39 AM
Newby
[quote author=Kk)Blaze(kK link=board=17;threadid=8185;start=15#msg75844 date=1092710355]
[quote author=ChR0NiC link=board=17;threadid=8185;start=15#msg75806 date=1092697951]
[me=ChR0NiC]throws a half cooked muffin at Ardon[/me]
[/quote]

You shouldn't threw un-cooked food at admins. They might be poisoned.
[/quote]
Ardon isn't an admin though. :)
August 17, 2004, 4:35 AM
BaDDBLooD
[quote author=Newby link=board=17;threadid=8185;start=15#msg75866 date=1092717303]
[quote author=Kk)Blaze(kK link=board=17;threadid=8185;start=15#msg75844 date=1092710355]
[quote author=ChR0NiC link=board=17;threadid=8185;start=15#msg75806 date=1092697951]
[me=ChR0NiC]throws a half cooked muffin at Ardon[/me]
[/quote]

You shouldn't threw un-cooked food at admins. They might be poisoned.
[/quote]
Ardon isn't an admin though. :)
[/quote]

Exactly! :)
August 17, 2004, 4:36 AM
ChR0NiC
Damn it, that's almost as embarrassing misspelling Adron as how GosuGaming spelled Grok as Gork :'(
August 17, 2004, 4:40 AM
BaDDBLooD
Naw, gork is much much funnier. I suppose that's because it reminds me of a Gerkin...
August 17, 2004, 4:46 AM
KkBlazekK
[quote author=BaDDBLooD link=board=17;threadid=8185;start=15#msg75873 date=1092718008]
Naw, gork is much much funnier. I suppose that's because it reminds me of a Gerkin...
[/quote]

It takes quite a bit of effort to spell a fuor letter word wrong ;D
August 17, 2004, 11:08 PM
Grok
[quote author=UserLoser. link=board=17;threadid=8185;start=0#msg75759 date=1092691069]
[quote author=ChR0NiC link=board=17;threadid=8185;start=0#msg75757 date=1092690699]
[quote author=iago link=board=17;threadid=8185;start=0#msg75748 date=1092688018]
So, is it a) opensource or b) backdoored? None of the above is not a valid answer.
[/quote]

[me=ChR0NiC]cries :'([/me]

Since I am sure Skywing keeps a log of all the logins that go through BNLS I guess it's backdoored :P
[/quote]

doubtful. valhallalegends.com should have run out of space on it's HD ages ago, or was that why they moved everything to a new server and left BNLS on it's own? :P
[/quote]

That WAS becoming a problem, until December last year we upgraded the server to make more room.

[img]http://www.sgi.com/products/storage/images/storage_index.jpg[/img]
August 19, 2004, 11:24 PM
BaDDBLooD
SweeT!
August 20, 2004, 1:21 AM
KkBlazekK
Thats a pretty nice looking machine... Can I get the specs?
August 20, 2004, 9:08 PM
MindArchon
Add Profiles and it will make me happy :)
August 22, 2004, 1:51 PM
ChR0NiC
[quote author=MindArchon link=board=17;threadid=8185;start=30#msg76775 date=1093182678]
Add Profiles and it will make me happy :)
[/quote]

Right, I totally spaced about profiles ha ha. It'll be done very soon, I'll post here when it's been updated.

Edit: I have just been informed that, the way CSB handles profile is a little too complex for newbs, so if anyone has any suggestions of a way I could present the profile keys to you and it be newby friendly, let me know.
August 22, 2004, 7:34 PM
tA-Kane
.getProfile(Username As String, Game As Integer) gets the normal stuff (age, sex, location, description) for the username, plus the record for the game provided (or no record if game is zero), and Keys is an array of custom keys to use. No messing with any sort of keys to remember or anything.

and then use function overloading for the "more advanced" function:

.getProfile(Username As String, Keys() As String) gets the profile using the keys provided (dunno if VB allows passing arrays or not, but Keys is supposed to be an array).

Something like that.

On result, you use something like so:

[code]Class Profile
Username As String
Values(-1) As String
Keys(-1) As String
End Class[/code]

You fill Username with the username requested, keys with the array of keys used, and values with the returned values for the corresponding keys (so Values(1234) would be the value for Keys(1234))

etc etc

simple & easy enough


Be sure that using the first of the two will result in listing the keys in the result, so that the user can see what keys got what result, if they wanted to learn.

Also, be sure to provide documentation as to which array indice is what key for each game, so that if people don't want to check keys, but only check values, they will know what array indice to look at.
August 22, 2004, 7:52 PM
ChR0NiC
Pending no objections, I think I got myself a way to do it, thanks Kane :)
August 22, 2004, 9:48 PM
shadypalm88
A possible other way to do this would be using a Collection, with the profile field names as the keys. Then you could just do:[code]Dim C As Collection
Set C = Bot.GetProfile(Username)
txtAge = C("Age")
'etc ...[/code]Also, you might want to have a function for getting account stats, e.g. account created.

[edit]Typo.[/edit]
August 22, 2004, 9:52 PM
tA-Kane
[quote author=ChR0NiC link=board=17;threadid=8185;start=30#msg76884 date=1093211334]
Pending no objections, I think I got myself a way to do it, thanks Kane :)
[/quote] Have fun ;)

[quote author=shadypalm88 link=board=17;threadid=8185;start=30#msg76885 date=1093211538]Also, you might want to have a function for getting account stats, e.g. account created.[/quote]Assuming he uses the way I presented, it would be quite simple using the "advanced" function rather than the generic function. That is, provide your own key ("System\Account Created"). Like so:

[code]Sub GetAccountCreated(Username As String)
Dim Key(0) As String
Key(0) = "System\Account Created"
WhateverYourObjectIsNamed.GetProfile(Username, Key)
End Sub[/code] Then you simply wait for Battle.net to reply and then check the resulting data.
August 22, 2004, 10:42 PM
shadypalm88
[quote author=tA-Kane link=board=17;threadid=8185;start=30#msg76895 date=1093214564]Assuming he uses the way I presented, it would be quite simple using the "advanced" function rather than the generic function.[/quote]

[quote author=ChR0NiC link=board=17;threadid=8185;start=30#msg76843 date=1093203295]I have just been informed that, the way CSB handles profile is a little too complex for newbs, so if anyone has any suggestions [...]
[/quote]
Just trying to make it simple. ;)
August 22, 2004, 11:22 PM
R.a.B.B.i.T
I thought that you could only access the System\ keys for your own account? It would be easier to use, say, GetAccountInfo() as opposed to requiring the user to find and then request the System keys.
August 23, 2004, 5:36 AM
ChR0NiC
[quote author=R.a.B.B.i.T link=board=17;threadid=8185;start=30#msg76956 date=1093239366]
I thought that you could only access the System\ keys for your own account? It would be easier to use, say, GetAccountInfo() as opposed to requiring the user to find and then request the System keys.
[/quote]

True, maybe I could just do .GetAccountInfo() being that you can only request your own keys. Good point rabbit.
August 23, 2004, 6:23 PM
MindArchon
I suggest that you allow .send to only work when your connected. Or else you get wrong protocol errors
August 23, 2004, 10:21 PM
Myndfyr
[quote author=ChR0NiC link=board=17;threadid=8185;start=30#msg76884 date=1093211334]
Pending no objections, I think I got myself a way to do it, thanks Kane :)
[/quote]

Yes, user profiles were somewhat tough to implement in a way that was intuitive for a library. I think I came up with something along these lines --

The ArmaBot.Bncs.UserProfile class has a bunch of different constant strings. The strings are the profile keys "profile\age", etc.

Different constructors on the class set up the request differently. Essentially a user creates an instance of UserProfile with a specified constructor, and then can add keys to request if so desired (but the keys should be the constant fields). The user then passes the instance of the UserProfile class to the connection manager, which creates the appropriate packet to send. The connection manager can support up to ten profile requests at one time, and when profile request responses are returned, the appropriate instance is taken from an internal collection (based on the cookie) and parsed. Parsing is possible because the UserProfile instance maintains a list of the requested keys and the order in which they were requested, and since some keys return strings, while others return numeric data, the incoming data stream has the appropriate function called based on the current key. The key collection is looped over.

The UserProfile class then acts like an associative array. Say I have a user profile instance called "myProfile":

C#:
[code]
// the as <type> operator is COOL!
string szAge = myProfile[UserProfile.PROFILE_AGE_KEY] as string;
[/code]
VB.NET:
[code]
Dim szAge As String
szAge = CType(myProfile[UserProfile.PROFILE_AGE_KEY], String)
[/code]

Keys that were not requested but are known to be valid return an empty string. Keys that are not valid cause an ArgumentOutOfRangeException to be thrown.

NOTE: This is all as I remember. It's been a long time since I've worked on my profile code, and I don't have it in front of me.

That said, this is generally how I settled on doing things. Don't know if you've finished up yet, but maybe it will help you out. :)
August 23, 2004, 11:43 PM
ChR0NiC
I had to release a fix version, because there were a few reported bugs, for more details visit here
August 24, 2004, 5:03 AM
DarkSoldier
Ok, i've got a little problem with your login control: everytime i want to login, i get disconnected and banned from battle.net... i don't get an error only: bnls disconnected...
Maybe you know why i get this....and i thought with that control i can't do anything wrong >_>

this little problem happens if i try to connect with wc3, tft, d2, lod (never tried sc)
i use original keys (what else...) and the gameshortvuts are ok....key seems to be ok, too (i can connect to battle.net, but after i am connected to it i get diconnected).
my account already exists, pw is also right.
August 24, 2004, 9:29 AM
Soul Taker
[quote author=DarkSoldier link=board=17;threadid=8185;start=30#msg77128 date=1093339791]
key seems to be ok, too (i can connect to battle.net, but after i am connected to it i get diconnected).
[/quote]
If you use an invalid key, you will connect, then be IP banned after sending said invalid key.
August 24, 2004, 10:02 AM
DarkSoldier
no1 is too dump to enter a key about 25 times wrong oO
I have wc3 tft d2 and lod original....all that keys work if i connect with d2 or wc3....

just the bot gets disconnected...

[EDIT
If i would use an invalid key, i would get an error message, wouldn't i?
August 24, 2004, 10:29 AM
Soul Taker
[quote author=DarkSoldier link=board=17;threadid=8185;start=45#msg77136 date=1093343356]
no1 is too dump to enter a key about 25 times wrong oO
I have wc3 tft d2 and lod original....all that keys work if i connect with d2 or wc3....

just the bot gets disconnected...

[EDIT
If i would use an invalid key, i would get an error message, wouldn't i?
[/quote]
If you enter it incorrectly once, you get banned. All attempts after that within the ban time will result in your being disconnected.

And I don't know if you would get an error, I did not write your bot.
August 24, 2004, 1:46 PM
Kp
[quote author=DarkSoldier link=board=17;threadid=8185;start=45#msg77136 date=1093343356]If i would use an invalid key, i would get an error message, wouldn't i?[/quote]

Your question is unclear. Are you inquiring whether your client will display an error (which no one without your source code could answer) or whether the server will indicate to the client that there has been an error (such as a binary message with a data payload indicating bogus key)?
August 24, 2004, 2:05 PM
DarkSoldier
hmm i thoght that battle.net will send that error (the errormessage with the errornumber) if i use the bnls logon control.

and @Soul Taker:
i know that every login-attemp will fail after getting banned from b.net....
August 24, 2004, 4:54 PM
ChR0NiC
There were a few bugs in the code, I am sorry about this. Please redownload the OCX here

I posted details about the problems there were on the news page here

Edit: Although there were some corrections to the code, I am not calling this an official update, this is still known as 1.0, again I am sorry for anybody this may have inconvenienced.
August 24, 2004, 6:59 PM
ChR0NiC
[quote author=DarkSoldier link=board=17;threadid=8185;start=45#msg77189 date=1093380238]
hm i redownloaded it and replaced it, but i still get disconnected...
[/quote]

Please provide some details, are you sure you deleted the old one from your project and readded the new OCX? Are you sure the project updated the OCX?

Since the vL members are probably getting pissed off about this thread, better message me on AIM or if you only have MSN you can PM me for that info.
August 24, 2004, 8:47 PM
Newby
For some odd reason, I entered 2-3 invalid keys before and never got banned for it.

So eh?
August 24, 2004, 11:08 PM
bethra
heh cool, haven't tried it... don't plan too though.

I'd rather learn myself. CSB seem cheap to me... I guess this would too.

Learning yourself > taking the easy way out. Thats the way I want to do it, learn myself. ofc with peoples help, but not peoples .ocx
August 25, 2004, 4:49 AM

Search