I have a packet buffer, Then I am gonna have to rewrite the Send Packet codes and then maybe I will be able to do it. I am still kinda stumped on how to obtain the server and client token.. lol.
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Show posts MenuQuote from: MyndFyre on July 19, 2005, 02:27 AMQuote from: Jaquio on July 19, 2005, 02:17 AM
Doulbe-posting not allowed I know but the modify button isn't working now, I have my client token thanks to bnet docs. But I don't know how to get my server token, can someone help me on this? Then how do I get my password hash for 0x3A also?
So, pretty much what you're saying is that, you have this code from someone else's work, and you want us to make it work for you?
Quote from: DueL on July 19, 2005, 01:15 AM
Hm your making a floodbot also. Good luck getting help
AC &HC0FFFF, "Attempting To Flood Channel [", False, False, vbWhite, DB.Home, False, False, &HC0FFFF, "]"
Quote from: MyndFyre on July 19, 2005, 01:30 AMQuote from: Jaquio on July 19, 2005, 01:15 AM
And I should be looking for what? Could be a little more help rabbit, .
I don't know... maybe an invalid packet sequence or structure? That's a possible cause of a disconnect (protocol violation).
On that note, it looks like you are entirely off on the structure of 0x3a. Just throwin' that out there.
Public Function Send_0x01()
Select Case UCase(DB.Product)
Case "D2DV", "VD2D"
DB.Product = "VD2D"
VerByte = "09"
Executable = "Game.EXE"
Case Else
AC vbRed, "Unknown Product"
Form1.Winsock1.Close
Exit Function
End Select
HashPath = App.Path & "\D2DV\"
Form1.Winsock1.SendData Chr(1)
AC &HFFFFC0, "Sent 0x01"
End Function
Public Function Send_0x50()
On Error Resume Next
Packet.InsertDWORD &H0
Packet.InsertNonNTString "68XI"
Packet.InsertNonNTString DB.Product
Packet.InsertDWORD "&H" & VerByte
Packet.InsertDWORD &H0
Packet.InsertDWORD &H0
Packet.InsertDWORD &H0
Packet.InsertDWORD &H0
Packet.InsertDWORD &H0
Packet.InsertNTString "USA"
Packet.InsertNTString "United States"
Packet.SendPacket &H50
AC &HFFFFC0, "Sent 0x50"
End Function
Public Function Send_0x51(Data As String)
Dim Hash As String, MPQName As String, TempData As String
Dim EXEInfo As String, version As Long, CheckSum As Long, Result As Long
Dim dblProdID As Double, dblValue1 As Double, dblValue2 As Double
Dim lngProdID As Long, lngValue1 As Long, lngValue2 As Long
Dim AccountHash As String, TempString As String, dblKey As Long
Dim Servers As String
Token = Mid(Data, 9, 4)
MPQName = Mid(Data, InStr(Data, "I"), 12)
Hash = Mid(Mid(Data, 34), InStr(Mid(Data, 34), Chr(0)) + 1, InStr(Mid(Mid(Data, 34), InStr(Data, Chr(0)) + 1), Chr(0)))
Hash = Replace(Hash, Chr(0), "")
EXEInfo = Space(256)
dblKey = GetTickCount()
If DB.Product = "VD2D" Then
Result = z(HashPath & Executable, HashPath & "BNClient.DLL", HashPath & "D2Client.DLL", Hash, version, CheckSum, EXEInfo, MPQName)
Else
Result = z(HashPath & Executable, HashPath & "Storm.DLL", HashPath & "Battle.SNP", Hash, version, CheckSum, EXEInfo, MPQName)
End If
NullTruncString EXEInfo
DecodeCDKey DB.CDKey1, dblProdID, dblValue1, dblValue2
lngProdID = CLng(dblProdID)
lngValue1 = CLng(dblValue1)
lngValue2 = CLng(dblValue2)
Servers = CLng(Val("&h" & StrToHex(StrReverse(Token))))
AccountHash = String(5 * 4, vbNullChar)
TempString = c(AccountHash, Servers, lngProdID, lngValue1, lngValue2, dblKey)
If Result = 0 Then
AC vbRed, "Hashing Failed"
Form1.Winsock1.Close
Exit Function
End If
Packet.InsertDWORD dblKey
Packet.InsertDWORD version
Packet.InsertDWORD CheckSum
Packet.InsertDWORD &H1
Packet.InsertDWORD "&H0"
Packet.InsertDWORD Len(DB.CDKey1)
Packet.InsertDWORD CLng(dblProdID)
Packet.InsertDWORD CLng(dblValue1)
Packet.InsertDWORD &H0
Packet.InsertNonNTString AccountHash
Packet.InsertNTString EXEInfo
Packet.InsertNTString DB.Username
Packet.SendPacket &H51
AC &HFFFFC0, "Sent Username & Password. "
End Function
Public Sub Send_0x3A()
Dim PD As String
PD = String(7 * 4, vbNullChar)
Packet.InsertNonNTString PD
Packet.InsertNTString DB.Username
Packet.SendPacket &H3A
AC &HFFFFC0, "Sent 0x3A"
End Sub
Public Function Send_0x14()
Packet.InsertNonNTString "tenb"
Packet.SendPacket &H14
AC &HFFFFC0, "Sent 0x14"
End Function
Public Function Send_0x0A()
Packet.InsertNTString DB.Username
Packet.InsertBYTE 0
Packet.SendPacket &HA
AC &HFFFFC0, "Sent 0x0A"
Packet.InsertNonNTString DB.Product
Packet.SendPacket &HB
AC &HFFFFC0, "Sent 0x0B"
Packet.InsertDWORD 2
Packet.InsertNTString DB.Home
Packet.SendPacket &HC
AC &HFFFFC0, "Sent 0x0C"
AC &HC0FFFF, "Attempting To Flood Channel [", False, False, vbWhite, DB.Home, False, False, &HC0FFFF, "]"
End Function
Public Function ParsePacket(Data As String)
Dim PacketID As String
PacketID = Asc(Mid(Data, 2, 1))
Select Case PacketID
Case &H25
Form1.Winsock1.SendData Data
Case &H1
AC &HC0FFC0, "Received 0x01"
Case &H50
AC &HC0FFC0, "Received 0x50"
Send_0x51 Data
Case &H51
AC &HC0FFC0, "Received 0x51"
Send_0x3A
Case &H3A
AC &HC0FFC0, "Received 0x3A"
'Send_0x14
Send_0x0A
'Case &H14
'AC &HC0FFC0, "Received 0x14"
'Send_0x0A
Case &HA
AC &HC0FFC0, "Received 0x0A"
Case &HF
DispatchMessage Data
End Select
End Function
Quote from: Stealth on January 26, 2004, 10:04 PM
Click:
11:25:55 AM - BNLS: Connecting...
11:25:55 AM - BNLS: Connected!
11:25:55 AM - BNLS: Authorized!
11:25:56 AM - BNET: Connecting...
11:25:56 AM - BNET: Connected!
11:25:56 AM - BNLS: Error! Bad product version.
Run Time Error '-2147418105 (80010007)
Method 'UseUDP' of object '_CleanSlateBot' Failed
6:54:59 PM - BNLS: Connecting...
6:54:59 PM - BNLS: Connected!
6:55:00 PM - BNLS: Authorized!
6:55:00 PM - BNET: Connecting...
6:55:00 PM - BNET: Connected!
6:55:00 PM - BNET: Client version accepted!
6:55:00 PM - BNET: Login successful.
Access.UseUDP = True
If UDP = "Y" Then
Access.UseUDP = False
Else
Access.UseUDP = True
End If
Page created in 0.071 seconds with 16 queries.