Ir para conteúdo

Featured Replies

Postado

ola pessoal,

 

seguinte, estou tentando criar um bot para tibia na versão 10.53. oque esta acontecendo é oque não estou conseguindo o valor

certo apos ler  a memoria. já revisei o código diversas veses e até então está certo. creio que o problema seja no endereço de memoria que estou utilizando. tenho como base os endereços do site: http://tpforums.org/forum/threads/6139-Tibia-Addresses-10-53

 

o meu codigo em c++ segue abaixo:

// ConsoleApplication1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream>
#include <Windows.h>

#pragma comment(lib, "user32.lib")

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	

	cout << "Bem vindos ao tibia Hack::bot" << endl;
	HWND hwnd = FindWindow(0, L"Tibia");

	if (hwnd == 0) {
		cout << "Erro, não foi possivel achar o processo tibia" << endl;
		
	}
	else{
		cout << "Janela Tibia foi achada com sucesso." << endl;
	}
	
	DWORD process_id;
	GetWindowThreadProcessId(hwnd, &process_id);

	HANDLE hPro = OpenProcess(PROCESS_ALL_ACCESS, FALSE, process_id);
	if (!hPro){
		cout << "Nao foi possivel abrir o processo!" << endl;
	}
	else{
		
		DWORD pointer = 0x4F57C3;
		DWORD pointed;
		WORD Offset = 0x0028;
		int ManaAtual = 0;
		cout << "Processo aberto com sucesso" << endl;
		ReadProcessMemory(hPro, (LPCVOID)(pointer), &pointed, 4, NULL);
		ReadProcessMemory(hPro, (LPCVOID)(pointer+Offset), &ManaAtual, 4, NULL);
		
		cout << "Soul -> " << pointed << endl;
	}
	cin.get(); //espera o usuario digitar algo pra continuar

	return 0;

}

este exemplo simples está tentando pegar a soul do personagem.

 

alguem ai saberia a lista correta de endereços ou onde estou errando?

Postado

Cara, esquece que vc não vai conseguir caso esteja usando windows com ASLR habilitado pois o base address dos programas mudam de tempo em tempo.

No caso do exemplo que vc colocou 0x4F57C3 o base address seria 0x400000 e o resto seria o endereço dentro da base address então vc precisa primeiro pegar o base address do cliente tibia e modificar o base address do endereço que vc tem pelo do tibia, ai sim fazer o acesso a memoria do tibia, a cip usa o ASLR para tentar dificultar os bots, para testes o que vc precisaria é desabilitar o aslr e depois tentar criar uma função que troque a base address do endereço que vc tem pelo do cliente rodando na memoria.

Mas isso é somente se for esse o seu problema

Donate

 

  • 1 month later...
Postado

Creio eu seja que nem o mlk falou acima estou parado em programação mais lembro que tinha a parada de ASLR para desabilitar

 

e colocava baseadress na adress sempre tipo

Player.Mana = 0xF2384 + Kernel.KClient.BaseAdress;

assim o valor era exato em computadores tipo win 7 e tals, creio que é isso.

 

o meu está em C# mais acho que no seu nivel tu já é esperto e consegue converte isso

 

        public KClient(Process _process, string name)
        {
            Process = _process;
            BaseAddress = (uint)_process.MainModule.BaseAddress.ToInt32() - 0x400000;
            Handle = _process.MainWindowHandle;
            PID = _process.Id;
        }

Editado por Mek Fiuchem (veja o histórico de edições)

tk-melhor.png

KIIZH.png

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo