-
Автор темы
- #1
Если нужен исходник, то могу скинуть. Ну так вот. Что не так, фигли оно не работает?
Мне кажется, что вот сдеся чтото не так
Вот код для бхопа
Вот код для процессов
Мне кажется, что вот сдеся чтото не так
if (local_flags == FL_ON_GROUND && GetAsyncKeyState(VK_SPACE) & 0x80000)
Вот код для бхопа
C++:
#include "csgo.hpp"
#include "process.h"
#define FL_ON_GROUND 257
int main()
{
process csgo("Counter-Strike: Global Offensive");
DWORD base_address = csgo.get_module((LPSTR)"client.dll");
DWORD local_player;
int local_flags;
while (true)
{
local_player = csgo.rpm<DWORD>(base_address + hazedumper::signatures::dwLocalPlayer);
local_flags = csgo.rpm<int>(local_player + hazedumper::netvars::m_fFlags);
if (local_flags == FL_ON_GROUND && GetAsyncKeyState(VK_SPACE) & 0x80000)
{
csgo.wpm<bool>(true, base_address + hazedumper::signatures::dwForceJump);
Sleep(25);
csgo.wpm<bool>(false, base_address + hazedumper::signatures::dwForceJump);
}
C++:
#include <Windows.h>
#include<TlHelp32.h>
#include<iostream>
using namespace std;
class process
{
public:
DWORD process_id;
HANDLE process_handle;
string window_name;
process(string window_name)
{
this->window_name = window_name;
GetWindowThreadProcessId(FindWindow(NULL, this->window_name.c_str()), & this->process_id);
this->process_handle = OpenProcess(PROCESS_ALL_ACCESS, NULL, this->process_id);
}
template <class data_type>
auto wpm(data_type value, DWORD address)->void
{
WriteProcessMemory(this->process_handle, (PVOID)address, &value, sizeof(data_type), NULL);
}
template <class data_type>
auto rpm(DWORD address)->data_type
{
data_type buffer;
ReadProcessMemory(this->process_handle, (PVOID)address, &buffer, sizeof(data_type), NULL);
return buffer;
}
auto get_module(LPSTR module_name)->DWORD
{
auto module_snapshot = INVALID_HANDLE_VALUE;
module_snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, this->process_id);
if (module_snapshot == INVALID_HANDLE_VALUE)
{
cout << "Falied to snapshot of module" << endl;
return 0;
}
MODULEENTRY32 module_entry;
module_entry.dwSize = sizeof(MODULEENTRY32);
if (Module32First(module_snapshot, &module_entry))
{
if (!strcmp(module_name, module_entry.szModule))
{
cout << "Found module " << module_entry.szModule << " with base address " << hex << (DWORD)module_entry.modBaseAddr << endl;
CloseHandle(module_snapshot);
return (DWORD)module_entry.modBaseAddr;
}
}
while (Module32Next(module_snapshot, &module_entry))
{
if (!strcmp(module_name, module_entry.szModule))
{
cout << "Found module " << module_entry.szModule << " with base address " << hex << (DWORD)module_entry.modBaseAddr << endl;
CloseHandle(module_snapshot);
return (DWORD)module_entry.modBaseAddr;
}
}
cout << "Couldnt find module" << endl;
CloseHandle(module_snapshot);
return 0;
}
};
}
}