Brauche hife für die suche nach Pointer für theHunter Hack

05/21/2013 17:24 Hammy008#1
1. Das ist mein erster Beitrag und bitte deshalb um etwas Verständnis
2. Sollte ich in der falschen Kategorie sein bitte helfen xD

3.
Hallo Leute ich bin dabei ein Hack für theHunter zu machen ich bräuchte nur ein bischen hilfe beim Pointer suchen...

Bis jetzt hab ich dies Pointer gefunden.

Coordinaten des Players:

Link zu dem neun Thema + Pointer:
[Only registered and activated users can see links. Click Here To Register...]

Anschlisend bin ich auf die suche nach den Coordinaten der Tiere gegangen. Aber ich habe nur offsets rausgefunden welche nach jedem spielstart um ein paar 100 ^^ stellen verschieben.

z.B. Beim ersten mal

ist der pointer des ersten Tieres für x = 0x3eef594 und beim nächsten mal 0x3ef6754 oder gar noch weiter auseinander.

Auf jedenfall sind es keine festen Pointer sondern varierende offsets.

Ich habe auch schon einiges Probiert duzende Tutorials durchgelesen ect. bei anderen Spielen wie COD4 hat es auch geklappt nur bei theHunter nicht.



Ich bitte euch nun um hilfe bei der suche nach einer Tier struktur die fest ist.

Hier gehts zum Spiel: [Only registered and activated users can see links. Click Here To Register...]



Auf Anfrage gibt es auch Bilder wie ich gesucht hab oder den ganzen Text auf English ^^.
05/21/2013 18:29 dready#2
Such dir mal eine der Tierstrukturen und schau nach wer sie so alles aufruft, irgendwo wird vermutlich eine Function sein die das ganze managed.

Und ja, dürft eher General Coding sein, sicher kein c++ :P
05/21/2013 19:08 Hammy008#3
Danke für die schnelle Antwort :D

Leider bringt mir das nicht so viel weil ich das schon alles ausprobiert hab.
(Kann auch sein das ich vielleicht etwas falsch gemacht habe.)

Nur doof das es fast keine Hacks für theHunter gibt (und wenn dann nur wallhack welches ich schon nach 2 min fertig hatte xD) und dazu noch so unkooperative coder xD

jedenfalls wenn jemand noch ne bessere Hilfe hat (z.B. besseres Programm als CE xD) oder sich beim suchen und coden beteiligen will danke im voraus xD
05/21/2013 19:17 Hiris#4
Quote:
Originally Posted by Hammy008 View Post
Danke für die schnelle Antwort :D

Leider bringt mir das nicht so viel weil ich das schon alles ausprobiert hab.
(Kann auch sein das ich vielleicht etwas falsch gemacht habe.)

Nur doof das es fast keine Hacks für theHunter gibt (und wenn dann nur wallhack welches ich schon nach 2 min fertig hatte xD) und dazu noch so unkooperative coder xD

jedenfalls wenn jemand noch ne bessere Hilfe hat (z.B. besseres Programm als CE xD) oder sich beim suchen und coden beteiligen will danke im voraus xD
CE ist göttlich, man muss nur damit umgehen können :)
05/21/2013 19:31 Hammy008#5
Das ist mir schon klar ...

Nur leider hab ich bis vor einer Woche noch nie einen Pointer ausgelesen.
Ich hab mir einige Tutorials angeschaut und durchgelesen hab jetzt ein größeres Verständnis für Assembler und Offset/Pointer Auslesen hab auch meinen ersten^^ Hack (mit selbst ausgelesenen Pointer) erfolgreich für cod4 hinbekommen (esp, wallhack, aimbot, momory hacks...) doch theHunter scheint so komisch programmiert zu sein das die Struktur auszulesen gar unmöglich scheint zumindest mit festen pointer mit variierenden offsets hab ich es schon hinbekommen doch es scheint so als ob sie nirgends in ein pointer geschrieben werden.

ich probier es morgen noch mal (weil das doch eine recht zeitaufendige prozedur ist ^^) und mach dann Bilder von...

Und danke für den Tipp mit der Kategorie
05/22/2013 00:44 Padmak#6
Es muss immer statische Offsets geben, darauf fußt die ganze Programmier-Sache. Was natürlich sein kann: schau mal, ob die Basis des Modules sich jedes mal ändert, wenn ja, wirds etwas komplizierter. Du wirst aber um CE nicht drumrum kommen, such dir einfach einen Pointer und schau dann, was drauf zugreift (Find out what accesses this address) und nimm dir dann einen anderen Debugger zur Hilfe (Ich finde den CE-Debugger kacke, ich hab IDA oder OllyDBG viel lieber) und schau dir einfach an, was da passiert. Mit etwas Glück (und generiertem Pseudocode) kommst du vielleicht darauf wie es funktioniert und kannst daraus dann Rückschlüsse ziehen
Gib nich auf, erwarte dir aber nicht zu einfache Erfolge :P

Padmak
05/22/2013 10:54 Hammy008#7
Hier ein blick auf einiger der offsets die auf die x coordinate des 1. Tieres zeigt.
[Only registered and activated users can see links. Click Here To Register...]

Hier nachdem ich einen Pointer gefunden habe der auf den richtigen wert gezeigt hatte, auch nach level wechsel, jedoch nach dem ich das spiel neu gestartet habe waren überall nur noch Fragezeichen also auch kein statischer Pointer mh ...

Rechts an der Seite sieht man wie ich vorgegangen bin (grob)
[Only registered and activated users can see links. Click Here To Register...]


Ich probier es noch mal mach mehr bilder vielleicht klappts ja jetzt
05/22/2013 13:00 dready#8
Mh das Sind arg arg viele Cords für ein Tier, sicher das du dir da nicht Positionen der verschiedenen Teile des Tiers ansiehsts, die die Engine für die Grafikdarstellung benutzt ?
Würd auf jedenfall mal nochnicht absolut davon ausgehen das du da die richtigen Werte hast ;)
Ansonsten passt das was Padmak sagt schon ziemlich gut ^^
CE ist ein Hilfmittel, wenn du nicht einfach nur eine einzelne Variable ändern magst (ja ich weiß es geht deutlich mehr damit :P)
Es soll bei solchen Dingen vorallem eines, dir Helfen schnell einen Ansatzpunkt zu finden. Danach tu dir selbst einen gefallen und nimm einen Gescheiten Debugger ;)
05/22/2013 15:20 Hammy008#9
Hey ....

Ich bin nun weiter wie vorher .. glaub ich zumindest.

Jedoch bin ich jetzt beim 4_level Pointer oder wie auch immer man das nennt auf jeden fall kommt nun sowas [Bild] [Only registered and activated users can see links. Click Here To Register...] [ Bild]

mit Multiplikation ect. kann mir jemand sagen wie man das machen soll das ich dann einen statischen bekomme xD

THX
05/22/2013 15:30 Padmak#10
In die Funktion bei 0x007ADE77 gehen (mit einem echten Debugger :D <- CE-Fans start hating now!) und schaun, woher die Werte kommen.
Die Zeile mov esi,[ecx+ebp*4] ist ein Anzeichen darauf, dass du dich in einer Klassenfunktion befindest (weil ecx in Klassen der this-Pointer ist, da wird also auf ein Klassenmember zugegriffen)
Du darfst dich auf jeden Fall schon auf Reversing freuen. Außerdem ist nicht immer nach einer Stufe Ende, es kann sein dass es auch mehrstufige Pointer gibt (was bei dir sicher der Fall sein wird)
Beispielcode für sowas, damit dus verstehst:
Code:
struct Anything
{
    float x;
    float y;
    float z;
};

class pTest
{
private:
    std::vector<Anything> m_animals;
};
Dann hast du this + m_animals + index, also 2 Stufen. Sollte das ganze ein Singleton sein, können es sogar 3 Ebenen sein. Du siehst also, das ganze kann etwas... komplizierter werden

Was ich an deiner Stelle machen würde: schau wo ECX herkommt und ob der statisch ist, die Offsets sind es ja dann auf jeden Fall

Padmak
05/22/2013 15:55 Hiris#11
mach 7-8 pointer scans und die Sache ist gegessen ôo
05/22/2013 18:50 Hammy008#12
Quote:
mach 7-8 pointer scans und die Sache ist gegessen ôo
Danke für den Tipp hat wunderbar geklappt wies aussieht war ich auch schon auf den richtigen weg ...

[Bild] [Only registered and activated users can see links. Click Here To Register...] [ Bild]

[Only registered and activated users can see links. Click Here To Register...]
So jetzt stellt sich die frage welchen soll ich nehmen ? Den kürzesten ?

Und wie komm ich nun auf eine struktur bei einem 1 layer pointer war das ja noch einfach raus zu bekommen...
05/22/2013 18:55 Padmak#13
Code der Funktionen, die diese Structs verarbeiten ansehen und verstehen

Padmak
05/23/2013 09:25 Hammy008#14
Hat einer ne Idee wie ich die maximal anzahl der Tiere raus finde xD

Hey Leute ich bräuchte auch noch Hilfe ich suche ein tutorial um die richtigen View angles raus zu finden außerdem einen pointer der drauf zeigt ob man ingame ist

--------------------------------------------------------------------------

So also ich hab jetzt einen 6 layer Pointer der sich nicht nach dem neustart ändert allso statisch. So wie komm ich nun am besten auf das zweite, dritte .... Tier

Hier meine Neu erworbenen Werte falls sich auch mal jemand entschlist zu helfen oder wie auch immer




[Neuer Post weiter unten ]




[Only registered and activated users can see links. Click Here To Register...]

Vieleicht kann man daraus eine For schleife machen hat mir jemand ein Tip

Also Ich hab nun herausgefunden das die x Koordinaten immer im Abstand von 0xB8 sind den Rest bekomme ich nun selber hin

wenn ich das nun auslesen will für alle Tiere in einer For schleife würde das dann gehen ?



enemyVec.xPos = *(float*)((((((((0x143fedc) + 0) + 4) + 10) + 14) + 8) + 14) + i * 0xB8 );
enemyVec.zPos = *(float*)((((((((0x143fedc) + 0) + 4) + 10) + 14) + 8) + 14) + i * 0xB8 + 4 );
enemyVec.yPos = *(float*)((((((((0x143fedc) + 0) + 4) + 10) + 14) + 8) + 14) + i * 0xB8 + 8 );
05/23/2013 15:21 Padmak#15
Ich glaube das funktioniert so nicht... du musst jeden Wert neu casten, also pro level einmal *(float*)....... oder du erstellst dir eine Dummy-Klasse dafür, sonst kotzt du da ja :D

Padmak