|
You last visited: Today at 22:43
Advertisement
NomadMemory Pointer
Discussion on NomadMemory Pointer within the AutoIt forum part of the Coders Den category.
05/02/2015, 23:46
|
#1
|
elite*gold: 138
Join Date: Apr 2012
Posts: 3,494
Received Thanks: 1,769
|
NomadMemory Pointer
Hallo,
ich kriege es nicht hin einen Pointer mit AutoIt auszulesen. In CE funktioniert alles, auch wenn ich das Spiel neustarte, also müsste der Pointer stimmen.
CE gibt mir diese Adresse: "nostalex.dat"+003FCC5C
Und die zwei Offsets 825 und C
Nun sieht das bei mir in AutoIt so aus:
#RequireAdmin
#include <NomadMemory.au3>
$PID = ProcessExists("NostaleX.dat")
If $PID = 0 Then
MsgBox(0,"","Process does not exist")
EndIf
$hOpen = _memoryopen($PID)
$BaseAddress = 0x00400000
$StaticOffset = 0x003FCC5C
$sRead = _memoryread($BaseAddress + $StaticOffset,$hOpen,'BYTE') + 0x825
$sRead2 = _memoryread($sRead,$hOpen,'BYTE') + 0xC
While True
$sRead3 = _memoryread($sRead2,$hOpen,'BYTE')
ToolTip($sRead3)
Sleep(100)
WEnd
Mir wird aber ständig 0 zurückgegeben, auch wenn der Wert sich verändert. Hoffe jemand kann mir da helfen
|
|
|
05/03/2015, 01:29
|
#2
|
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
|
Es könnte an dem Datentyp liegen. Du liest nämlich erst im letzten Schritt nur den Wert aus. Davor liest du jedes mal einen Pointer, kein Byte. ('BYTE' -> 'ptr').
Alternativ kannst du ja mal _MemoryPointerRead probieren.
Dein Offset-Array sähe dann so aus.
[0] = 0
[1] = 0x825
[2] = 0xC
Der Return sieht dann wie folgt aus
[0] = Adresse vom Pointer (dynamisch)
[1] = Wert
|
|
|
05/03/2015, 02:23
|
#3
|
elite*gold: 138
Join Date: Apr 2012
Posts: 3,494
Received Thanks: 1,769
|
Quote:
Originally Posted by alpines
Es könnte an dem Datentyp liegen. Du liest nämlich erst im letzten Schritt nur den Wert aus. Davor liest du jedes mal einen Pointer, kein Byte. ('BYTE' -> 'ptr').
Alternativ kannst du ja mal _MemoryPointerRead probieren.
Dein Offset-Array sähe dann so aus.
[0] = 0
[1] = 0x825
[2] = 0xC
Der Return sieht dann wie folgt aus
[0] = Adresse vom Pointer (dynamisch)
[1] = Wert
|
Hat leider beides nichts gebracht. Wenn ich nur beim letzten read BYTE als typ angebe und davor ptr, bekomme ich trotzdem ständig 0 angezeigt und mit der Funktion bekomme ich Die Adresse 0x0000000000000000 mit der Value 0 :/
|
|
|
05/03/2015, 03:37
|
#4
|
elite*gold: 64
Join Date: May 2011
Posts: 1,229
Received Thanks: 854
|
Probier das mal so:
Code:
#RequireAdmin
#include <NomadMemory.au3>
$PID = ProcessExists("NostaleX.dat")
If $PID = 0 Then
MsgBox(0, "", "Process does not exist")
EndIf
$hOpen = _memoryopen($PID)
$BaseAddress = 0x00400000
$StaticOffset = 0x003FCC5C
$sRead = _memoryread($BaseAddress + $StaticOffset, $hOpen) + 0x825
$sRead2 = _memoryread($sRead, $hOpen) + 0xC
While True
$sRead3 = _memoryread($sRead2, $hOpen, 'BYTE')
ToolTip($sRead3)
Sleep(100)
WEnd
|
|
|
05/03/2015, 05:39
|
#5
|
elite*gold: 138
Join Date: Apr 2012
Posts: 3,494
Received Thanks: 1,769
|
Quote:
Originally Posted by BladeTiger12
Probier das mal so:
Code:
#RequireAdmin
#include <NomadMemory.au3>
$PID = ProcessExists("NostaleX.dat")
If $PID = 0 Then
MsgBox(0, "", "Process does not exist")
EndIf
$hOpen = _memoryopen($PID)
$BaseAddress = 0x00400000
$StaticOffset = 0x003FCC5C
$sRead = _memoryread($BaseAddress + $StaticOffset, $hOpen) + 0x825
$sRead2 = _memoryread($sRead, $hOpen) + 0xC
While True
$sRead3 = _memoryread($sRead2, $hOpen, 'BYTE')
ToolTip($sRead3)
Sleep(100)
WEnd
|
Auch ständig 0
|
|
|
05/03/2015, 10:57
|
#6
|
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
|
Bist du sicher das die BaseAddress bei Nostale immer 0x400000 ist?
|
|
|
05/03/2015, 13:23
|
#7
|
elite*gold: 64
Join Date: May 2011
Posts: 1,229
Received Thanks: 854
|
Ja das ist die Base auf jeden Fall.
Aber ich schätze die Offsets b.z.w sein Static Offset ist falsch.
(Bei mir ist es nämlich auch immer 0, und falsch kann dieser Code nicht sein.
Auch alpines seiner ist korrekt.)
|
|
|
05/03/2015, 19:02
|
#8
|
elite*gold: 138
Join Date: Apr 2012
Posts: 3,494
Received Thanks: 1,769
|
Wie prüf ich denn dass der pointer stimmt? Ich hab halt immer das spiel beendet, neu gestartet und CE an den neuen prozess gebunden. Und wenn der pointer immernoch die richtigen werte zeigt, dann stimmt der doch oder nicht?
|
|
|
05/03/2015, 19:48
|
#9
|
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
|
Ja, im Normalfall schon. Ist das Spiel eigentlich 32 oder 64 Bit? Versuch mal es explizit für 32 Bit und nur für 64 Bit zu compilen und probiers damit.
|
|
|
05/03/2015, 20:22
|
#10
|
elite*gold: 64
Join Date: May 2011
Posts: 1,229
Received Thanks: 854
|
Immer wieder? Versuch es jetzt nochmal und schau ob der Wert immer noch stimmt.
|
|
|
05/03/2015, 20:55
|
#11
|
elite*gold: 138
Join Date: Apr 2012
Posts: 3,494
Received Thanks: 1,769
|
Für x64 und x86 zu compilen hat nichts bewirkt. Ich hab das spiel mehrmals neugestartet aber die Pointer zeigen immer den richtigen wert. Wie trage ich denn einen Pointer in CE manuell ein?
Edit: Habs herausgefunden. Ja, der Pointer stimmt immernoch
|
|
|
05/03/2015, 21:39
|
#12
|
elite*gold: 0
Join Date: Jan 2013
Posts: 426
Received Thanks: 129
|
Die Offsets kopiert man von CE von unten nach oben ein, falls du es noch nicht wussest.
Vielleicht hilft das ja.
|
|
|
05/03/2015, 21:55
|
#13
|
elite*gold: 138
Join Date: Apr 2012
Posts: 3,494
Received Thanks: 1,769
|
Quote:
Originally Posted by FacePalmMan
Die Offsets kopiert man von CE von unten nach oben ein, falls du es noch nicht wussest.
Vielleicht hilft das ja.
|
Lol ich hänge seit Wochen an dem Problem und das erzählst du mir erst jetzt? Mein Gott, daran lags... Vielen Dank!
|
|
|
 |
Similar Threads
|
Cheatengine pointer - Nomadmemory
12/03/2013 - AutoIt - 10 Replies
Hey, so I'm having a little trouble using Nomadmemory properly.
Well... before I can even get to Nomadmemory, I can't even find the correct pointers for certain games. I found this tutorial online (Flyff auto HP Regen trainer creating totorial - YouTube). It's basic enough, I understand it. I tried it with a single player game and it worked just fine, I found the pointer for it.
Now, I'm trying to do this with my current HP on an online game... and every time I get to the part where I...
|
Frage: Wie findet man zB UG Pointer?Speed pointer?
03/30/2010 - Kal Online - 2 Replies
kann mir einer sagen wie man UG/Speed pointer finden kann usw^^´ß#
|
Nomadmemory
02/16/2010 - AutoIt - 12 Replies
Hallo,
Ich suche schon seit 2 h nach der nomedmemory.au3!
Aber ich finde sie nicht..
O.o
Kann Sie mir pls wer geben?
lg Cann
|
[Help!!]Nomadmemory.au3
06/18/2009 - 12Sky2 - 4 Replies
i have all time problem with Nomadmemory.au3
i did what got suggest i had look for in google found like 4-5 of them but no any work out ;/.
all time same problem
"Line 7 (File "c:\documents and setting\storm\pulpit\autopotion.au3"):
#include <Nomadmemory.au3>
Error:Error opening the file."
|
All times are GMT +1. The time now is 22:43.
|
|