Register for your free account! | Forgot your password?

Go Back   elitepvpers > World of Warcraft > WoW Bots
You last visited: Today at 04:02

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

 

c++ memoryread - offsets

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Sep 2007
Posts: 149
Received Thanks: 32
c++ memoryread - offsets

Hey all,

ich hab ein problem mit den adressen und offsets...
memory reading ist derbes neuland für mich und ich verstehe manche sachen eben nicht

also zb den characternamen auslesen mache ich so


jetzt zu den offsets..
mein erster gedanke war "adresse+offset = richtigeadresse"
allerdings kann das ja ned hinhaun weil doch immer das selbe ergebnis rauskommt, richtig?

nach etwas gesuche finde ich für zb charlevel oder position das hier
(allerdings c# und, ich glaube, mit einer dll)

habe ein beispiel gefunden (anderes spiel) das auch meinem gedankengang entspricht:

allerdings funktioniert das ganze auf wow übersezt nicht...

als playerbase adresse nehme ich 0x00C79CE0
offset1 = 0x32
offset2 = 0x24

damit müsste ich dann irgendwie die playerbase rausbekommen die ich für vieles weitere ja benütige

allerdings funktioniert alles was ich versucht habe nicht und ich habe nicht viel ahnung von speicheradressen usw


wie muss ich das anstellen das ich die playerbase, und weiter das characterlevel bzw die positionscoordinaten auslesen kann?

bin über jede hilfe dankbar

LG



deestruct is offline  
Thanks
3 Users
Old   #2
 
elite*gold: 1
Join Date: Sep 2009
Posts: 858
Received Thanks: 603
Hallo deestruct,
kann dir in deinem Falle auch nicht wirklich helfen, aber mich interessiert zurzeit die selbe Frage.
Wo wir schon bei dem Thema sind. Ich kann mitlerweile Offsets kopieren und sie verändern, aber was da genau zu 100% passiert, weiß ich wiederrum auch nicht.

Kennt jemand ein Buch das genau auf dieses Thema eingeht?
Mich würd mal interessieren was man zum Beispiel verändert, wenn man ein paar Zahlen zu einem offsets schreibt usw.
Oder warum muss man Playerbase und Playername addieren um den Namen auszulesen? Gibt es nicht direkt ein Offset?


Imperial Blaze is offline  
Old   #3
 
elite*gold: 240
Join Date: Dec 2006
Posts: 1,580
Received Thanks: 1,609
Quote:
Originally Posted by Imperial Blaze View Post
Hallo deestruct,
kann dir in deinem Falle auch nicht wirklich helfen, aber mich interessiert zurzeit die selbe Frage.
Wo wir schon bei dem Thema sind. Ich kann mitlerweile Offsets kopieren und sie verändern, aber was da genau zu 100% passiert, weiß ich wiederrum auch nicht.

Kennt jemand ein Buch das genau auf dieses Thema eingeht?
Mich würd mal interessieren was man zum Beispiel verändert, wenn man ein paar Zahlen zu einem offsets schreibt usw.
Oder warum muss man Playerbase und Playername addieren um den Namen auszulesen? Gibt es nicht direkt ein Offset?
Du musst sie addieren, da der Spielername relativ zur Playerbase im Speicher abgelegt wird.
Der Name ist ein Objekt (string) der dem Playercontainer gehört und liegt immer XX bytes nachdem Playercontainer.

Da sich der Playercontainer (Playerbase) immer ändert, und nicht statisch ist, verändert sich das Offset auch.

DESHALB addiert man die Offsets
Bl@ze! is offline  
Old   #4
 
elite*gold: 240
Join Date: Dec 2006
Posts: 1,580
Received Thanks: 1,609
Wieso schreibst du dir nicht ein Programm, legst nen Array an, gibst die Start Addresse von dem Array aus, inner Konsole und liest dann mit nem zweiten Programm, die Adresse + 4 Bytes, + 4 bytes etc. und so weiter aus?

Mach das mal, dann wirst du das ganze auch Ansatzweise verstehen. ;-)


Bl@ze! is offline  
Old   #5
 
elite*gold: 0
Join Date: Sep 2007
Posts: 149
Received Thanks: 32
also jezt funktionierte es mit dem auf google gefundem code, der auch meinem denkansatz entspricht!
der offset finder, den ich auf einer anderen seite gefundne habe hat für die playerbase eine falsche adresse ausgespuckt... deswegen funktionierte das ganze nicht!!! und ich brauch 2 tage um das rauszufinden -.-

@imperialblaze und alle dies sonst intressiert: ich editier gleich einen beispielcode hier rein!

so das beispiel...
deestruct is offline  
Thanks
1 User
Old   #6

 
elite*gold: 1
Join Date: Feb 2009
Posts: 6,363
Received Thanks: 7,947
Ein Beispiel für das Verwenden der Playerbase wäre:
Code:
// Player pointer
#define OFFS_PLAYERBASE_PTR 0x00CD87A8 // 3.3.5a
#define OFFS_PLAYERBASE_OFFSET_LVL1 0x34 // 3.3.5a
#define OFFS_PLAYERBASE_OFFSET_LVL2 0x24 // 3.3.5a

DWORD playerbase ;
ReadProcessMemory(hProc, (void*)OFFS_PLAYERBASE_PTR, &playerbase, 4) ;
ReadProcessMemory(hProc, (void*)(playerbase+OFFS_PLAYERBASE_OFFSET_LVL1), &playerbase, 4) ;
playerbase += OFFS_PLAYERBASE_OFFSET_LVL2 ;
Edit: Ne mom, sehe gerade, dass du garnicht mit Dll Injection arbeitest, ich schreib das mal fix um ;p

Edit2:
So, müsste so passen jetzt, ist allerdings ungestetet.
Ende! is offline  
Thanks
2 Users
Old   #7
 
elite*gold: 0
Join Date: Sep 2007
Posts: 149
Received Thanks: 32
danke ende, allerdings wie gesagt ging es ja schon... nur hatte ich eben falsche adressen und das ewigkeiten nicht bemerkt... liegt hald dadran das ich das mit dne offsets nicht ganz verstehe -.-

naja dein beispiel ist trotzdem.. nunja... etwas kürzer, werde mir aber eh noch funktionen für das alles selbst schreiben
deestruct is offline  
Old   #8
 
elite*gold: 0
Join Date: Oct 2010
Posts: 309
Received Thanks: 271
Quote:
Originally Posted by deestruct View Post
Hey all,

ich hab ein problem mit den adressen und offsets...
memory reading ist derbes neuland für mich und ich verstehe manche sachen eben nicht

also zb den characternamen auslesen mache ich so


jetzt zu den offsets..
mein erster gedanke war "adresse+offset = richtigeadresse"
allerdings kann das ja ned hinhaun weil doch immer das selbe ergebnis rauskommt, richtig?

nach etwas gesuche finde ich für zb charlevel oder position das hier
(allerdings c# und, ich glaube, mit einer dll)

habe ein beispiel gefunden (anderes spiel) das auch meinem gedankengang entspricht:

allerdings funktioniert das ganze auf wow übersezt nicht...

als playerbase adresse nehme ich 0x00C79CE0
offset1 = 0x32
offset2 = 0x24

damit müsste ich dann irgendwie die playerbase rausbekommen die ich für vieles weitere ja benütige

allerdings funktioniert alles was ich versucht habe nicht und ich habe nicht viel ahnung von speicheradressen usw


wie muss ich das anstellen das ich die playerbase, und weiter das characterlevel bzw die positionscoordinaten auslesen kann?

bin über jede hilfe dankbar

LG
Dein Beispiel für c# wurde mit BlackMagick gelöst und ist keine Dll.

Eventuell könnten dir diese beiden Tutorials für das Verständnis von Offsets und Playerbase hilfreich seien.
Ist zwar anhand eines anderen Spieles erklärt aber vielleicht hilft es trotzdem.

Tutorial 1:
Tutorial 2( gehört zu dem ersten dazu):
Threk is offline  
Thanks
5 Users
Old   #9
 
elite*gold: 1
Join Date: Sep 2009
Posts: 858
Received Thanks: 603
Wow, vielen vielen Dank <3


Imperial Blaze is offline  
Reply



« Previous Thread | Next Thread »

Similar Threads
Autoit MemoryRead mit Offsets
Hi Elitepvper! Ich habe ein Problem mit meinem Kilroy bot und anderen (Autoit). Ich habe schon alles versucht um die aktuelle Energie meines...
11 Replies - GW Bot Discussions / Questions
[Hilfe] MemoryRead in WoW
Huhu, wollte mich mal wieder ans MemoryRead wagen. Ich komme einfach nicht weiter und finde nichts im Internet (bzw. Foren). Ich möchte einfach...
3 Replies - AutoIt
Memoryread Unicode
Ja ich wollte mal fragen wie ich bei Autoit bei Memoryread die Adresse als Unicode auslesen kann.
3 Replies - AutoIt
Archlord MemoryRead -.-
hallo! ich versuche jetzt seit 2 tagen meine hp und die hp meines current target aus dem ram auszulesen. ich finde auch werte die meine current hp...
3 Replies - Archlord
Archlord MemoryRead -.-
hallo! ich versuche jetzt seit 2 tagen meine hp und die hp meines current target aus dem ram auszulesen. ich finde auch werte die meine current hp...
0 Replies - General Coding



All times are GMT +1. The time now is 04:02.


Powered by vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Abuse
Copyright ©2018 elitepvpers All Rights Reserved.