• Welcome to Valhalla Legends Archive.
 

Packet Buffer

Started by BreW, August 16, 2006, 10:14 PM

Previous topic - Next topic

BreW

Alot of people told me its VERY hard to make a bot without one.
I want to take a shot at it, anyways.
Is it REALLY that hard? (btw im making my first bot)

for the first packet (an 0x05), what would be an appropriate value for the Client Token?
For the client ID, would I have to reverse the Dword name? (like turn SSHR over to RHSS)
I am really dumb and i get confused easily. Help?!

Hdx

Making a binary bot isn't THAT hard with all the information theses days. I can pull a basic connection from scratch in less then an hr.
Check the Repository forum for public packet buffers.
The client token is a random number that client makes, any number will do, cept 0, Last time I tryed that I got IPBanned :P
And yes, the Client ID is 'reversed' tho, you should refer to them as the dwords they are.
http://bnetdocs.valhallalegends.com/ all the info you would need.
~-~(HDX)~-~

Proud host of the JBLS server www.JBLS.org.
JBLS.org Status:
JBLS/BNLS Server Status

BreW

thanks, hdx. i have always been wondering what a binary bot really is.
+, i think i might have to use a packet buffer, because i do have no clue what i'm doing :/

l2k-Shadow

Quote from: BreW on August 17, 2006, 08:42 AM
thanks, hdx. i have always been wondering what a binary bot really is.
+, i think i might have to use a packet buffer, because i do have no clue what i'm doing :/

Packet buffer is not essential but in order to make your code worth awhile you should use one. If you don't know how to work with packets then I suggest don't try making a bot. bnetdocs has all the information you need in order to successfully make a bot, also you may want to use a hashing library such as BNCSUtil for CheckRevision and hashing functions. Make sure to correctly follow all login sequences. StarCraft sequence on bnetdocs is outdated:

Header byte 0x01
C->S 0x50
S->C 0x25
S->C 0x50
C->S 0x25 (Optional Ping Packet)
C->S 0x51
S->C 0x51
C->S 0x3A
S->C 0x3A
Create Account:
C->S 0x3D
S->C 0x3D
---------------
C->S 0x0A
C->S 0x0C


Those are all required packets to logon, there are a couple more that are optional to send. If you want to get that information, use a packet logger like Ethereal.
Also here is a packet buffer I wrote.

GL HF.
Quote from: replaced on November 04, 2006, 11:54 AM
I dunno wat it means, someone tell me whats ix86 and pmac?
Can someone send me a working bot source (with bnls support) to my email?  Then help me copy and paste it to my bot? ;D
Já jsem byl určenej abych tady žil,
Dával si ovar, křen a k tomu pivo pil.
Tam by ses povídaj jak prase v žitě měl,
Já nechci před nikym sednout si na prdel.

Já nejsem z USA, já nejsem z USA, já vážně nejsem z USA... a snad se proto na mě nezloběj.

UserLoser

Quote from: l2k-Shadow on August 17, 2006, 10:53 AM
Quote from: BreW on August 17, 2006, 08:42 AM
thanks, hdx. i have always been wondering what a binary bot really is.
+, i think i might have to use a packet buffer, because i do have no clue what i'm doing :/

Packet buffer is not essential but in order to make your code worth awhile you should use one. If you don't know how to work with packets then I suggest don't try making a bot. bnetdocs has all the information you need in order to successfully make a bot, also you may want to use a hashing library such as BNCSUtil for CheckRevision and hashing functions. Make sure to correctly follow all login sequences. StarCraft sequence on bnetdocs is outdated:

Header byte 0x01
C->S 0x50
S->C 0x25
S->C 0x50
C->S 0x25 (Optional Ping Packet)
C->S 0x51
S->C 0x51
C->S 0x3A
S->C 0x3A
Create Account:
C->S 0x3D
S->C 0x3D
---------------
C->S 0x0A
C->S 0x0C


Those are all required packets to logon, there are a couple more that are optional to send. If you want to get that information, use a packet logger like Ethereal.
Also here is a packet buffer I wrote.

GL HF.


The logon sequence for Starcraft on BnetDocs is outdated?  Since when and how so?

l2k-Shadow

Quote from: UserLoser on August 17, 2006, 02:01 PM
Quote from: l2k-Shadow on August 17, 2006, 10:53 AM
Quote from: BreW on August 17, 2006, 08:42 AM
thanks, hdx. i have always been wondering what a binary bot really is.
+, i think i might have to use a packet buffer, because i do have no clue what i'm doing :/

Packet buffer is not essential but in order to make your code worth awhile you should use one. If you don't know how to work with packets then I suggest don't try making a bot. bnetdocs has all the information you need in order to successfully make a bot, also you may want to use a hashing library such as BNCSUtil for CheckRevision and hashing functions. Make sure to correctly follow all login sequences. StarCraft sequence on bnetdocs is outdated:

Header byte 0x01
C->S 0x50
S->C 0x25
S->C 0x50
C->S 0x25 (Optional Ping Packet)
C->S 0x51
S->C 0x51
C->S 0x3A
S->C 0x3A
Create Account:
C->S 0x3D
S->C 0x3D
---------------
C->S 0x0A
C->S 0x0C


Those are all required packets to logon, there are a couple more that are optional to send. If you want to get that information, use a packet logger like Ethereal.
Also here is a packet buffer I wrote.

GL HF.


The logon sequence for Starcraft on BnetDocs is outdated?  Since when and how so?

Since 1.14, StarCraft client sends 0x3A and drops your connection if you use 0x29. Also you can no longer use 0x1E to logon as you could in the past.
Quote from: replaced on November 04, 2006, 11:54 AM
I dunno wat it means, someone tell me whats ix86 and pmac?
Can someone send me a working bot source (with bnls support) to my email?  Then help me copy and paste it to my bot? ;D
Já jsem byl určenej abych tady žil,
Dával si ovar, křen a k tomu pivo pil.
Tam by ses povídaj jak prase v žitě měl,
Já nechci před nikym sednout si na prdel.

Já nejsem z USA, já nejsem z USA, já vážně nejsem z USA... a snad se proto na mě nezloběj.

MysT_DooM

#6
im using 0x29 still....no problems for me...

edit: for sc there is no problem however for war2(0x1E), i dont know.


vb6, something about that combination of numbers and letters is sexy

l2k-Shadow

Hmm really? I remember trying to login with 0x29 dropped me but I do know that official client uses 0x3A now so it's better to use that.
Quote from: replaced on November 04, 2006, 11:54 AM
I dunno wat it means, someone tell me whats ix86 and pmac?
Can someone send me a working bot source (with bnls support) to my email?  Then help me copy and paste it to my bot? ;D
Já jsem byl určenej abych tady žil,
Dával si ovar, křen a k tomu pivo pil.
Tam by ses povídaj jak prase v žitě měl,
Já nechci před nikym sednout si na prdel.

Já nejsem z USA, já nejsem z USA, já vážně nejsem z USA... a snad se proto na mě nezloběj.

Networks

Quote from: BreW on August 16, 2006, 10:14 PM
Alot of people told me its VERY hard to make a bot without one.
I want to take a shot at it, anyways.
Is it REALLY that hard? (btw im making my first bot)

It's not a question of whether it's hard to make a bot without one, it's really a fact that it makes handling data you get much easier instead of using heavily redundant code. Many packetbuffers are great since they can easily take out strings, dwords, words using a simple function that even keeps track of the position of where it is in the data. Packetbuffers make life easier, simple.