Home of Gamehacking - Archiv
CE, aktualisiert Base Pointer nicht - Druckversion

+- Home of Gamehacking - Archiv (http://archiv-homeofgamehacking.de)
+-- Forum: Gamehacking (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=3)
+--- Forum: Gamehacking (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=6)
+--- Thema: CE, aktualisiert Base Pointer nicht (/showthread.php?tid=1733)

Seiten: 1 2


CE, aktualisiert Base Pointer nicht - Prototype - 18.07.2013

Moin bin seit ein paar Tagen dabei mehr über Gamehacking zu lernen.

Als test habe ich gerade mal versucht den Basepointer von Pinnball zu finden, der für den Highscore verantwortlich ist.

Hat auch relativ gut geklappt, hab ein pointer auf die Adresse erzeugt. Nur wenn ich jetzt das Game neustarte, cheat engine wieder einklinken lasse, aktualisiert sich die Value vom Pointer nicht (die Value ist mit: ?? gefüllt). Wenn ich nochmal die Base suche ist er genau an der selben Adresse wo der Pointer noch draufzeigt. Sobald ich die Adresse wieder vom neuen, also manuel gesucht habe aktualisieren sich auch die Pointer die auf die Base zeigen.

Habt ihr vielleicht eine Idee, an was das liegen könnte?

Win 7 64 bit, mit Admin rechten ausgeführt
CE Version 6.3


RE: CE, aktualisiert Base Pointer nicht - iNvIcTUs oRCuS - 18.07.2013

Mal so salopp gesagt... Da hast Du wahrscheinlich nicht den richtigen Pointer oder einen Fehler in der Schreibweise...

Mal abgesehen davon... Warum muss ein Basispointer aktualisiert werden? Die Schreibweise in CE ist standardmäßig so das sich der Basispointer aus "Modulname+Offset" zusammensetzt.


RE: CE, aktualisiert Base Pointer nicht - Prototype - 18.07.2013

Mhhh ist schwer zu erklären ich hab mal 3 Bilder hinzugefügt. Sollte die Sache etwas verdeutlichen.

Nachdem ich Pinball das 2. mal starte findet er keine Value vom basepointer.

Erst wenn ich den 1 Level Pointer hinzufüge und dann auf den Assembler dump gehe aktualisiert plötzlich der BasePointer und zeigt die richtige Value an.


RE: CE, aktualisiert Base Pointer nicht - iNvIcTUs oRCuS - 18.07.2013

Tja wie ich schon sagte... Du hast nicht den richtigen Basispointer... Die grünen Werte sind nicht die Basis.


RE: CE, aktualisiert Base Pointer nicht - Prototype - 21.07.2013

Höh, in den 2 Tuts die ich gefunden haben wird beschrieben das die grünen Adressen statisch wären.


RE: CE, aktualisiert Base Pointer nicht - iNvIcTUs oRCuS - 21.07.2013

Das muss nicht immer so sein.
Zumindest auf einem 64-Bit System würde ich mich nicht allein auf Cheat Engine verlassen was das angeht...
Aber wie ich schon sagte könnte es auch sein das die Schreibweise falsch ist.
Zeig doch einfach mal den kompletten Pointer-Pfad...


RE: CE, aktualisiert Base Pointer nicht - Prototype - 21.07.2013

Naja ich bin nicht einer der einfach alles von einem Tut abtippt und sich dann freut das es funktioniert. Ich würde gerne auch die hintergrüde verstehen. Zeigt cheat engine die richtigen also physikalischen Adressen an oder nur die virtuelle? Der Basepointer für den Highscore ist meiner Meinung nach :

Zitat:wow64cpu.dll+46D8

Nun jetzt erstelle ich eine neue Adresse via CE klicke erstelle einen Pointer vom Typ 4 byte (oder vielleicht der auf 4 byte verweist?Huh ) und trage einfach nur oben genannte Adresse ein. Wie gesagt, wenn ich pinball neustarte zeigt er mir als value erstmal "??" an. Nach einer zufälligen Zeit hat er dann auf einmal die richtige Value und ich kann diese auch ändern. BTW wenn ich maunell erneut nach dem BasePointer suche kommt immer wieder die o.A adresse heraus. Diese ist auch immer grün markiert.

Die Adresse des Pointer heißt:
Zitat:0489FF3A
Und hat keinen offset


RE: CE, aktualisiert Base Pointer nicht - Acubra - 21.07.2013

Hey,
vielleicht wird die wow64cpu.dll nach dem Start des Programms nicht sofort geladen. Somit kann CheatEngine mit der Adresse auch nichts anfangen, da sie noch nicht "existiert". Wenn die .dll dann vom Programm geladen wurde, siehst du ja auch deine Punkteadresse. Ich würde einfach eine andere BaseAdresse suchen. Vorzugsweise eine die mit der .exe in Verbindung steht (Pinball.exe+XXXX).


RE: CE, aktualisiert Base Pointer nicht - Prototype - 21.07.2013

Mhh merkwürdig, ich hab noch etwas getestet, immer erst wenn ich den debugger aufrufe von ce wird die base adresse mit den richtigen Werten gefüttert. Also der Highscore pointer wird nur von einer bestimmten Adresse beschrieben, wenn ich mir diese anschaue, erhalte ich nur adressen die mich zu ganz vielen anderen Adressen führen und aber auch diesen BasePointer ich denke schon das ist der richtige.


RE: CE, aktualisiert Base Pointer nicht - iNvIcTUs oRCuS - 21.07.2013

(21.07.2013, 18:54)Prototype schrieb:
Zitat:wow64cpu.dll+46D8

Und genau das ist dann der Fehler...
Im Normalfall ist der Pointerpfad von einer kleinen Adresse zur größten (letzte) Adresse gerichtet.
Und deswegen bin ich auch anfangs der Meinung gewesen das die, deine gefundenen, grünen Adressen eben nicht die Basis sind. Mir war schon klar das hier wieder die wow64cpu.dll dazwichenpfuscht.
Soweit ich das mitgekriegt habe ist das eine Windows System DLL die immer dann in Aktion tritt wenn eine 32-Bit Anwendung/Spiel auf einem 64-Bit System ausgeführt wird. Dadurch wird in erster Linie sichergestellt das eine 32-Bit Anwendung/Spiel überhaupt auf einem 64-Bit System ausgeführt werden kann.
Das heißt mit anderen Worten das diese DLL nicht von diesem Pinball Spiel gestartet wird. Zumal ich auch davon ausgehe das dieses 3D Pinball das originale aus einer Windows XP Installation kommt, denn in Windows 7 gibts dieses Pinball nicht mehr.

Um nochmal auf den Punkt zu kommen. Ein ordentlicher Pointerpfad muss also so beginnen wie Acubra es schon gesagt hat. Das Pointeroffset muss z.B. "Pinball.exe+0815" lauten.

Und wenn man den Gedanken mal weiter spinnt und das auf deinem System mit der wow64cpu.dll funktioniert, dann würde ein Trainer oder nur die Cheat Table auf einem 32-Bit System nicht funktionieren.
Und deswegen... Verlasse dich nie darauf das eine grüne Adresse auch dermaßen funktionieren muss...

grEEtZ sILeNt heLLsCrEAm


EDIT//
Schau dir mal dazu den Artikel bei Wikipedia an...
Windows On Windows 64