|
|||||||
| English Support Board English & Foreign Languages support |
![]() |
|
|
LinkBack | Strumenti discussione |
|
|||
|
aber das ist was anderes! wenn du von spielen cheats suchst gebe einfacher per google cwcheats und den namen des games was du suchen tust volla hast du dann mehre seiten mit den gesuchten sachen
|
|
|||
|
DMA codes
@gentleL hy also erst mal bin ich froh endlich was auf deutsch gefunden zu haben so nun zu meiner eigentlichen Frage könntest du ein Deutsches Tutorial posten um im cwcheat DMA code szu suchen den das mit dem fixed hab ich zwar hin bekommen hat soweit auch alles geklappt nur dann ist meine PSP ausgestiegen hat sich von selbst abgeschaltet als ich es dann wieder angeschalten hab ging der code nicht mehr wäre cooll wenn mal so ein tut gepostet wird.
thx im vorraus |
|
||||
|
Tutorial: DMA Cheats
Zutaten: CWCheat, pointersearcher, OpenOffice Calc Hier habt ihr eine DMA Anleitung auf deutsch ^^ Übersetzen war mir zu lahm von daher gibts hier nur eine Neuauflage. ![]() DMA steht in diesem Fall für "Dynamische Speicher Nutzung" Für den cheatsuchenden User bedeuted dies, das sich Adressen für die Cheats ändern können. Da das Spiel selber aber diese Bereiche finden muss benutzt es dafür einen oder mehrere Zeiger(Pointer). Für die etwas fortgeschrittenen unter den Lesern: Ein Zeiger ist eine ASM Sprung Anweisung zu einer Adresse. Ziel dieses Tutorials ist es dem Leser beizubringen diese Zeiger zu finden und sie für CWCheats zu 'mis'brauchen Ich werde für diesen Zweck meine Arbeitsschritte für Yu-Gi-Oh! GX Tag Force 3 (TF3) für euch etwas näher erläutern.. Bei diesem Spiel ändern sich die Adressen nur nach jedem Neustart. Allerdings kann dies bei anderen Spielen durchaus variieren. Zum Beispiel beim Wechsel in andere Levelabschnitte. Bei TF3 kommt noch erschwerend hinzu das die nötigen Zeiger nur in bestimmten Spielmodi vorhanden sind. Mit anderen Worten die Spieleentwickler haben ihre eigenen Methoden um das Cheatsuchen zu erschweren. IdR beginnt man seine Suche wie bei den nicht-DMA Spielen. Daher setze ich hier mal vorraus das bekannt ist wie man den "Cheat-Searcher" von CWCheat benutzt um die gesuchten Adressen zu finden. Für unser Beispiel TF3 gehen wir nun davon aus das wir die Adresse des Geld-Cheats bereits gefunden haben: 0x002B55BC Durch rumprobieren im "Memory Editor" ist auch schon bekannt das es sich um einen 32bit Wert handelt. Schritt 1: ---------- Nach einem Neustart des Spiels wird klar das es sich um ein DMA Spiel handelt da die Adresse des Wertes sich geändert hat. Um zu verhindern die Suchprozedur immer wieder aufs neue auszuführen. Empfehle ich hierfür den "Memory-Editor" von CWCheat zu verwenden. Dort einfach die zuvor gefundene Adresse anspringen und nachsehen wohin sich der Wert verschoben hat. Kurz: 'Select' drücken, alte adresse mit 'DPAD' eingeben und mit 'X' bestätigen. Neue Adresse mit 'DPAD' auswählen, 'Select' drücken und Adresse die angezeigt wird abschreiben. -> Adresse 1: 0x002B55CC (Hier ist sie um 16 stellen nach rechts 'gewandert') Wir werden diese Adresse später brauchen daher unbedingt notieren! Als nächstes Verlassen wir den "Cheat-Searcher", aktivieren die "Dump"-Funktion, gehen zurück ins Spiel und drücken '[]' und halten es gedrückt bis uns ein Fenster informiert das der "Dumping" Prozess läuft. Abhängig von der Schreibgeschwindigkeit des Memory Sticks kann dies zwischen 3-20 sekunden dauern. Schritt 2: ---------- Nun müssen wir die Prozedur wiederholen. Doch zuerst müssen wir das Spiel dazu bringen die Daten wieder an eine andere Stelle zu verlagern. Also verlassen wir das Spiel und starten es erneut. Nun entweder wieder mit dem "Memory-Editor" oder dem "Cheat Searcher" die gesuchte Adresse finden. -> Adresse 2: 0x002B55AC (Hier hat sie sich nun um 32 Stellen nach links 'verschoben') Nun folgt das notieren der Adresse und das anfertigen des zweiten Memdumps. Schritt 3: ---------- Das englische Tutorial schlägt vor dies zur Sicherheit noch ein drittes Mal zu machen. ![]() Schritt 4: ---------- So nun haben wir 2(3) Adressen und eine passende Anzahl memdumps dazu auf dem Memory-Stick. Diese verschieben wir jetzt auf den PC. Dann brauchen wir entweder den "pointersearcher" von weltall oder DMAHunter von nitePR. Ersterer findet sich im CWCheat Paket und zweiteres lässt sich sicherlich schnell mit hilfe von google auftreiben. Egal für welches man sich entcheidet beide benötigen 2 Memdumps und 2 Adressen um zu funktionieren. Ich gehe jetzt hier nur auf pointersearcher ein. Also nach dem Start des Programms gibt man dem Programm Memdump0 mit Adresse1 und Memdump1 mit Adresse2 (Bei der Eingabe der Adresse das "0x" am Anfang nicht vergessen.) Die Ausgabe des Programms liefert nun folgendes (Habs auch gleich mal übersetzt ^^): Codice:
CWCHEAT Pointer searcher version 1.0 by weltall (c)2008
http://cwcheat.consoleworld.org
Built on: Aug 29 2008 09:26:36
SUCHE 1:
ERGEBNIS 1:
Zeiger gefunden bei 0xCC8C0
Er zeigt auf 0xCCD88
Abstand von der Zeiger Basis ist 0x1E8834
ERGEBNIS 2:
Zeiger gefunden bei 0x2BE808
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 3:
Zeiger gefunden bei 0x2BED6C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 4:
Zeiger gefunden bei 0x2BF0A4
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 5:
Zeiger gefunden bei 0x2BFF1C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 6:
Zeiger gefunden bei 0x6C9124
Er zeigt auf 0x2BFB64
Abstand von der Zeiger Basis ist 0xFFFF5A58
ERGEBNIS 7:
Zeiger gefunden bei 0x6C9130
Er zeigt auf 0x2BF824
Abstand von der Zeiger Basis ist 0xFFFF5D98
ERGEBNIS 8:
Zeiger gefunden bei 0x6CD964
Er zeigt auf 0x2BC5D4
Abstand von der Zeiger Basis ist 0xFFFF8FE8
ERGEBNIS 9:
Zeiger gefunden bei 0x6CD968
Er zeigt auf 0x2BFB8C
Abstand von der Zeiger Basis ist 0xFFFF5A30
ERGEBNIS 10:
Zeiger gefunden bei 0x6CE428
Er zeigt auf 0x2BFAFC
Abstand von der Zeiger Basis ist 0xFFFF5AC0
ERGEBNIS 11:
Zeiger gefunden bei 0x6CE440
Er zeigt auf 0x2BFAD8
Abstand von der Zeiger Basis ist 0xFFFF5AE4
ERGEBNIS 12:
Zeiger gefunden bei 0x6CE4D8
Er zeigt auf 0x2BFB44
Abstand von der Zeiger Basis ist 0xFFFF5A78
ERGEBNIS 13:
Zeiger gefunden bei 0x6CE524
Er zeigt auf 0x2BFB50
Abstand von der Zeiger Basis ist 0xFFFF5A6C
ERGEBNIS 14:
Zeiger gefunden bei 0x6CE528
Er zeigt auf 0x2BFB84
Abstand von der Zeiger Basis ist 0xFFFF5A38
ERGEBNIS 15:
Zeiger gefunden bei 0x6CE52C
Er zeigt auf 0x2BF8A0
Abstand von der Zeiger Basis ist 0xFFFF5D1C
ERGEBNIS 16:
Zeiger gefunden bei 0x6CEA48
Er zeigt auf 0x2BF838
Abstand von der Zeiger Basis ist 0xFFFF5D84
ERGEBNIS 17:
Zeiger gefunden bei 0x6CEA50
Er zeigt auf 0x2BFB58
Abstand von der Zeiger Basis ist 0xFFFF5A64
ERGEBNIS 18:
Zeiger gefunden bei 0x6CEA64
Er zeigt auf 0x2BFA30
Abstand von der Zeiger Basis ist 0xFFFF5B8C
ERGEBNIS 19:
Zeiger gefunden bei 0x6CEA68
Er zeigt auf 0x2BFA0C
Abstand von der Zeiger Basis ist 0xFFFF5BB0
ERGEBNIS 20:
Zeiger gefunden bei 0x6CEA6C
Er zeigt auf 0x2C08AC
Abstand von der Zeiger Basis ist 0xFFFF4D10
ERGEBNIS 21:
Zeiger gefunden bei 0x90C624
Er zeigt auf 0x2BFA18
Abstand von der Zeiger Basis ist 0xFFFF5BA4
ERGEBNIS 22:
Zeiger gefunden bei 0x90C628
Er zeigt auf 0x2BFA28
Abstand von der Zeiger Basis ist 0xFFFF5B94
ERGEBNIS 23:
Zeiger gefunden bei 0xE69350
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 24:
Zeiger gefunden bei 0xE69AE0
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 25:
Zeiger gefunden bei 0xE735E4
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 26:
Zeiger gefunden bei 0x10D7D70
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 27:
Zeiger gefunden bei 0x10D851C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 28:
Zeiger gefunden bei 0x10D8954
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 29:
Zeiger gefunden bei 0x10FE8FC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 30:
Zeiger gefunden bei 0x10FEA6C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 31:
Zeiger gefunden bei 0x10FEC78
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 32:
Zeiger gefunden bei 0x10FEE78
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 33:
Zeiger gefunden bei 0x10FF05C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 34:
Zeiger gefunden bei 0x10FF248
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 35:
Zeiger gefunden bei 0x10FF508
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 36:
Zeiger gefunden bei 0x10FF79C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 37:
Zeiger gefunden bei 0x1102448
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 38:
Zeiger gefunden bei 0x11027CC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 39:
Zeiger gefunden bei 0x11028BC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 40:
Zeiger gefunden bei 0x1103018
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 41:
Zeiger gefunden bei 0x11032EC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 42:
Zeiger gefunden bei 0x11034A8
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 43:
Zeiger gefunden bei 0x110363C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 44:
Zeiger gefunden bei 0x1157CE0
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 45:
Zeiger gefunden bei 0x1158490
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 46:
Zeiger gefunden bei 0x1158D90
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 47:
Zeiger gefunden bei 0x1159700
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 48:
Zeiger gefunden bei 0x115A0F0
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 49:
Zeiger gefunden bei 0x115A510
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 50:
Zeiger gefunden bei 0x115AFFC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 51:
Zeiger gefunden bei 0x115B0CC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 52:
Zeiger gefunden bei 0x1172E8C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 53:
Zeiger gefunden bei 0x1172F88
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 54:
Zeiger gefunden bei 0x11731BC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 55:
Zeiger gefunden bei 0x11732CC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 56:
Zeiger gefunden bei 0x1173408
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 57:
Zeiger gefunden bei 0x117363C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 58:
Zeiger gefunden bei 0x11736FC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 59:
Zeiger gefunden bei 0x1173838
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 60:
Zeiger gefunden bei 0x1173AA8
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 61:
Zeiger gefunden bei 0x1173D58
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 62:
Zeiger gefunden bei 0x1173FC8
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 63:
Zeiger gefunden bei 0x1174268
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 64:
Zeiger gefunden bei 0x11745D8
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 65:
Zeiger gefunden bei 0x1174958
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 66:
Zeiger gefunden bei 0x1174BD8
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 67:
Zeiger gefunden bei 0x1175F2C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 68:
Zeiger gefunden bei 0x11761BC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 69:
Zeiger gefunden bei 0x123AE7C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 70:
Zeiger gefunden bei 0x123AFB8
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 71:
Zeiger gefunden bei 0x123B07C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 72:
Zeiger gefunden bei 0x123B208
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 73:
Zeiger gefunden bei 0x123C36C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 74:
Zeiger gefunden bei 0x123C42C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 75:
Zeiger gefunden bei 0x123C4EC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 76:
Zeiger gefunden bei 0x123C68C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 77:
Zeiger gefunden bei 0x123CFD8
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 78:
Zeiger gefunden bei 0x123D298
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 79:
Zeiger gefunden bei 0x123D4CC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 80:
Zeiger gefunden bei 0x123D57C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 81:
Zeiger gefunden bei 0x123D63C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 82:
Zeiger gefunden bei 0x123D778
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 83:
Zeiger gefunden bei 0x123D9F8
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 84:
Zeiger gefunden bei 0x123DCE8
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 85:
Zeiger gefunden bei 0x123E1DC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 86:
Zeiger gefunden bei 0x123E29C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 87:
Zeiger gefunden bei 0x123E448
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 88:
Zeiger gefunden bei 0x123E93C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 89:
Zeiger gefunden bei 0x12576BC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 90:
Zeiger gefunden bei 0x12577F8
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 91:
Zeiger gefunden bei 0x12578BC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 92:
Zeiger gefunden bei 0x1257A48
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 93:
Zeiger gefunden bei 0x1257FEC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 94:
Zeiger gefunden bei 0x12691BC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 95:
Zeiger gefunden bei 0x127A378
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 96:
Zeiger gefunden bei 0x127A45C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 97:
Zeiger gefunden bei 0x1293498
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 98:
Zeiger gefunden bei 0x129357C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 99:
Zeiger gefunden bei 0x12CA9BC
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 100:
Zeiger gefunden bei 0x12CC77C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
ERGEBNIS 101:
Zeiger gefunden bei 0x12CCB2C
Er zeigt auf 0xF7800028
Abstand von der Zeiger Basis ist 0x8AB5594
Zunächst mal kommen für uns nur die in Frage die auch tatsächlich in die Nähe unserer gesuchten Adresse zeigen. Da uns ja bekannt ist das dort der dynamische Speicherbereich liegt. Codice:
ERGEBNIS 6:
Zeiger gefunden bei 0x6C9124
Er zeigt auf 0x2BFB64
Abstand von der Zeiger Basis ist 0xFFFF5A58
ERGEBNIS 7:
Zeiger gefunden bei 0x6C9130
Er zeigt auf 0x2BF824
Abstand von der Zeiger Basis ist 0xFFFF5D98
ERGEBNIS 8:
Zeiger gefunden bei 0x6CD964
Er zeigt auf 0x2BC5D4
Abstand von der Zeiger Basis ist 0xFFFF8FE8
ERGEBNIS 9:
Zeiger gefunden bei 0x6CD968
Er zeigt auf 0x2BFB8C
Abstand von der Zeiger Basis ist 0xFFFF5A30
ERGEBNIS 10:
Zeiger gefunden bei 0x6CE428
Er zeigt auf 0x2BFAFC
Abstand von der Zeiger Basis ist 0xFFFF5AC0
ERGEBNIS 11:
Zeiger gefunden bei 0x6CE440
Er zeigt auf 0x2BFAD8
Abstand von der Zeiger Basis ist 0xFFFF5AE4
ERGEBNIS 12:
Zeiger gefunden bei 0x6CE4D8
Er zeigt auf 0x2BFB44
Abstand von der Zeiger Basis ist 0xFFFF5A78
ERGEBNIS 13:
Zeiger gefunden bei 0x6CE524
Er zeigt auf 0x2BFB50
Abstand von der Zeiger Basis ist 0xFFFF5A6C
ERGEBNIS 14:
Zeiger gefunden bei 0x6CE528
Er zeigt auf 0x2BFB84
Abstand von der Zeiger Basis ist 0xFFFF5A38
ERGEBNIS 15:
Zeiger gefunden bei 0x6CE52C
Er zeigt auf 0x2BF8A0
Abstand von der Zeiger Basis ist 0xFFFF5D1C
ERGEBNIS 16:
Zeiger gefunden bei 0x6CEA48
Er zeigt auf 0x2BF838
Abstand von der Zeiger Basis ist 0xFFFF5D84
ERGEBNIS 17:
Zeiger gefunden bei 0x6CEA50
Er zeigt auf 0x2BFB58
Abstand von der Zeiger Basis ist 0xFFFF5A64
ERGEBNIS 18:
Zeiger gefunden bei 0x6CEA64
Er zeigt auf 0x2BFA30
Abstand von der Zeiger Basis ist 0xFFFF5B8C
ERGEBNIS 19:
Zeiger gefunden bei 0x6CEA68
Er zeigt auf 0x2BFA0C
Abstand von der Zeiger Basis ist 0xFFFF5BB0
ERGEBNIS 20:
Zeiger gefunden bei 0x6CEA6C
Er zeigt auf 0x2C08AC
Abstand von der Zeiger Basis ist 0xFFFF4D10
ERGEBNIS 21:
Zeiger gefunden bei 0x90C624
Er zeigt auf 0x2BFA18
Abstand von der Zeiger Basis ist 0xFFFF5BA4
ERGEBNIS 22:
Zeiger gefunden bei 0x90C628
Er zeigt auf 0x2BFA28
Abstand von der Zeiger Basis ist 0xFFFF5B94
![]() Ich hatte sie mir zuerst geordnet und einfach die Erste in meiner Liste verwendet. ![]() Codice:
ERGEBNIS 8:
Zeiger gefunden bei 0x6CD964
Er zeigt auf 0x2BC5D4
Abstand von der Zeiger Basis ist 0xFFFF8FE8
vom Zielpunkt des Zeigers zur Position der eingegebenen Adressen darstellt. Nun könnten wir die 'Make Cheat' Funktion des pointersearcher dazu nutzen um uns einen funktionieren DMA-Cheat zu erstellen. Aber daraus würden wir ja nix lernen, nicht wahr?. Also auf zu Schritt 6 Schritt 5: ---------- Für die Leute die sich die Arbeit mit dem dritten Memdump aus Schritt 3 gemacht haben besteht nun die Möglichkeit durch Wiederholung von Schritt 4 mit memdump0/adresse1+memdump2/adresse3 rauszufinden ob die gefundenen Zeiger immer noch dieselben sind. (Zeiger-Adresse und Abstand müssen gleich bleiben ansonsten sind sie ungültig) Schritt 6: ---------- Immer noch da? Ui da will aber einer was lernen ^^ Natürlich ist die 'Make Cheat' Funktion von pointersearcher begrenzt. Also will man natürlich auch in der Lage sein die Informationen die einem das Programm liefert dazu zu nutzen um schneller seine eigenen Cheats zu kreieren. Als Vorraussetzung muss man allerdings der englischen Sprache so weit mächtig sein, das man die PSP CWCheat Code Types lesen und verstehen kann. (Oder jemanden finden der sie mal übersetzt ^^) Wichtig bei 'Pointer-Commands' ist dabei vor allem auch das Verständis darüber ob man mit dem Abstand vom Zielpunkt des Zeigers vorwärts oder rückwärts springt. Wenn man dies nicht genau weiss oder einfach vergisst kann es zu so manchem kleinen Problemchen beim Cheat erstellen kommen. Besonders bei Multi-Adressen Cheats. :-D In diesem Fall haben wir es mit einem Rückwärtssprung zu tun da der von pointersearcher gefundene Abstand negativ ist. Um besser damit arbeiten zu können. Hat es sich für mich bewährt den Abstand erstmal wieder zu invertieren. Das hilft ungemein beim Verstehen des Prozesses da man dank weltall wählen kann ob man einen Rückwärts- oder Vorwärtssprung bei den 'Pointer-Commands' macht. Zum umwandeln nutzt man am besten einen Taschenrechner der Hexadezimal kann. (zB den Windows Calculator im Wissenschaftlichen Modus) Dabei finden wir heraus: FFFF8FE8 ist gleich -7018 Codice:
Um zu demonstrieren warum es etwas einfacher ist nicht mit negativen Hexzahlen zu arbeiten hier zwei Demo Codes: DP Code Demo 32bit (Sprung vorwärts) [aber dennoch rückwärts da Abstand negativ] 0x606CD964 0xGELDWERT 0x00020001 0xFFFF8FE8 DP Code Demo 32bit (Sprung rückwärts) 0x606CD964 0xGELDWERT 0x00050001 0x00007018 Der Zeiger bleibt idR für alle Cheats gleich, daher braucht man ja nur noch Abstände zu neuen Adressen. Da das rechnen mit Hexadezimal nicht zu meinen Lieblingsbeschäftigungen zählt, musste natürlich etwas einfacheres her. OpenOffice Calc in meinem Fall. Formeln wie '=DEZINHEX(HEXINDEZ(A2)-HEXINDEZ(A3))' machen es recht einfach diesem Proggi die Rechenarbeit aufzudrücken. ![]() Die Idee dabei ist recht einfach: Wir nehmen die Adresse unseres ersten Cheats als Basis. Das heisst wenn wir eine neue Cheat Adresse gefunden haben brauchen wir auch noch die aktuelle Adresse des ersten Cheats. (Hier die des Geld Cheats) Die Differenz der beiden Adressen kann man nun zum Abstand addieren/subtrahieren und erhält den Abstand zum neuen Cheat. Wenn man ne ganz faule Sau ist (so wie ich ^^) dann nutzt man Calc auch noch dazu die Cheats zu generieren. Vielleicht noch ein paar kleine Beispiele dazu gefällig? Codice:
Um anfzufangen brauchen wir wieder den Geld Cheat. Geld Adresse: 2B5594; Der Abstand dorthin ist ja bekannt: -7018 Nun machen wir uns auf die Suche nach anderen Cheats. Um die zwei Fälle durzuspielen nehmen wir jetzt diese hier: Cheat 2: 2B54F4 (das wäre bei TF3 die Adresse des Spieler Namens) Cheat 3: 2BAAC0 (und das die Adresse der letzten Karte ^^) Für Cheat 2 (da er oberhalb des Geld Cheats liegt) 'Geld' -'Cheat2' 2B5594 - 2B54F4 = A0 7018 + A0 = 70B8 Für Cheat 3 (da er unterhalb des Geld Cheats liegt) 'Cheat3'-'Geld' 2BAAC0 - 2B5594 = 552C 7018 - 552C = 1AEC Nun haben wir die beiden Abstände die wir für die neuen Cheats brauchen. Beim dritten Cheat wäre noch zu beachten das es ein Multi-Adressen Cheat werden müsste. Daher auch die letzte Karte. Denn wenn man einen rückwärts Sprung für Multi-Adressen nutzt muss man sich auch rückwärts bewegen ---------- Noch fortgeschrittenerer Kram ^^ Nachdem wir nun wissen wie wir DMA Cheats kreieren kommt nun der Schlag in den Magen. Wenn das Spiel die Zeiger nur in bestimmten Situation bereithält dann führt ein benutzen des Cheats in einer Situation ohne Zeiger zu einem Einfrieren des Spiels. -_- Bei TF3 sind die Zeiger zB nicht im Hauptmenü verfügbar. Das heisst das es garantiert User geben wird die davon betroffen sind. Also muss ein Weg her diese 'Freezes' zu verhindern. Es bietet sich in so einem Fall an einen Wert zu finden an dem man ausmachen kann ob die Zeiger vorhanden sind. Um bei meinem Beispiel zu bleiben: Immer wenn der Zeiger den ich nutzte geladen war waren die 4 Bytes davor genulled. Da es 32bit waren konnte ich für die Abfrage einen 'Stoppercode' nutzen. Aber wenn es sich um 8bit oder 16bit handelt kann man das auch mit einem 'equal to, execute multiple lines code' erreichen. Dieser vor die eigentlichen Cheats gesetzt verhindert dann die Ausführung der 'Pointer-Commands'.. Da sich bei TF3 die Adressen nur nach einem Neustart änderten und ich unbedingt auch im Hauptmenü Zugriff auf mein Cheat-Arsenal haben wollte hab ich mir um das verschwinden des Zeigers zu verhindern diesen einfach an einen anderen ungenutzen Platz kopiert und mir meinen eigenen Identifikator zum blocken (oder eher aktivieren ^^) der Codes gleich mitgebastelt. Dadurch konnte ich die 'Freezes' beim benutzen der Cheats nahezu gänzlich eliminieren. Noch Fragen?
|