Hi there, i was always interested in how to develop software, this summer i said to myself "why not?" and i started to study a bit of c++.
So the problem is, i'm playing nostale right now so i tought i could start with a bot for nostale to learn it but it is harder than i expected.
I started with simple security options, i got an open source packet logger and developed my own ui with qt, after some time the security worked just fine so i started with something more serious, how to get a list of the items in my inventory. And here is the problem: i can't get it to work. I tried to scan with cheat engine for the current amount of an item, dropped a part of it and scanned for the next value to find a single result, right clicked it and clicked on "find out what access this address", than i had four results with increased access with open inventory and no access with closed inventory. I click on the first result use the address found in "the value of the pointer needed to find this address is XXXXXX" to dissect the data structure. what i find is something like this
There are item id's and current amount, i'm doing it right? do you have suggestions on how to go about it from now?
If you have some time to waste on this i would be glad, and if you can explain how to go about it like you would explain it to a monkey. Thanks.
So the problem is, i'm playing nostale right now so i tought i could start with a bot for nostale to learn it but it is harder than i expected.
I started with simple security options, i got an open source packet logger and developed my own ui with qt, after some time the security worked just fine so i started with something more serious, how to get a list of the items in my inventory. And here is the problem: i can't get it to work. I tried to scan with cheat engine for the current amount of an item, dropped a part of it and scanned for the next value to find a single result, right clicked it and clicked on "find out what access this address", than i had four results with increased access with open inventory and no access with closed inventory. I click on the first result use the address found in "the value of the pointer needed to find this address is XXXXXX" to dissect the data structure. what i find is something like this
Code:
0000 - 4 Bytes (Hex) 68FAADC : FFFF00D3 0004 - 4 Bytes 68FAAE0 : 3 0008 - 4 Bytes 68FAAE4 : 0 000C - 4 Bytes 68FAAE8 : 0 0010 - 4 Bytes (Hex) 68FAAEC : 000F0000 0014 - 4 Bytes 68FAAF0 : 1 0018 - 4 Bytes 68FAAF4 : 0 001C - 4 Bytes 68FAAF8 : 0 0020 - 4 Bytes 68FAAFC : 0 0024 - 4 Bytes 68FAB00 : 0 0028 - 4 Bytes 68FAB04 : 0 002C - 4 Bytes 68FAB08 : 0 0030 - 4 Bytes 68FAB0C : 0 0034 - 4 Bytes 68FAB10 : 0 0038 - Pointer 68FAB14 : P->068F8590 003C - 4 Bytes 68FAB18 : 0 0040 - 4 Bytes 68FAB1C : 0 0044 - Pointer 68FAB20 : P->0F932450 0048 - 4 Bytes (Hex) 68FAB24 : FFFF03F4 004C - 4 Bytes 68FAB28 : 1 0050 - 4 Bytes 68FAB2C : 0 0054 - 4 Bytes 68FAB30 : 0 0058 - 4 Bytes 68FAB34 : 1 005C - 4 Bytes 68FAB38 : 999 0060 - 4 Bytes 68FAB3C : 0 0064 - 4 Bytes 68FAB40 : 0 0068 - 4 Bytes 68FAB44 : 0 006C - 4 Bytes 68FAB48 : 0 0070 - 4 Bytes 68FAB4C : 0 0074 - 4 Bytes 68FAB50 : 0 0078 - 4 Bytes 68FAB54 : 0 007C - 4 Bytes 68FAB58 : 0 0080 - Pointer 68FAB5C : P->068F8590 0084 - 4 Bytes 68FAB60 : 0 0088 - 4 Bytes 68FAB64 : 0 008C - Pointer 68FAB68 : P->0F931690 0090 - 4 Bytes (Hex) 68FAB6C : FFFF03EA 0094 - 4 Bytes 68FAB70 : 1 0098 - 4 Bytes 68FAB74 : 0 009C - 4 Bytes 68FAB78 : 0 00A0 - Pointer 68FAB7C : P->00010001 00A4 - 4 Bytes 68FAB80 : 5 00A8 - 4 Bytes 68FAB84 : 0 00AC - 4 Bytes 68FAB88 : 0 00B0 - 4 Bytes 68FAB8C : 0 00B4 - 4 Bytes 68FAB90 : 0 00B8 - 4 Bytes 68FAB94 : 0 00BC - 4 Bytes 68FAB98 : 0 00C0 - 4 Bytes 68FAB9C : 0 00C4 - 4 Bytes 68FABA0 : 0 00C8 - Pointer 68FABA4 : P->068F8590 00CC - 4 Bytes 68FABA8 : 0 00D0 - 4 Bytes 68FABAC : 0 00D4 - Pointer 68FABB0 : P->0F90AC90 00D8 - 4 Bytes (Hex) 68FABB4 : FFFF04DE 00DC - 4 Bytes 68FABB8 : 1 00E0 - 4 Bytes 68FABBC : 0 00E4 - 4 Bytes 68FABC0 : 0 00E8 - Pointer 68FABC4 : P->00020001 00EC - 4 Bytes 68FABC8 : 27 00F0 - 4 Bytes 68FABCC : 0 00F4 - 4 Bytes 68FABD0 : 0 00F8 - 4 Bytes 68FABD4 : 0 00FC - 4 Bytes 68FABD8 : 0 0100 - 4 Bytes 68FABDC : 0
If you have some time to waste on this i would be glad, and if you can explain how to go about it like you would explain it to a monkey. Thanks.