Diskussionen über Memorys

04/10/2009 12:43 Kaneoxi#436
ist noch jmd hier, der die update.ini geändert hat und es denoch nicht funzt?

Mein Bot dreht sich nur ruckelig.


Ok, ist erledigt- ein kleines B zuviel.
04/10/2009 16:10 NBA#437
Nett, aber eine kleine Frage am rande.
Wenn ich eine Addresse habe, zb. 0xA67bC (ist ez erdacht),
muss ich dann fuer ein OffSet
a) 0xA67bC + 4 ;(Vier sagen wir 4 ist das OffSet)
oder
b) 0xA67bC + Hex(4)
schreiben?
04/10/2009 18:03 Azunai#438
hex(4) = dec(4)

ist einfach das selbe ;P

und au3 rechnet notfalls für dich selber das ganze um
04/11/2009 16:12 __wadim#439
nochmal was hinzugefügt:
Quote:
PTR_HP_E = 0xd28c08
;offset 1 = 0x104
;current hp = 0x28
;current e = 0x14
;max hp = 0x2c
;max e = 0x18
;hero_1 hp = (-0xc)
;hero_2 hp = (-0x40)
;hero_3 hp = (-0x74)

PTR_BASEA = 0xa0082c
PTR_BASEB = 0xa00768
;offset 1 = 0x18
;offset 2 = 0x2c
;current kurzick = 0x6e4
;current luxon = 0x6f4
;current balthazar = 0x724
;current exp = 0x6dc
;max kurzick = 0x740
;max luxon = 0x744
;max balthazar = 0x748

;Gold
;PTR_BASEA/PTR_BASEB
;offset 1 = 0x18
;offset 2 = 0x40
;offset 3 = 0xf8
;gold_self = 0x64
;gold_chest = 0x4

;Travel
;PTR_BASEA/PTR_BASEB
;offset 1 = 0x18
;offset 2 = 0x44
;travel_id = 0x1bc

M_CHAT = 0xa00878
;m_chat = 0x2a8
downloadlink ist der selbe
04/11/2009 16:14 kknb#440
wahah wie geil ist das denn, wollte grad ne statistik in meinen bot einbauen wo man sieht wieviel der gefarmt hat, mit dem travel muss ich mich erstmal auseinander setzen.
04/11/2009 16:51 buFFy!#441
Sorry das ich euch belästigen muss, aber wieso kriege ich hier immer 0?

Code:
#include "tt6.au3"

Const $PTR_HEALTH = 0xd28c08 + 0x28
$READ = _MemoryRead($PTR_HEALTH, $hprocess, 'int')
MsgBox(0x40, "Memory Test for BALTHI POINTS",($READ))
04/11/2009 16:58 __wadim#442
Quote:
Originally Posted by eF_Hacks View Post
Sorry das ich euch belästigen muss, aber wieso kriege ich hier immer 0?

Code:
#include "tt6.au3"

Const $PTR_HEALTH = 0xd28c08 + 0x28
$READ = _MemoryRead($PTR_HEALTH, $hprocess, 'int')
MsgBox(0x40, "Memory Test for BALTHI POINTS",($READ))
weil du es falsch machst! :)
willst du die hp oder die balthasarpunkte lesen?
04/11/2009 17:02 buFFy!#443
hp :)
04/11/2009 17:09 __wadim#444
vlt sollte ma einer wirklich ne erklärung schreiben, wie man die ganzen sachen benutzt.

die pointer adresse steht immer ganz oben, dann folgen die offsets, die für alle anderen gleich gelten (dh alle "offset1/2/3.. müssen vorher auch beachtet werden um zu den bestimmten adressen zu kommen).

zb hp:
Code:
$ptr = memoryread(PTR_HP_E, dword)
$ptr = memoryread($ptr + offset 1, dword) 
$hp = memoryread($ptr + current hp, float)
04/11/2009 17:21 buFFy!#445
Damit wäre ich dann wieder bei 0..

Code:
#include "tt6.au3"

Const $PTR_HEALTH = 0xd28c08
Const $PTR_HEALTH_OFFSET = 0x104
Const $PRT_HEALTH_CUR_HP = 0x28
$1 = _MemoryRead($PTR_HEALTH, $hprocess)
$2 = _MemoryRead($PTR_HEALTH + $PTR_HEALTH_OFFSET, $hprocess)
$3 = _MemoryRead($PTR_HEALTH + $PTR_HEALTH_OFFSET + $PRT_HEALTH_CUR_HP, $hprocess, 'float')

$Format = StringFormat("%s %s %s", " Ergebnis von 1: " & $1 & @CRLF,  "Ergebnis von 2: " & $2 & @CRLF,  "Ergebnis von 3: " & $3)
MsgBox(0x40, "Ergebnis", $Format)
04/11/2009 17:26 __wadim#446
ja lol^^ hasts schon wieder falsch :) guck lieber noch ma drüber
04/11/2009 17:28 buFFy!#447
Hö?
Was isn nu falsch? :eek:
Ich hab den Pointer.. dann hab ich das Base Offset dazu gerechnet. und dann das Offset der Hp..
Ist doch eigentlich richtig :eek:
Oder? :confused:

Code:
#include "tt6.au3"

Const $PTR_HEALTH = 0xd28c08
Const $PTR_HEALTH_OFFSET = 0x104
Const $PRT_HEALTH_CUR_HP = 0x28
$1 = _MemoryRead($PTR_HEALTH, $hprocess, 'dword')
$2 = _MemoryRead($1 + $PTR_HEALTH_OFFSET, $hprocess, 'dword')
$3 = _MemoryRead($2 + $PRT_HEALTH_CUR_HP, $hprocess)

$Format = StringFormat("%s %s %s", " Ergebnis von 1: " & $1 & @CRLF,  "Ergebnis von 2: " & $2 & @CRLF,  "Ergebnis von 3: " & $3)
MsgBox(0x40, "Ergebnis", $Format)
Jetz erhalte ich bei 3 zwar nichtmehr 0.. aber auf jedenfall auch nicht meine '480' HP ..
04/11/2009 17:31 __wadim#448
kopf anmachen^^
04/11/2009 17:32 buFFy!#449
Ja der is an.. aber trotzdem kommt da nich die Zahl raus die rauskommen soll xD
Willst dus mir nich vorkaun? :o
04/11/2009 17:37 __wadim#450
jetzt hast du es ja richtig hineditiert :)
in $3 steht nun "1", wenn du es als float ausliest. 1=100%
wenn du deine 480 hp ausgegeben haben willst musst du max hp * $3 rechnen xD