[tutorial] criar cheats para games

Postagem de mods e hacks sobre games
Post Reply
User avatar
Kodo no Kami
Admin
Admin
Posts: 723
Joined: Fri Jan 02, 2015 1:56 pm
Contact:

[tutorial] criar cheats para games

Post by Kodo no Kami » Thu Apr 09, 2015 4:11 pm

bom galera nesse tutorial vou ensinar como criar cheat para games, para isso agente vai ter q descobrir o endereço de memoria da onde agente vai mudar, conseguir o pid do jogo (process id), abrir o processo para escrita e modificar o valor nele, o jogo q eu vou modificar vai ser esse

Image

baixar

oq agente vai modificar nesse jogo e o dinheiro q começa com 3500, para isso agente tem q achar o endereço onde ele fica na memoria (bom isso em alguns jogos pode ser um problema pq o endereço muda constantemente dependendo do jogo, fase, jogador ou ate sistema operacional), para localizar o endereço vc pode scannear a memoria procurando o valor no meu caso 3500, vai achar um monte de valor 3500 e so diminuindo ou almentado o dinheiro e scanneando denovo ate sobra apena o endereço certo (para facilitar vc pode usar programas como cheat engine para localizar o valor) no meu caso aq o endereço de memoria do dinheiro e 45CC08 (ta em hexadecimal)

agora vamos criar o nosso cheat, declaramos stdio.h e windows.h

Code: Select all

#include <stdio.h>
#include <windows.h>

int main(void)
{
}
agora vamos conseguir o pid para isso temos q conseguir o handle da janela, vamos usar a funçao FindWindow passamos como argumento 0 e titulo da janela (no caso aq e Form1), tambem atribuimos ela a uma variavel do tipo HWND

Code: Select all

#include <stdio.h>
#include <windows.h>

int main(void)
{
    HWND janela;
    
    janela = FindWindow(0,"Form1");
}
agora vamos conseguir o pid pelo handle para isso usamos a funçao GetWindowThreadProcessId e passamos como argumento a variavel HWND e o endereço de uma variavel DWORD

Code: Select all

#include <stdio.h>
#include <windows.h>

int main(void)
{
    HWND janela;
    DWORD pid;
    
    janela = FindWindow(0,"Form1");
    GetWindowThreadProcessId(janela,&pid);
}
agora vamos abrir o processo com OpenProcess, nele passamos como argumento PROCESS_ALL_ACCESS (isso indica q vai abrir para leitura,escrita, e outros), depois 0, e o pid no caso a nossa variavel DWORD, tambem atribuimos a funçao OpenProcess a uma variavel do tipo HANDLE

Code: Select all

#include <stdio.h>
#include <windows.h>

int main(void)
{
    HWND janela;
    DWORD pid;
    HANDLE processo;
    
    janela = FindWindow(0,"Form1");
    GetWindowThreadProcessId(janela,&pid);
    
    processo = OpenProcess(PROCESS_ALL_ACCESS,0,pid);
}
vamos criar uma variavel do tipo DWORD e colocar o endereço nela, tambem criar uma variavel com o novo valor

Code: Select all

#include <stdio.h>
#include <windows.h>

int main(void)
{
    HWND janela;
    DWORD pid;
    HANDLE processo;
    DWORD endereco = 0x45CC08;
    int dinheiro = 100000;
    
    janela = FindWindow(0,"Form1");
    GetWindowThreadProcessId(janela,&pid);
    
    processo = OpenProcess(PROCESS_ALL_ACCESS,0,pid);
}
para terminar agente escreve no endereço com a funçao WriteProcessMemory, passamos como argumento o processo, depois o endereço (usamos aq typecast para converter para LPVOID), o endreço da variavel q ta o valor (tambem usamos aq typecast para converter para LPVOID), o tamanho da variavel q ta o valor (usamos a funçao sizeof como a variavel como argumento) e 0, tambem fechamos o handle com CloseHandle

Code: Select all

#include <stdio.h>
#include <windows.h>

int main(void)
{
    HWND janela;
    DWORD pid;
    HANDLE processo;
    DWORD endereco = 0x45CC08;
    int dinheiro = 100000;
    
    
    janela = FindWindow(0,"Form1");
    GetWindowThreadProcessId(janela,&pid);
    
    processo = OpenProcess(PROCESS_ALL_ACCESS,0,pid);
    WriteProcessMemory(processo,(LPVOID)endereco,(LPVOID)&dinheiro,sizeof(dinheiro),0);
    CloseHandle(processo);
}
Image

bom galera esse e o basico para criar cheat ^^

by kodo no kami
Image

que desagradavel ~ mirai kuriyama

User avatar
fascist_
Moderador
Moderador
Posts: 96
Joined: Fri Jul 29, 2016 5:35 pm

Re: [tutorial] criar cheats para games

Post by fascist_ » Wed Mar 22, 2017 1:14 pm

Nossa, mt bom Kodo, eu estava procurando como fazer isso faz mor tempão. Não pra aplicar necessariamente em jogos, em outros tipos de programa também é legal. Você sabe o comando pra achar o endereço de um valor também? VLW.

Zaphod
Admin
Admin
Posts: 19
Joined: Fri Jan 02, 2015 1:24 pm

Re: [tutorial] criar cheats para games

Post by Zaphod » Thu Mar 23, 2017 6:19 pm

o que eu queria saber é como listar as areas mapeadas de memorias, pegar os range de endereços
+[----->+++<]>+.+.

Post Reply

Return to “MOD / Hacks / RomHacking”