seja bem vindo ao forum eof, caso nao seja cadastrado se cadastre para poder visualizar todo o conteudo ^^

Você não está conectado. Conecte-se ou registre-se

 » Gammer / Romhacker / Cheater » Cheats / Hacks » [tutorial] criar cheats para games

[tutorial] criar cheats para games

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

1 [tutorial] criar cheats para games em Ter Jan 15, 2013 8:04 am

Kodo no Kami

avatar
master
master
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

[Você precisa estar registrado e conectado para ver esta imagem.]

[Você precisa estar registrado e conectado para ver este link.]

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

Código:
#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

Código:
#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

Código:
#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

Código:
#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

Código:
#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

Código:
#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);
}

[Você precisa estar registrado e conectado para ver esta imagem.]

bom galera esse e o basico para criar cheat ^^

by hacker fts315


_________________ASSINATURA_________________
[Você precisa estar registrado e conectado para ver esta imagem.]
[Você precisa estar registrado e conectado para ver esta imagem.]

Contato:
Spoiler:

Contato:
Facebook: [Você precisa estar registrado e conectado para ver este link.]
Skype: hackerfts315
http://endoffile.umforum.net

2 Re: [tutorial] criar cheats para games em Ter Jan 15, 2013 10:55 am

MysteryMind

avatar
avançado
avançado
Legal mano, sou leigo em programação intão nao intendo quase nada kkk
Mas isso ai deve ajudar muita gente!!!


_________________ASSINATURA_________________
"Novo ano, mais tédio, mais escola, mais conhecimentos"
Nao ta ruim assim não né?

3 Re: [tutorial] criar cheats para games em Qua Nov 20, 2013 8:20 pm

0x0101A55F

avatar
novato
novato
A paz do Senhor esteja contigo,

Legal seu trainer, mas os valores são do tipo binário, 2, 4 ou 8 bytes, float, double...?

Espero em breve postar um tutorial ensinando a alterar um valor flutuante via ponteiro.

Mas, parabéns pelo o tutorial. [+]

Att,

4 Re: [tutorial] criar cheats para games em Dom Nov 24, 2013 3:37 pm

Kodo no Kami

avatar
master
master
0x0101A55F escreveu:A paz do Senhor esteja contigo,

Legal seu trainer, mas os valores são do tipo binário, 2, 4 ou 8 bytes, float, double...?

Espero em breve postar um tutorial ensinando a alterar um valor flutuante via ponteiro.

Mas, parabéns pelo o tutorial. [+]

Att,
no caso mano eu usei naquele exemplo variavel do tipo int que no caso por padrao é 32bytes porem as variaiveis do tipo int nao é fixa no valor ou seja cria uma varivel do tipo int com numeros maiores doq ela pode suportar por exemplo long long int (64bytes) em uma variaveil int alguns compiladores automaticamente converte outros mais antigos pode gerar falhas kkkk, mais se for para especificar um valor pode usar BYTE (8bytes = 0 a 255), WORD (16bytes = 0 a 65535), DWORD (32bytes 0 a ...) no lugar de uma variavel do tipo int


_________________ASSINATURA_________________
[Você precisa estar registrado e conectado para ver esta imagem.]
[Você precisa estar registrado e conectado para ver esta imagem.]

Contato:
Spoiler:

Contato:
Facebook: [Você precisa estar registrado e conectado para ver este link.]
Skype: hackerfts315
http://endoffile.umforum.net

Conteúdo patrocinado


Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum