Hey Leute,
hoffentlich kann mir hier jemand helfen. Ich versuche die Adresse mit der BaseAddress und dem Offset zu berechnen um auf den Inhalt der neuen Adresse zuzugreifen. Das Problem ist, irgendwie klappt es nicht.
Um euch mal näher zu erläutern was ich da eig. versuche. Ich will für GTA San Andreas GodMode schreiben (Memory Editing lernen). Die Adresse fürs Leben habe ich auch gefunden, diese kann ich dann auch manipulieren und das erfolgreich. Jedoch ist die Adresse nicht statisch also ändert die sich nach jedem neustart des Spieles. Also habe ich mit CheatEngine die Pointer gesucht und nach mehrmaligem wiederholen/neustarten des Spieles konnte ich 9 Pointer rausfiltern die immer auf die Adresse für die Lebensanzeige zeigen. Hier ein Bild:
[Only registered and activated users can see links. Click Here To Register...]
Meine Klasse fürs Memory Editing ist auch fertig. So rufe ich das ganze nun auf ohne Pointer:
Das funktioniert auch perfekt wenn ich die aktuelle Adresse des Spieles nehme. Kann mir jemand helfen das umzubauen so das ich mit einem der Pointer und des Offset's die neue Adresse berechnen kann ? Entweder ich übersehe etwas oder ich Blick da noch nicht ganz durch. Hab heute erst mit Memory Editing angefangen. Versuche schon die ganze Zeit rumzuprobieren aber ich kriegs nicht hin.
hoffentlich kann mir hier jemand helfen. Ich versuche die Adresse mit der BaseAddress und dem Offset zu berechnen um auf den Inhalt der neuen Adresse zuzugreifen. Das Problem ist, irgendwie klappt es nicht.
Um euch mal näher zu erläutern was ich da eig. versuche. Ich will für GTA San Andreas GodMode schreiben (Memory Editing lernen). Die Adresse fürs Leben habe ich auch gefunden, diese kann ich dann auch manipulieren und das erfolgreich. Jedoch ist die Adresse nicht statisch also ändert die sich nach jedem neustart des Spieles. Also habe ich mit CheatEngine die Pointer gesucht und nach mehrmaligem wiederholen/neustarten des Spieles konnte ich 9 Pointer rausfiltern die immer auf die Adresse für die Lebensanzeige zeigen. Hier ein Bild:
[Only registered and activated users can see links. Click Here To Register...]
Meine Klasse fürs Memory Editing ist auch fertig. So rufe ich das ganze nun auf ohne Pointer:
Code:
int byteswritten;
int memoryaddress = 0x0A05E1D0; // Adresse vom Leben (Nicht statisch!)
float life = 100f;
byte[] memoryvalue;
memoryvalue = BitConverter.GetBytes(wantedValue);
byteswritten = reader.WriteProcessMemory((IntPtr)memoryaddress, memoryvalue, out byteswritten);