Valhalla Legends Forums Archive | Battle.net Bot Development | Realm Chars won't show

AuthorMessageTime
laurion
I searched and no one posted on this before..
I got this from the old LOD soupbot for realm characters, and it seems it isnt working-any ideas?
[code]
ElseIf Asc(Mid(strTemp, 3, 1)) = &H17 Then
Dim Count As String, pA() As String, i As Long, pos As Long, tmpdata As String
frmRealmCharSel.lstChars.ListItems.Clear
tmpdata = Mid(strTemp, 4)
Count = Asc(Mid(strTemp, 6, 1))
pos = 9
For i = 1 To Count
pA = Split(Mid(tmpdata, pos), Chr(0), 3)
frmRealmCharSel.lstChars.ListItems.Add , , pA(0)
tmpdata = pA(2)
pos = 1
Next
Erase pA()
[/code]
thanks, i really appreciate all the help ;D
February 6, 2004, 11:32 AM
botmaster
are you connected to the mcp?
February 6, 2004, 3:52 PM
laurion
Yes
February 6, 2004, 7:50 PM
UserLoser.
Are you requesting the character list?
February 6, 2004, 10:04 PM
laurion
yes
[code]
If Asc(Mid(strTemp, 3, 1)) = &H1 Then
With RealmPB
.InsertDWORD &H8
.SendPacket &H17
End With
[/code]
February 7, 2004, 1:36 AM
laurion
no one has an answer?
February 9, 2004, 8:31 PM
UserLoser.
[quote author=laurion link=board=17;threadid=5110;start=0#msg43352 date=1076358684]
no one has an answer?

[/quote]

The information your providing doesn't really explain anything
February 9, 2004, 9:29 PM
Myndfyr
[quote author=laurion link=board=17;threadid=5110;start=0#msg43352 date=1076358684]
no one has an answer?

[/quote]

Don't beg; it's unbecoming. Have you been looking at BnetDocs? You admitted that you got it from the SoupBot source directly.

Try taking a packet capture and showing us what you get after sending 0x17.
February 9, 2004, 9:32 PM
UserLoser.
Better yet, a packet log of everything that happens from when you first attempt to connect to the realm
February 9, 2004, 9:54 PM
laurion
After button to connect to realm is clicked:
[code]
1 192.168.2.37 63.240.202.120 13 Send
0000 FF 34 0D 00 00 00 00 00 00 00 00 00 00 .4...........

2 63.240.202.120 192.168.2.37 75 Recv
0000 FF 34 4B 00 00 00 00 00 01 00 00 00 00 00 00 C0 .4K.............
0010 D4 17 00 00 0F 2F 00 00 59 00 00 00 DB 92 01 00 ...../..Y.......
0020 FF FF FF FF 00 00 00 00 55 53 45 61 73 74 00 52 ........USEast.R
0030 65 61 6C 6D 20 66 6F 72 20 74 68 65 20 55 53 20 ealm for the US
0040 45 61 73 74 20 43 6F 61 73 74 00 East Coast.

3 192.168.2.37 63.240.202.120 35 Send
0000 FF 3E 23 00 01 00 00 00 D2 50 C1 26 D4 07 F4 DE .>#......P.&....
0010 97 61 89 3B 7B 20 1E E1 29 A4 B1 4B 55 53 45 61 .a.;{ ..)..KUSEa
0020 73 74 00 st.

4 63.240.202.120 192.168.2.37 12 Recv
0000 FF 3E 0C 00 01 00 00 00 02 00 00 80 .>..........

5 192.168.2.37 63.240.202.129 19 Send
0000 01 12 00 01 01 00 00 00 02 00 00 80 4B 63 6F 6A ............Kcoj
0010 31 34 00 14.

[/code]
btw, i get IPBanned for about 2 minutes after i try to connect to the realm, does anyone know what DWORD[16] from 0x01 [MCP_STARTUP] is (quote from bnetdocs)?
February 11, 2004, 12:55 AM
UserLoser.
[quote]
[pre]
0000 FF 3E 0C 00 01 00 00 00 02 00 00 80 .>..........
[/pre]
[/quote]

That's your problem, you're most likely not hashing the realm password properly
February 11, 2004, 1:06 AM
Zakath
First of all, UserLoser may be right. The return value from 0x3E is horribly too small to even attempt a connection to the realm.

The DWORD[16] consists of the MCP data chunk, which is sent to you in 0x3E when you successfully indicate your desire to connect to the realm. This then has to be included when you send the MCP_STARTUP packet.
February 11, 2004, 6:55 AM
laurion
connect to realm:
[code]
Public Function ConnectMCP(realm As String)
Dim rpass As String
Dim p As New PacketBuffer
rpass = String(5 * 4, vbNullChar)
Call A2(rpass, servers)
p.InsertDWORD &H1
p.InsertNonNTString rpass
p.InsertNTString realm
p.SendPacket &H3E
End Function
[/code]
what i grabbed from 0x3E:
[code]
Case &H3E
Dim Server As String
Dim bleh2 As String
Dim port As String
Dim IP As String
Dim Hag$
p1 = Mid(Data, 5, 16)
Server = Mid(Data, 17, 8)
bleh2 = Mid(Server, 5, 4)
AddText vbYellow, "Attempting to connect to MCP server"
p2 = Mid(Data, 29, 48)
'MyName = Mid(Data, 77, Len(Data) - 79)
frmMain.WSmcp.Close
frmMain.WSmcp.Connect "63.240.202.129", 6112 'DWORDtoIP(Mid(bleh2, 4)), 6112
[/code]
Using data from there, i then do
[code]
Private Sub WSmcp_Connect()
frmMain.WSmcp.SendData Chr(1)
RTBAdd "Connected to MCP server." & vbNewLine, vbGreen


With RealmPB
.InsertNonNTString p1 & p2
.InsertNTString MyName
.SendPacket &H1
End With
End Sub
[/code]
February 11, 2004, 11:13 AM
UserLoser.
[quote author=laurion link=board=17;threadid=5110;start=0#msg43643 date=1076497987]
connect to realm:
[code]
Public Function ConnectMCP(realm As String)
Dim rpass As String
Dim p As New PacketBuffer
rpass = String(5 * 4, vbNullChar)
Call A2(rpass, servers)
p.InsertDWORD &H1
p.InsertNonNTString rpass
p.InsertNTString realm
p.SendPacket &H3E
End Function
[/code]
what i grabbed from 0x3E:
[code]
Case &H3E
Dim Server As String
Dim bleh2 As String
Dim port As String
Dim IP As String
Dim Hag$
p1 = Mid(Data, 5, 16)
Server = Mid(Data, 17, 8)
bleh2 = Mid(Server, 5, 4)
AddText vbYellow, "Attempting to connect to MCP server"
p2 = Mid(Data, 29, 48)
'MyName = Mid(Data, 77, Len(Data) - 79)
frmMain.WSmcp.Close
frmMain.WSmcp.Connect "63.240.202.129", 6112 'DWORDtoIP(Mid(bleh2, 4)), 6112
[/code]
Using data from there, i then do
[code]
Private Sub WSmcp_Connect()
frmMain.WSmcp.SendData Chr(1)
RTBAdd "Connected to MCP server." & vbNewLine, vbGreen


With RealmPB
.InsertNonNTString p1 & p2
.InsertNTString MyName
.SendPacket &H1
End With
End Sub
[/code]
[/quote]

63.240.202.129? Looks like a Battle.net Chat server to me (from memory, pretty sure realm servers are not the same as the chat servers), not a realm server... In 0x3E, the server responds with the IP address of the realm server to connect to, along with the port (iirc)
February 11, 2004, 4:31 PM
laurion
i just use that server cuz i couldnt get my makeserver function to work (i posted about that previously)
February 11, 2004, 7:49 PM

Search