• Welcome to Valhalla Legends Archive.
 

Battle.net Bot Restrictions

Started by Rasico, April 04, 2004, 07:25 PM

Previous topic - Next topic

Rasico

This should be the last thing I hope for a while, when I trace the outgoing packets from SC, I find that just 01 is being sent first (the protocol byte), this to me makes sense as thats 2 hex digits or 1 bye. But when I send &H1, I found out that two bytes have been sent out. Perhaps an explanation could be offered, thats confusing me and explained a lot about why things weren't working the way I thought they should be, thanks.

MyndFyre

#31
Post the packet data from the capture.
QuoteEvery generation of humans believed it had all the answers it needed, except for a few mysteries they assumed would be solved at any moment. And they all believed their ancestors were simplistic and deluded. What are the odds that you are the first generation of humans who will understand reality?

After 3 years, it's on the horizon.  The new JinxBot, and BN#, the managed Battle.net Client library.

Quote from: chyea on January 16, 2009, 05:05 PM
You've just located global warming.

Rasico

Since the test I conducted was me just sending data, it comes out to:
00000000   01 00

Yeah thats it, nothing more there. When I send &H1 I should just get 01, since thats simply one byte. I only sent half a byte technically, but since its in a character which is 1 byte, it should come out to be 01 instead of 1. Therefore, I am confused  :-[

Eli_1

How exactly did you do this? Did you try to use the packetbuffer class or just:

SOCKET.SendData Chr(1)

?

Rasico

odd, actually sending chr 1 worked, thats kinda funny. Why did that send only 1 byte, while sending &H1 sent two?

o.OV

#35
Quote from: Rasico on April 06, 2004, 12:23 AM
odd, actually sending chr 1 worked, thats kinda funny. Why did that send only 1 byte, while sending &H1 sent two?

Well..
two bytes is an integer..
 or a single character VB string..
   or a boolean..
BAH w/e
My guess is you are doing:

Winsock.Send &H1


..which is just a number which VB6 sees as an integer
and so saw it as two bytes in memory.
Add On: (I may be wrong if I am please correct me.)

Remember that a hex number is still just a number just represented differently.
Meaning..


&H1 = 1
1 = &H1
If the facts don't fit the theory, change the facts. - Albert Einstein

Eli_1

#36
Quote from: o.OV on April 06, 2004, 02:12 AM
Quote from: Rasico on April 06, 2004, 12:23 AM
odd, actually sending chr 1 worked, thats kinda funny. Why did that send only 1 byte, while sending &H1 sent two?

Well..
two bytes is an integer..
 or a single character VB string..
   or a boolean..
BAH w/e
My guess is you are doing:

Winsock.Send &H1

If that is what you did, you could stick to hex and fix it by changing that to:
Chr(&H1):-*

iago

If you do
winsock.send &h1

vb interprets it however it feels like, by what you said probably as a word which is 2 bytes.  When you make a char first, it knows it's only sending a single byte.
This'll make an interesting test for broken AV:
QuoteX5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*


Rasico

Yeah That makes sense, I didn't VB was going to interpret it as an integer, thanks  ;D

Rasico

Ok things are going well :D. Now since it needs a CD key, is there a way to pull the client's CD key from its location to send in, or am I going to have to write code to do that myself?

Eli_1

#40
I think it's stored somewhere in the registry, but the way most bots do it is to read information like that from a config (hint Config.txt). You could have the user input his information into the config.txt and then read from it using:

Open app.path & "\config.txt" for input as #1
' // Or
Dim Buffer as String
Open app.path & "\config.cfg" for binary access read as #1
Buffer = Space$(LOF(1))
Get #1, , Buffer
' // You only need this way if your config is going
' // to include 'undisplayable' characters -- such as Chr(0).
' // Also for some reason when you use For Input, it
' // seems to screw up when there's commas in the
' // data it's trying to input.

MyndFyre

Quote from: Rasico on April 06, 2004, 07:25 PM
Ok things are going well :D. Now since it needs a CD key, is there a way to pull the client's CD key from its location to send in, or am I going to have to write code to do that myself?

Hrm?

A couple things -- when nobody has posted since your last post, utilize the modify feature, so that you don't have two or three posts in a row.  It's something that we generally appreciate around here.

Second -- I'm not sure what your question means.  You will need to encrypt the CD key, most likely using BNLS.  You can get the CD key by presenting the user with a text box that asks for the user's CD key.  Other than that, I'm not exactly certain what you mean.
QuoteEvery generation of humans believed it had all the answers it needed, except for a few mysteries they assumed would be solved at any moment. And they all believed their ancestors were simplistic and deluded. What are the odds that you are the first generation of humans who will understand reality?

After 3 years, it's on the horizon.  The new JinxBot, and BN#, the managed Battle.net Client library.

Quote from: chyea on January 16, 2009, 05:05 PM
You've just located global warming.

Rasico

Quote from: Myndfyre on April 06, 2004, 07:35 PM
Quote from: Rasico on April 06, 2004, 07:25 PM
Ok things are going well :D. Now since it needs a CD key, is there a way to pull the client's CD key from its location to send in, or am I going to have to write code to do that myself?

Hrm?

A couple things -- when nobody has posted since your last post, utilize the modify feature, so that you don't have two or three posts in a row.  It's something that we generally appreciate around here.

Second -- I'm not sure what your question means.  You will need to encrypt the CD key, most likely using BNLS.  You can get the CD key by presenting the user with a text box that asks for the user's CD key.  Other than that, I'm not exactly certain what you mean.

Sorry about that, I'll do that in the future, and second I mean is there a way so the user doesn't have to, I already thought of making the user input it, come on give me some credit here.

MyndFyre

#43
Only if you can design a telepathic user interface.  However, that would still require the user knowing the CD key.

[edit]
This post may not be _comepletely_ accurate; I've heard of ways to extract the CD key data from the installed client.  However, I made the assumption that this technique would be outside the realm of this particular bot.
[/edit]
QuoteEvery generation of humans believed it had all the answers it needed, except for a few mysteries they assumed would be solved at any moment. And they all believed their ancestors were simplistic and deluded. What are the odds that you are the first generation of humans who will understand reality?

After 3 years, it's on the horizon.  The new JinxBot, and BN#, the managed Battle.net Client library.

Quote from: chyea on January 16, 2009, 05:05 PM
You've just located global warming.

Eli_1

#44
I already answered what you could do (read above myndfyre's post -- first sentence.), but note that not many users really want to use the same CDKey their game is installed with. For 90% of the users of your bot, they will want to have a bot loaded, and be on the client at the same time. If your bot is using the clients key, therefore stopping it from connecting, it will stop them from doing what they want.

[Edit] I just tryed looking through the registry, and I can't find the CDKey for SC (doesn't mean it's not there, I just can't find it).

|