Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 23:36

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Pointer Problem

Discussion on Pointer Problem within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Pointer Problem

Hi,

ich hab die Adresse für die Chatfunktion in dem Spiel "Diablo II" mit Cheatengine rausgefunden.

Jetzt will ich die Adresse halt als Pointer(Wie dieses TuT auch so schön zeigt ab ca. 1:40.)

Aber wenn ich das alles gemacht hab mit "what writes to this adress" finde ich die Adresse nicht wenn ich sie suche(Hab Hex an)
Ludder231 is offline  
Old 07/04/2011, 18:12   #2
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
so sachen wie chat laufen natürlich im normalfall anders ab.

da der chat aus mehreren einträgen besteht, werden adressen in der regel individuell berechnet. dies geschiet in der regel einmalig, sodass man im nachhinein per breakpoints nichtmehr nachvollziehen kann, was denn auf eine bestimmte adresse zugreift

es könnte zb so aussehen:
Code:
mov eax, [edx + edi * 4]
wobei edi in diesem falle der index der jeweiligen textzeile ist...

wie genau das in diablo2 ist kann ich dir nicht sagen. in der regel läuft das ganze jedoch so ab.

um hier die ablaufreihenfolge nachvollziehen zu können, muss man schonmal eine codeanalyse durchführen...
lolkop is offline  
Old 07/04/2011, 18:23   #3
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Quote:
Originally Posted by lolkop View Post
so sachen wie chat laufen natürlich im normalfall anders ab.

da der chat aus mehreren einträgen besteht, werden adressen in der regel individuell berechnet. dies geschiet in der regel einmalig, sodass man im nachhinein per breakpoints nichtmehr nachvollziehen kann, was denn auf eine bestimmte adresse zugreift

es könnte zb so aussehen:
Code:
mov eax, [edx + edi * 4]
wobei edi in diesem falle der index der jeweiligen textzeile ist...

wie genau das in diablo2 ist kann ich dir nicht sagen. in der regel läuft das ganze jedoch so ab.

um hier die ablaufreihenfolge nachvollziehen zu können, muss man schonmal eine codeanalyse durchführen...

Also ich kann in Diablo II in ein Spiel beitreten. Wenn ich dann Enter drücke kommt ein Fenster und ich kann eine Message senden wenn ich erneut Enter drücke. Also gibs keine individuellen Zeug darin oder??

Wenn ich "what writets to this adress" mache kommt in der Extra Info in rot: mov[ordinal10001+97f74],eax
Und dariner die einzufügende Adresse lautet: 00097f74
Ludder231 is offline  
Old 07/04/2011, 18:32   #4
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
Quote:
Originally Posted by Ludder231 View Post
Also ich kann in Diablo II in ein Spiel beitreten. Wenn ich dann Enter drücke kommt ein Fenster und ich kann eine Message senden wenn ich erneut Enter drücke. Also gibs keine individuellen Zeug darin oder??

Wenn ich "what writets to this adress" mache kommt in der Extra Info in rot: mov [ordinal10001+97f74],eax
Und dariner die einzufügende Adresse lautet: 00097f74
naja in diesem falle wäre doch
Code:
[ordinal10001+97f74]
die adresse in der sich dein gefundener wert/string befindet, und eax beinhaltet die zu pushende adresse, welche du benötgst.

wenn du jetzt rücklaufend den code analysierst siehst du doch wie eax zustande kommt.

alternativ könntest du natürlich auch einfach genau an dieser stelle eine codecave platzieren, welche den wert aus eax in eine von dir vorher freigegebene speicherregion kopiert.

diesen könntest du dann einfach per readprocessmemory statisch auslesen.
lolkop is offline  
Old 07/04/2011, 18:38   #5
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Quote:
Originally Posted by lolkop View Post
naja in diesem falle wäre doch
Code:
[ordinal10001+97f74]
die adresse in der sich dein gefundener wert/string befindet, und eax beinhaltet die zu pushende adresse, welche du benötgst.

wenn du jetzt rücklaufend den code analysierst siehst du doch wie eax zustande kommt.

alternativ könntest du natürlich auch einfach genau an dieser stelle eine codecave platzieren, welche den wert aus eax in eine von dir vorher freigegebene speicherregion kopiert.

diesen könntest du dann einfach per readprocessmemory statisch auslesen.
Übertreib doch nicht! Ich bin anfänger Noch nie davon gehört, haste ne erklärung bzw. TuT ??
Ludder231 is offline  
Old 07/04/2011, 19:04   #6
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
ich denke wenn du dich weder mit asm noch mit speichernutzung des pcs auskennst, macht es wenig sinn mit dem speicher arbeiten zu wollen :s

nicht falsch verstehen, dies soll keine beleidigung sein, sondern einfach nur der hinweis, dass es sinnvoll wäre dich doch erstmal mit den genannten problemen zu befassen, bevor du versuchst aus einer scriptsprache heraus auf sehr hardwarenaher ebene rumzupfuschen =)
lolkop is offline  
Old 07/04/2011, 19:14   #7
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Also mit memoryread kenn ich mich bisschen aus hab schon was damit gescriptet
Ludder231 is offline  
Old 07/04/2011, 19:18   #8
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
eine adresse auslesen ist eine sache, komplexe vorgänge auf systemebene verstehen eine ganz andere...

den pointerbaum von gesuchten werten zu untersuchen ist in der regel nur vergeudete zeit, da man mit codecaves dieses vorgang komplett umgehen kann...
lolkop is offline  
Old 07/04/2011, 19:19   #9
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Okay, wenn du meinst mach ich lieber was anderes, trozdem danke für die mühe
Ludder231 is offline  
Old 07/04/2011, 19:24   #10
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
schaue dir das ganze doch einmal in einem vernünftigen debugger an, und versuche dir eine einfache codecave dort einzufügen =)

falls du nicht weist was eine codecave ist, dabei handelt es sich lediglich um eine einfache umleitung auf deinen eigenen code =)
lolkop is offline  
Reply


Similar Threads Similar Threads
CE Pointer Problem
11/25/2010 - General Coding - 8 Replies
Hallo, es gibt zwar genügend CE Threads, jedoch habe ich nirgendswo meine Lösung für mein Problem mit den Pointern gefunden. Ich spiele ein lustiges 2D Game, wo CE klasse funktioniert. Ich kann Relaunches einfrieren, Leben wir auf 100% setzen und noch ein paar andere lustige Dinge, jedoch muss man ja bei jedem neustart immerwieder von vorne suchen, aber dafür gibts ja die Pointer (Oder Irre ich mich?), nur wenn ich auf "Search Pointer" klicke findet er 90 Millionen, und wie ich sie dann...
Pointer Problem
05/02/2010 - General Coding - 4 Replies
guten abend, ich bin schon die ganze zeit dran einen pointer mit CE zu erstellen. der wichtige screenshot http://www.bilder-hochladen.net/files/ewld-1-jpg. html der value wert der addresse springt in der anzeige immer von 550-0-813694976-0 und wieder von vorn durch ( so jeweils 1 sec intervall ) mein problem:
problem mit pointer
12/28/2009 - General Coding - 7 Replies
nabend^^, habe da ein problem . ich habe die xyz pointer von dem game requim bloodymare gesucht. das ging auch. dann habe ich halt find out what writes to this adress. kam ein mov command . ich sollte halt nach der adresse : 01294170. und? es kommt nicht eine adresse. bei allen 3 adressen zeigt er mir die adresse von oben an. wie komme ich an den base pointer ?
Pointer Problem
11/28/2009 - General Coding - 9 Replies
Huhu, und zwar folgendes Problem ich wollte mich etwas mit cheatengine beschäftigen und ein paar Pointer in Diablo 2 finden. Angenommen ich suche meine Lebenspunkte (1631) --> First Scan (4bytes , exact value) = 1631 --> ein paar weitere Scans mit veränderten Werten und es bleiben noch 2 Addressen übrig die immer den gleichen Wert haben sobald sich mein Leben verändert im Spiel.



All times are GMT +1. The time now is 23:37.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.