• Welcome to Valhalla Legends Archive.
 

D2 Realm? Not working? - Update #2

Started by BaDDBLooD, May 20, 2004, 10:58 PM

Previous topic - Next topic

BaDDBLooD

I Tred it on my Bot, my friend's bot, and stealth bot ( all were working before ) And they all don't work now

Anyone got any ideas why?
There are only two kinds of people who are really fascinating: people who know absolutely everything, and people who know absolutely nothing.

Eric

#1
All of the Diablo II MCP servers are currently up and running, perhaps you're IP banned.

BaDDBLooD

yes.. they weren't a minute ago..

i guess my code isn't working anymore =[
There are only two kinds of people who are really fascinating: people who know absolutely everything, and people who know absolutely nothing.

LordNevar

I haven't had any problems logging on to the realms with my bot, so it could possibly be your code. Also if there is a way to connect to realms using proxy support I would be interested in a way. I myself cannot figure it out.

A good fortune may forbode a bad luck, which may in turn disguise a good fortune.
The greatest trick the Devil ever pulled, was convincing the world he didn't exsist.

BaDDBLooD

#4
yes, me to!

EDIT: Might as well try and fix this



   Case &H3A 'SID_LOGONRESPONSE2
       
       Select Case Asc(Mid(Data, 5, 1))
       
           Case &H0
           
               AddChat vbGreen, "BNCS: Login Accepted!"
               
                   If Bot.Product = "PX2D" Or Bot.Product = "VD2D" Then
                   
                       Answer = MsgBox("Do You Want To Use Diablo2 Realm?", vbYesNo + vbQuestion, "BaDD`ChaT")
                       
                       If Answer = vbYes Then
                       
                           Dim Chararacter As String
                       
                           Character = InputBox("What Character Do You Want To Use", "Choose Character!")
                       
                           Realm.Character = Character
                       
                           AddChat vbYellow, "Querying Master Control Program..."
                       
                           With Buffer
                               .SendPacket frmMain.wsBNCS, BNCS, &H40
                           End With
                       
                       Else

                           AddChat vbYellow, "Logging On As: " & Bot.username

                           With Buffer
                               .InsertNTString Bot.username
                               .InsertBYTE 0
                               .SendPacket frmMain.wsBNCS, BNCS, &HA
                               .InsertDWORD &H1
                               .InsertNTString Bot.Home
                               .SendPacket frmMain.wsBNCS, BNCS, &HC
                           End With
                   
                           If Created = True Then
                           
                           Exit Sub
                           
                               Else
                   
                           GetSystemKeys Bot.username
                   
                           End If
                           
                       End If
                                   
                   End If



0x3A Login Success Response, Sending 0x40



   Case &H40
   
       With Buffer
           HashType = 3
           .InsertDWORD &H8
           .InsertDWORD &H0
           .InsertNonNTString "password"
           .SendPacket frmMain.wsBNLS, BNLS, &HB
       End With



Recieving 40, hashing realm pw to BNLS



       ElseIf HashType = 3 Then
       
           HashCount = HashCount + 1
           
           If HashCount = 1 Then
           
               Hash(0) = Buffer.MakeDWORD(Token)
               Hash(1) = Buffer.MakeDWORD(Servers)
               Hash(2) = Mid(Data, 4, Len(Data) - 3)
               
               With Buffer
                   .InsertDWORD &H1C
                   .InsertDWORD &H1
                   .InsertNonNTStringArray Hash()
                   .SendPacket frmMain.wsBNLS, BNLS, &HB
               End With
               
           ElseIf HashCount = 2 Then
           
               With Buffer
                   .InsertDWORD Token
                   .InsertNonNTString Mid(Data, 4, Len(Data) - 3)
                   Realm.Realm = InputBox("What Realm?", "Enter Realm!")
                   .InsertNTString Realm.Realm
                   .SendPacket frmMain.wsBNCS, BNCS, &H3E
                   HashCount = 0
               End With
               
           End If



Sending 0x3E



   Case &H3E
   
       Dim Temp1 As String, Temp2 As String, IP As String
         
       Temp1 = Mid(Data, 5, 16)
       Temp2 = Mid(Data, 29, 48)
       IP = Mid(Data, 21, 4)
       Realm.Server = MakeServer(IP)
       Startup = Temp1 & Temp2
       BNCSName = Mid(Data, 77, Len(Mid(Data, 77)) - 3)
       AddChat vbYellow, "MCP: Connecting to Master Control Program Server: " & Realm.Server & ":6112"
       frmMain.wsMCP.Connect Realm.Server, 6112



Connecting to MCP



Private Sub wsMCP_Connect()

AddChat vbGreen, "MCP: Connected, sending startup.."

wsMCP.SendData Chr(1)

With Buffer
   .InsertNonNTString Startup
   .InsertNTString BNCSName
   .SendPacket frmMain.wsMCP, MCP, &H1
End With

End Sub

Private Sub wsMCP_DataArrival(ByVal bytesTotal As Long)

Dim strTemp As String
wsMCP.GetData strTemp, vbString

ParseMCP strTemp

End Sub





Public Sub ParseMCP(Data As String)

Dim PacketID As String
   PacketID = Asc(Mid(Data, 3, 1))

Select Case PacketID

   Case &H1 'MCP_STARTUP
     
        Select Case (GetDWORD(Mid(Data, 4, 4)))
         
            Case &H0 '0x00 SUCCESS
             
                AddChat vbGreen, "MCP: Startup accepted, ", vbYellow, "Logging on to Realm character..."
                 
                    With Buffer
                        .InsertDWORD &H8
                        .SendPacket frmMain.wsMCP, MCP, &H19
                    End With
                     
            End Select
             
   Case &H19
       
       With Buffer
           .InsertNTString Realm.Character
           .SendPacket frmMain.wsMCP, MCP, &H7
       End With
 
    Case &H7 'CHAR_LOGON
     
        Select Case (GetDWORD(Mid(Data, 4, 4)))
             
            Case &H0 '0x00 SUCCESS
                 
                AddChat vbGreen, "MCP: Logged on to Realm Character"
                 
                   With Buffer
                       .InsertNTString Realm.Character
                       .InsertNonNTString Realm.Realm & ","
                       .InsertNTString Realm.Character
                       .SendPacket frmMain.wsBNCS, BNCS, &HA
                       .InsertDWORD &H1
                       .InsertNTString Bot.Home
                       .SendPacket frmMain.wsBNCS, BNCS, &HC
                   End With

        End Select
       
   Case Else

       AddChat vbRed, "MCP: Unhandled Packet: 0x" & Hex(PacketID) 'Unhandled 0x Packet

       AddChat vbRed, "Debug: " & DebugOutput(Data)

End Select
               
End Sub



I get ipbanned after i send 0x0C ( which usually means i sent something wrong way before that )

Any help is Apreciated

There are only two kinds of people who are really fascinating: people who know absolutely everything, and people who know absolutely nothing.

BaDDBLooD

#5
i looked through it and i didn't see anything..

i am pretty sure everything is in the right format and all but it won't work ;[

You think it could be that:

I was playing around with it trying to get it hooked up to a proxy.

Than after i couldn't get it to work, i removed the proxy Code.

You think my problem is that VB doesn't like the code, but you know it works.. than you Remove it and Redo it and it works? ( I got this error before when i tried Implementing and than Removed it before i was finished )

i'm gonna go try it..

EDIT: Yeah.. it still doesn't work ;[
There are only two kinds of people who are really fascinating: people who know absolutely everything, and people who know absolutely nothing.

Lobo

#6
Quote from: BaDDBLooD on May 20, 2004, 11:36 PM

                   With Buffer
                       .InsertNTString Realm.Character
                       .InsertNonNTString Realm.Realm & ","
                       .InsertNTString Realm.Character
                       .SendPacket frmMain.wsBNCS, BNCS, &HA


From bnetdocs: SID_ENTERCHAT (0x0A)
(STRING)       Username
(STRING)       Statstring for old products, Null for CDkey'd products.

So why are you sending Realm.Character twice?

Not sure if that would fix it, but I hope it helps a little.
Look it's a signature.

BaDDBLooD



                   With Buffer
                       .InsertNTString Bot.username
                       .InsertBYTE 0
                       .SendPacket frmMain.wsBNCS, BNCS, &HA
                       .InsertDWORD &H1
                       .InsertNTString "L"
                       .SendPacket frmMain.wsBNCS, BNCS, &HC
                   End With



I still get ipban.. the reason i had that was.. because that's how diablo2 Did it when i packetlogged!
There are only two kinds of people who are really fascinating: people who know absolutely everything, and people who know absolutely nothing.

LordNevar

#8
Your missing information in your code should look more like this.


With Buffer
       .InsertNTString BNET.Username
       .InsertBYTE 0
       .SendPacket &HA
       .InsertNonNTString BNET.Product
       .SendPacket &HB
       .InsertDWORD 1
       .InsertNTString "L" or (BNET.HomeChannel)
       .SendPacket &HC
End With


Edit: Tab Key :)

A good fortune may forbode a bad luck, which may in turn disguise a good fortune.
The greatest trick the Devil ever pulled, was convincing the world he didn't exsist.