Cheat Engine [Help]Non riesco a trovare la base address :\

Stato
Discussione chiusa ad ulteriori risposte.

Multibyte

Utente Palladium
27 Febbraio 2012
3,328
198
985
1,509
Salve, mi sono dato al GameHacking tramite MemoryWriting, tutto e' andato bene con le Address Statiche, finche' non sono comparsi i pointer.. Ho pointer con 2 offset e 1 offset. Ho provato a seguire la guida di Speed per trovare il base address ma senza risultato :nono:
Ho preso l'address iniziale, ho sottratto il secondo offset, e ho cercato il risultato con 4 bytes hex.. Ma non trova una ceppa :\
Why? Grazie in anticipo!
 
No, non è chiaro :\
Esattamente cos'è che vuole trovare? Cosa intende con BaseAddress? L'indirizzo contenente il valore da modificare o l'indirizzo di base del modulo caricato in memoria?
 
No, non è chiaro :\
Esattamente cos'è che vuole trovare? Cosa intende con BaseAddress? L'indirizzo contenente il valore da modificare o l'indirizzo di base del modulo caricato in memoria?

L'indirizzo contenente il valore da modificare. Voglio modificare questi pointer con memorywriting in vb.net come se fossero degli address normali. XD


Inviato dal mio iPhone utilizzando Tapatalk
 
  • Mi piace
Reazioni: DanyDollaro
L'indirizzo contenente il valore da modificare. Voglio modificare questi pointer con memorywriting in vb.net come se fossero degli address normali. XD
Allora, ipotizzando un pointer con 2 offset:
1. Legga il valore del pointer.
2. Sommi al valore appena letto il valore dell'offset (ottiene il secondo pointer).
3. Legga il valore del secondo pointer.
4. Sommi al valore appena letto il valore del secondo offset (ottiene l'indirizzo finale).

In pseudocodice:
Codice:
ReadProcessMemory(handle, pointer, pointer2, 4, null)
pointer2 += offset1
ReadProcessMemory(handle, pointer2, address, 4, null)
address += offset2
WriteProcessMemory(handle, address, newvalue, 4, null)
 
  • Mi piace
Reazioni: Anihilat0r
Aggiungo che per prendere il base address del processo stesso (quindi per esempio nel caso il tuo cheats sia una dll o comunque sia iniettato nel processo target) ti basta chiamare l'API GetModuleHandle passando come parametro NULL (0).
Se invece vuoi prendere il base address di un processo esterno puoi fare così:
.

Ovviamente tutto questo ti sarà utile solo in fase di programmazione di un cheat..
Buona fortuna :D
Fonti: https://stackoverflow.com/questions/14467229/get-base-address-of-process
 
  • Mi piace
Reazioni: Anihilat0r
Stato
Discussione chiusa ad ulteriori risposte.