Koordinaten von Spieler rausfinden (Bf2/3)

06/20/2012 21:50 cypresse#1
Hi,
Wollte mal wissen wie man in Battlefield 2 oder 3 Koordinaten von den Spielern (X,Y,Z) rausfinden kann.
Danke schon mal im Voraus:D
06/20/2012 23:05 Sanman.#2
Wie meinst du das? für einen Hack? Du musst uns schon mehr infomationen geben, wenn wir dir helfen sollen.
06/20/2012 23:09 cypresse#3
Ja ich möchte einen Hack programmieren und brauche dazu die Koordinaten der einzelnen Spieler, aber es reichen auch erstmal die Koordinaten des eigenen Spielers.
06/20/2012 23:11 Sanman.#4
Hm, also ich bin jetzt kein Coder, geschweige kann ich dir da nur wenig helfen. Aber wenn ich mich nicht irre kann man das anhand einer bestimmten DirectX.dll herausfinden. Das ist natürlich nur eine Idee.
06/20/2012 23:21 cypresse#5
weißt du zufällig, welche Datei das sein könnte?
Oder kann mir jemand sagen wie die Variablenadresse der Koordinaten in einem der beiden Spiele heißt?
06/21/2012 16:41 Crack-wtf#6
Quote:
Originally Posted by Sanman. View Post
Hm, also ich bin jetzt kein Coder, geschweige kann ich dir da nur wenig helfen. Aber wenn ich mich nicht irre kann man das anhand einer bestimmten DirectX.dll herausfinden. Das ist natürlich nur eine Idee.
Was für ein Schwachsinn.
Die DirecX.dll wird für die Grafische Oberfläche benutzt und hat NICHTS mit den Koordinaten der Spieler zu tun.

Du brauchst die PlayerStruktur.
Dumpe den Client, hau den Dump in IDA, lade dir eine FLIRT Signature für BF3, und grabe dich durch die Funktionen.

Du hast deine Antwort bekommen.
Mehr hilfe wirst du nicht bekommen.
06/23/2012 14:27 cypresse#7
Danke für deine Hilfe Crack:D
Aber geht das nicht auch irgendwie einfacher? Ich hab dabei an einen console-befehl oder einen stats-viewer oder so was gedacht.
Und wenn nicht, könntest du mir vielleicht genauer beschreiben wie ich die PlayerStruktur erhalte?
MFG
06/23/2012 15:36 Jeoni#8
Nen Consolenbefehl oder so wird dir da nichts bringen. Da siehste vielleicht die aktuelle Position aber keinen Pointer / keine Adresse, um sie per code auszulesen.
Um die Playerstruct zu finden, benutzt du CE / Olly.
Unknown initial Value (float) -> bewegen -> changed Value -> nicht bewegen, sondern vllt mal schießen oder so -> unchanged value -> etc.
Irgendwann wirste die Adresse einer Koordinate haben. Dann kannste gucken, was auf diese Koordinaten-Adresse zugreift. Entweder sind vorher / nacher noch ein paar Pointer, aber irgendwann wirste dann sowas in der Art finden:
"mov eax, [edi+0C]"
Der Befehl dürfte relativ klar sein. Damit wäre dann [edi] der Anfang deiner Playerstruct. Wennn du dann den Anfangsadresse mit 0x0C (12) addierst, kommste zu einer Koordinate. In Olly oder CE kannste dann auch ganz leicht nachschauen, ob sich vielleicht in +04 eine weitere Koordinate versteckt oder so.
Jetzt musste noch die Funktion finden, die diese Playerstructs setzt (gibt ja für jeden Spieler eine Struct) und diese dann eben mit einbeziehen (--> Hook, HWBP, etc.). Dann kannste da sicher einen 1A Wallhack oder Aimbot erstellen :D
Ich hoffe, dass meine Erklärungen einigermaßen richtig sind
Jeoni