• Welcome to Valhalla Legends Archive.
 
Menu

Show posts

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 Menu

Messages - Jaquio

#16
Battle.net Bot Development / Re: CleanSlateBot2.ocx
November 11, 2006, 05:41 AM
Quote from: Ersan on November 10, 2006, 03:51 PM
The 'fix' is to use PMAC/XMAC or BNLS.

How exactly would you BNLS? I have gotten my bot working using PMAC but when I tried BNLS before, using the new version checks. Stop after receiving 0x50?
#17
Battle.net Bot Development / Re: CleanSlateBot2.ocx
November 10, 2006, 10:04 AM
Quote from: Mystical on November 10, 2006, 02:35 AM
Quote from: Delixe on November 09, 2006, 09:22 PM
Quote from: Jaquio on November 09, 2006, 04:08 PM
Would be better off using BNCSUtil or creating something like CSB.. Would be easy once BNLS is fixed. I could make one? But would give people an easy way of making bots and we remember how well that went over?

There's plenty of open source out there for bot development, I don't think it really matters.


The thing good about the patchs and updates, is when someone wants to just rip the open source code out there. It wont be so easy.. such as just changing the verbyte and updating hashes. =) this will slow down the battle.net bot development or should i say, battle.net bot leeching =) even if the new information is released on how to bypass this patch, newbies that only know how to leech from other bots probley wont have the experience to fix this issue, anyways i dunno im tired im just blabin my text

Exactly what I thought, so if I were to create something along the lines of the old CSB with the new fixes and shit, there would probably be A LOT more bots. Because no one is going to release a working source to connect I hope.. Just say how it is done so the people who don't leech and know what they're doing can fix it.
#18
Battle.net Bot Development / Re: CleanSlateBot2.ocx
November 09, 2006, 05:46 PM
Quote from: Ersan on November 09, 2006, 05:25 PM
once BNLS is fixed?

Err, I mean updated... If it isn't already I have been ready topics. Or whenever a connection fix is posted...
#19
Battle.net Bot Development / Re: CleanSlateBot2.ocx
November 09, 2006, 04:08 PM
Would be better off using BNCSUtil or creating something like CSB.. Would be easy once BNLS is fixed. I could make one? But would give people an easy way of making bots and we remember how well that went over?
#20
Web Development / Re: Making a PHP Bot
November 07, 2006, 10:11 AM
Quote from: Joex86] link=topic=15981.msg160854#msg160854 date=1162784314]
Here's the sorry reminants of my attempt. Enjoy, or be discusted. Your choice. :)

If it's alright with you, could I use that pbuffer.php? It works a lot better then my shitty converted vb code. Lol, as well as that debugOutput function you(or someone else?) ported from iago.
#21
Web Development / Re: Making a PHP Bot
November 05, 2006, 09:11 PM
Ohh alright, thanks. I will fix that in all my functions as well as renaming them I just left them like they were because I can't come up with anything better but I will think and maybe I will.
#22
Web Development / Re: Making a PHP Bot
November 05, 2006, 06:25 PM
Ohh, yea I did say I found it but I was trying to say I found the Visual Basic version of it. Heh, so the strpos() and substr() does that replace all the pack()'s in there? Or what, I think I misunderstood what you posted not sure if it was for just the rntstring or for all of them. As of now I used it this way.


Function InStr($Start, $String){
$nullpos = strpos($Start, $String, $pos);
return substr($Start, $pos, $nullpos + 1);
$pos = $nullpos;
}


Probably a bad thing?
#23
Web Development / Re: Making a PHP Bot
November 05, 2006, 02:37 PM
I wrote that to the best of my knowledge, I am sorry I did it the best I could. Thanks for that though perhaps I could re-do it thanks for information. I converted it from that class file I posted above.
#24
Web Development / Re: Making a PHP Bot
November 05, 2006, 10:00 AM
Nah, I don't use other peoples stuff if anything I learn from it, if I ever do use bits of peoples code I always put the author in the source and whatnot.

This however I can't remember who wrote (I converted from VB) I found it on these forums somewhere though.


<?php
global 
$strBuffer;
global $strBuff;

Function Clear($V){
global $strBuffer;
$strBuffer "$V";
}

Function ClearData($V){
global $strBuff;
$strBuff "$V";
}

Function GetData(){
global $strBuff;
return $strBuff;
}

Function InsertATString($Data){
global $strBuffer;
$strBuffer $strBuffer.$Data.Chr(10);
}

Function InsertByte($Data){
global $strBuffer;
$strBuffer $strBuffer.Chr($Data);
}

//Function InsertBytes($Data)

Function InsertData($Data){
global $strBuffer;
$strBuffer $strBuffer.$Data;
}

Function InsertDWORD($Data){
global $strBuffer;
$strBuffer $strBuffer.MakeDWORD($Data);
}

Function InsterNonNTString($Data){
global $strBuffer;
$strBuffer $strBuffer.$Data;
}

Function InsertNTString($Data){
global $strBuffer;
$strBuffer $strBuffer.$Data.Chr(0);
}

Function InsertWORD($Data){
global $strBuffer;
$strBuffer $strBuffer.MakeWORD($Data);
}

Function Left($String$Length){
//Remember Length starts from 0 not 1.
return substr($String0$Length);
}

Function MakeDWORD($Value){
return pack("V*"$Value);
}

Function MakeWORD($Value){
return pack("v*"$Value);
}

Function Mid($String$Start$Length){
//Remember Start and Length start from 0 not 1.
return substr($String$Start$Length);
}

Function rBYTE(){
global $strBuff;
return ord(Left($strBuff0));
$strBuff Mid($strBuff1);
}

Function rDWORD(){
global $strBuff;
return MakeDWORD(Left($strBuff3));
$strBuff Mid($strBuff4);
}

Function rFILETIME($QWORD){
if($QWORD == "false"){
$strFT split(chr(32), rNTString().chr(32));
if($strFT[0] > 2147483647){
$strFT[0] = $strFT[0] - 4294967296;
}
if($strFT[1] > 2147483647){
$strFT[1] = $strFT[1] - 4294967296;
}
} else {
$strFT[1] = rDWORD;
$strFT[0] = rDWORD;
}

return $strFT[0].chr(32).$strFT[1];
}

Function rNonNTString(){
global $strBuff;
return Left($strBuff3);
$strBuff Mid($strBuff4);
}

Function rNTString(){
//rNTString = Left(strBuff, InStr(strBuff, Chr(&H0)) - 1)
//strBuff = Mid(strBuff, Len(rNTString) + 2)
global $strBuff;
return "Got to find a replacement for InStr.";
}

Function rVOID($Length){
global $strBuff;
if(strlen($strBuff) < $Length){
$Length strlen($strBuff);
}

return Left($strBuff$Length);
$strBuff Mid($strBuff$Length 1);
}

Function rWORD(){
global $strBuff;
return MakeWORD(Left($strBuff2));
$strBuff Mid($strBuff2);
}
?>



What would be a good replacement for rNTString anyone know?



Just took a look at the source code, boy is it confusing... lol will take some time to figure out what does what. Thanks
#25
Web Development / Re: Making a PHP Bot
November 05, 2006, 07:53 AM
Quote from: rabbit on November 05, 2006, 06:37 AM
pack()

Heh, sorry for bothering everyone. Didn't know there was a function like that.

Also, does anyone think this is really gonna work.. O_o
#26
Web Development / Making a PHP Bot
November 05, 2006, 03:29 AM
I seen a topic on here, and the source page to download is down. So I went ahead and almost started making one, but then already ran into a problem. You know how some packet parsers in Visual Basic use the copymemory(Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (ByRef Destination As Any, ByRef Source As Any, ByVal numbytes As Long)) well would you really need to do that in PHP to do things like make a dword an such? Or would there be another way of doing it? I am converting this to php.


Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (ByRef Destination As Any, ByRef Source As Any, ByVal numbytes As Long)

Public Function Clear()
    strBuffer = vbNullString
End Function

Public Function ClearData()
    strBuff = vbNullString
End Function

Public Function GetData() As String
     GetData = strBuff
End Function

Public Function InsertATString(Data As String)
    strBuffer = strBuffer & Data & Chr(&HA)
End Function

Public Function InsertBYTE(Data As Integer)
    strBuffer = strBuffer & Chr(Data)
End Function

Public Function InsertBytes(Data As String)
    Dim i As Long
    Dim enqueueer As String
   
    For i = 1 To Len(Data) Step 3
        enqueueer = enqueueer & Chr(Val("&h0" & Mid(Data, i, 2)))
    Next i
    strBuffer = strBuffer & enqueueer
End Function

Public Function InsertData(Data As String)
    strBuffer = strBuffer & Data
End Function

Public Function InsertDWORD(Data As Long)
    strBuffer = strBuffer & MakeDWORD(Data)
End Function

Public Function InsertDWORDArray(Data() As Long)
    Dim i As Integer
    For i = LBound(Data) To UBound(Data) Step 1
        strBuffer = strBuffer & MakeDWORD(Data(i))
    Next i
End Function

Public Function InsertNonNTString(Data As String)
    strBuffer = strBuffer & Data
End Function

Public Function InsertNonNTStringArray(Data() As String)
    Dim i As Integer
    For i = LBound(Data) To UBound(Data) Step 1
        strBuffer = strBuffer & Data(i)
    Next i
End Function

Public Function InsertNTString(Data As String)
    strBuffer = strBuffer & Data & Chr(0)
End Function

Public Function InsertWORD(Data As Integer)
    strBuffer = strBuffer & MakeWORD(Data)
End Function

Public Function MakeDWORD(Value As Long) As String
    Dim Result As String * 4
    CopyMemory ByVal Result, Value, 4
    MakeDWORD = Result
End Function

Function MakeWORD(Value As Integer) As String
    Dim Result As String * 2
    CopyMemory ByVal Result, Value, 2
    MakeWORD = Result
End Function

Public Function rATString() As String
    On Error Resume Next
    rATString = Left(strBuff, InStr(strBuff, Chr(&HA)) - 1)
    strBuff = Mid(strBuff, Len(rATString) + 2)
End Function

Public Function rBYTE() As Byte
    rBYTE = Asc(Left(strBuff, 1))
    strBuff = Mid(strBuff, 2)
End Function

Public Function rDWORD() As Long
    Dim lReturn As Long, strTMP As String
    strTMP = Left(strBuff, 4)
    Call CopyMemory(lReturn, ByVal strTMP, 4)
    rDWORD = lReturn
    strBuff = Mid(strBuff, 5)
End Function

Public Function rFILETIME(Optional QWORD As Boolean = False) As String
    Dim strFT() As String, strTMP As String
    If Not QWORD Then
        strFT = Split(rNTString & Space(1), Space(1))
        If strFT(0) > 2147483647 Then strFT(0) = (strFT(0) - 4294967296#)
        If strFT(1) > 2147483647 Then strFT(1) = (strFT(1) - 4294967296#)
    Else
        ReDim strFT(0 To 1)
        strFT(1) = rDWORD
        strFT(0) = rDWORD
    End If
    rFILETIME = strFT(0) & Space(1) & strFT(1)
End Function

Public Function rNonNTString() As String
    rNonNTString = Left(strBuff, 4)
    strBuff = Mid(strBuff, 5)
End Function

Public Function rNTString() As String
    On Error Resume Next
    rNTString = Left(strBuff, InStr(strBuff, Chr(&H0)) - 1)
    strBuff = Mid(strBuff, Len(rNTString) + 2)
End Function

Public Function rVOID(Leng As Integer) As String
    If Len(strBuff) < Leng Then Leng = Len(strBuff)
    rVOID = Left(strBuff, Leng)
    strBuff = Mid(strBuff, Leng + 1)
End Function

Public Function rWORD() As Long
    Dim lReturn As Long, strTMP As String
    strTMP = Left(strBuff, 2)
    Call CopyMemory(lReturn, ByVal strTMP, 2)
    rWORD = lReturn
    strBuff = Mid(strBuff, 3)
End Function

Public Function SendBNCSPacket(PacketID As Byte)
If frmMain.wskBNet.State <> sckConnected Then: Exit Function
    Debug.Print "Sent:" & GetPacketName(PacketID, "BNCS") & "(" & Hex(PacketID) & ")"
    frmMain.wskBNet.SendData Chr(&HFF) & Chr(PacketID) & MakeWORD(Len(strBuffer) + 4) & strBuffer

    Clear
End Function

Public Function SendBNLSPacket(PacketID As Byte)
If frmMain.wskBNLS.State <> sckConnected Then: Exit Function
    frmMain.wskBNLS.SendData MakeWORD(Len(strBuffer) + 3) & Chr(PacketID) & strBuffer

    Clear
End Function

Public Function SendRPacket(PacketID As Byte)
If frmMain.wskRealm.State <> sckConnected Then: Exit Function
    frmMain.wskRealm.SendData MakeWORD(Len(strBuffer) + 3) & Chr(PacketID) & strBuffer

    Clear
End Function

Public Function SetData(Data As String)
    strBuff = Data
End Function
#27
Take it no one cares? :( I wanted to print them all out so I could have them to look at on hand instead of on my other computer..
#28
Lol, whenever you click on the printable version link on bnetdocs it always goes to 'Packet not found' someone should fix that.. o_O
#29
OMG! For some reason, I had it commented out.. Not sure why I did that for.. Who knows.. >_< Thanks MyndFyre, you've helped me alot, an not only on this project.  :P Your a great person.  ;D
#30
Alright, EVERYTIME I create an account using my bot, when I try to logon I get 'Invalid' password, any idea why? This is a packetlog from trying to create an account using War3.


15  71.124.70.4:4753  63.161.183.205:9367  27  Send 
0000  1B 00 02 49 6D 41 55 73 65 72 6E 61 6D 65 00 49    ...ImAUsername.I
0010  6D 41 50 61 73 73 77 6F 72 64 00                   mAPassword.

16  63.161.183.205:9367  71.124.70.4:4753  35  Recv 
0000  23 00 02 B9 8D B0 B3 8E F4 F0 35 90 E7 81 7C BF    #.........5...|.
0010  A3 FD C9 4E 33 34 57 EC B7 2C 6F 29 71 53 F5 B4    ...N34W..,o)qS..
0020  46 9F 7F                                           F..

17  71.124.70.4:4754  211.233.0.54:6112  48  Send 
0000  FF 53 30 00 B9 8D B0 B3 8E F4 F0 35 90 E7 81 7C    .S0........5...|
0010  BF A3 FD C9 4E 33 34 57 EC B7 2C 6F 29 71 53 F5    ....N34W..,o)qS.
0020  B4 46 9F 7F 49 6D 41 55 73 65 72 6E 61 6D 65 00    .F..ImAUsername.

18  211.233.0.54:6112  71.124.70.4:4754  72  Recv 
0000  FF 53 48 00 01 00 00 00 00 00 00 00 00 00 00 00    .SH.............
0010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0020  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0030  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0040  00 00 00 00 00 00 00 00                            ........

19  71.124.70.4:4753  63.161.183.205:9367  27  Send 
0000  1B 00 04 49 4D 41 55 53 45 52 4E 41 4D 45 00 49    ...IMAUSERNAME.I
0010  4D 41 50 41 53 53 57 4F 52 44 00                   MAPASSWORD.

20  63.161.183.205:9367  71.124.70.4:4753  67  Recv 
0000  43 00 04 21 BF 3F D5 2F 3F 4E 94 4B 75 BE 0F C2    C..!.?./?N.Ku...
0010  86 EE 9B E9 AB 00 27 8C 02 82 2A 95 C1 C7 1E 78    ......'...*....x
0020  B9 8B 5F FF 73 51 9D F0 29 A8 1B 49 9B 51 47 4D    .._.sQ..)..I.QGM
0030  A1 2A C4 DD 54 F3 A4 B5 B8 82 C0 93 D4 61 78 B6    .*..T........ax.
0040  AE DC 79                                           ..y

21  71.124.70.4:4754  211.233.0.54:6112  80  Send 
0000  FF 52 50 00 21 BF 3F D5 2F 3F 4E 94 4B 75 BE 0F    .RP.!.?./?N.Ku..
0010  C2 86 EE 9B E9 AB 00 27 8C 02 82 2A 95 C1 C7 1E    .......'...*....
0020  78 B9 8B 5F FF 73 51 9D F0 29 A8 1B 49 9B 51 47    x.._.sQ..)..I.QG
0030  4D A1 2A C4 DD 54 F3 A4 B5 B8 82 C0 93 D4 61 78    M.*..T........ax
0040  B6 AE DC 79 49 6D 41 55 73 65 72 6E 61 6D 65 00    ...yImAUsername.

22  211.233.0.54:6112  71.124.70.4:4754  8  Recv 
0000  FF 52 08 00 00 00 00 00                            .R......


I get account created successfully but when I logon, invalid password.. Any idea why? I do not have a problem creating an account on the other products. Just War3 An TFT..