OldSchoolHack

Registrieren / Anmelden Deutsch

C++ FindPattern


icon C++ FindPattern #1

Anmeldungsdatum: Okt 2013

Beiträge: 2

Hey, bin neu im Forum und hätte auch gleich mal eine Frage zum Pattern.

Also, bisher hab ich ein Bot geschrieben für ein bestimmtes Spiel, jedoch muss ich nach wie vor damit der Ordenlich läuft die Adressen für HP und MP suchen, was auf dauer öde ist.
Deshalb wollt ich mich mal mit Findpattern versuchen. Ich weiß wie die Funktion aufgebaut ist usw., aber ich versteht einfach nicht wie genau ich das angehen soll.

Für HP benutze ich momentan das:
Adresse= 0x007F3A3C;
Offset1= 0xAC;
Offset2= 0x4C;


Weiß aber nicht ob ich dies irgendwie dort rein hauen muss oder die Sachen komplett unnötig sind fürs Pattern?

dwFindPattern((DWORD)hModule, 0x000000,(PBYTE)"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "xx????xx????xx");


Zuletzt geändert von SylarDearing (Mo 7. Okt 2013, 18:52)

Grund: kein Grund angegeben

icon #2

Anmeldungsdatum: Aug 2007

Beiträge: 8643

Benutzer-Bewertung:

199 positiv
33 negativ
Die Pattern erstellst du für die Speicherstellen, an denen du die 3 Werte dann dynamisch auslesen kannst.

__________________

Hallo
icon #3

Anmeldungsdatum: Okt 2013

Beiträge: 2

Danke für die Antwort schon mal, aber wie genau finde ich die Speicherstellen die ich fürs Pattern benötige
dwFindPattern((DWORD)hModule, 0x000000,(PBYTE)"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00""xx????xx????xx")


Wie weiß ich was ich dort: 0x000000, dort \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 und dort xx????xx????xx eingeben muss?


Durch die Tutorials die ich bisher gesehen hab, weiß ich nur das ich es mit Ollydbg irgendwie finden muss.
icon #4

Anmeldungsdatum: Nov 2012

Beiträge: 5

Wenn du nicht weisst, worum es sich bei den Patterns handelt, solltest du sie auch nicht benutzen.

Um dennoch nicht immer nach den HP und MP suchen zu müssen empfehle ich dir einen Pointer Scan durchzuführen (Feature von Cheat Engine). Wenn du 2-3 mal scannst solltest du recht sicher die gewünschten Addressen finden können.

Jetzt noch eine Kurze erläuterung bzgl. deines ersten Posts:

"Für HP benutze ich momentan das:
Adresse= 0x007F3A3C;
Offset1= 0xAC;
Offset2= 0x4C;"

Diese Addresse + Offsets hat nur entfernt eine Bedeutung für den Patternscan. Über diese Offsets solltest du (wenn du richtig gesucht hast) bei jedem Start des Spiels sofort den Wert der HP finden können.

Gehst du jetzt zu dieser Addresse (vorrausgesetzt dass sich dort die HP befinden) und guckst dir in Olly an, was drum herum für OPcodes sind (Assembler), kannst du daraus ein Pattern zusammenbauen, das meist auch über Patches hinweg noch funktioniert (nicht immer, aber deutlich nachhaltiger als die Addresse+Offset Methode).

MfG