Deprecated: The behavior of unparenthesized expressions containing both '.' and '+'/'-' will change in PHP 8: '+'/'-' will take a higher precedence in /home/iano/public_html/tpforums-vb5/forum/includes/class_core.php on line 5842

PHP Warning: Use of undefined constant MYSQL_NUM - assumed 'MYSQL_NUM' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_ASSOC - assumed 'MYSQL_ASSOC' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_BOTH - assumed 'MYSQL_BOTH' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 588

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 612

PHP Warning: Use of undefined constant archive_postsperpage - assumed 'archive_postsperpage' (this will throw an Error in a future version of PHP) in ..../archive/index.php on line 456
CharListPtr, relatively easy question, need your help... [Archive] - Forums

PDA

View Full Version : CharListPtr, relatively easy question, need your help...



matzen
11-05-2014, 11:18 PM
After a long break I'm back, lol. Since the acc and pass could no longer be found in a static address after the update 9.71, we had to get them based on the address of the Character List (Pointer), using a structure, as you all know. I got the C++ code and successfully translated it to VB6. It worked like a charm, but eventually I abandoned Tibia. But here I am, 2 years later, asking: did the structure change since then?

adrCharListPtr=&H9CAE28
(this address is used along with the structure to pinpoint the acc and pass)

I always used the adrCharListPtr address from BlackD, and the one above, also from him, is for the latest 10.61 client. However the acc and pass are returning blank. Either the address is wrong (which I doubt) or the code below is no longer able to pinpoint to the the acc and pass in the memory, possibly due to a small change in the structure:

VB6 structure:


Public Type textField ' 0
cstring(0 To 15) As Byte ' 16
textLength As Byte ' 17
unknown1(0 To 2) As Byte ' 20
fieldType As Byte ' 21
unknown2(0 To 2) As Byte ' 24
unknown3 As Long ' 28
End Type

Public Type loginInfo
charListBegin As Long
charListEnd As Long
unknown(0 To 11) As Byte
accountName As textField
password As textField
End Type


Help please?!?

matzen
11-08-2014, 09:29 PM
Bah, guys, I 'fixed' the problem but it looks kinda ugly. I had to create a new Public Type loginInfo2 and use for the password.

The new CharListPtr address that I use is &H9CAE24

Code below

------

Public Type textField ' 0
cstring(0 To 15) As Byte ' 16
textLength As Byte ' 17
unknown1(0 To 2) As Byte ' 20
fieldType As Byte ' 21
unknown2(0 To 2) As Byte ' 24
unknown3 As Long ' 28
End Type

Public Type loginInfo
charListBegin As Long
charListEnd As Long
unknown(0 To 11) As Byte
accountName As textField
password As textField
End Type

Public Type loginInfo2
charListBegin As Long
charListEnd As Long
unknown(0 To 7) As Byte ' See the difference btw loginInfo & loginInfo2? Previously loginInfo was enough for both acc and pass
accountName As textField
password As textField
End Type