Гайд Как самому сделать WallHack для CS:GO. Делаем ВаллХак для КС:ГО сами

Новичок
Статус
Оффлайн
Регистрация
24 Янв 2019
Сообщения
1
Реакции[?]
0
Поинты[?]
0
press f to suck dick
Начинающий
Статус
Оффлайн
Регистрация
12 Янв 2019
Сообщения
146
Реакции[?]
24
Поинты[?]
0
Всем привет!! Сегодня мы научимся создавать свои читы!

Собственно чем мы сегодня займёмся?
Сегодня мы создадим примерно за 30 минут
WallHack - Glow ESP.

1. Нужно скачать и установить Visual studio и язык Visual C++.
2. Понадобится дампер оффсетов. От себя посоветую
Пожалуйста, авторизуйтесь для просмотра ссылки.
дампер.
3. Создайте проект в Visual studio
4. В фильтре "Файлы исходного кода" создаем файл "main.cpp", а в фильтре "Заголовочные файлы" создаем файлы "ofs.h" и "hprocess.h".
5. Далее я выложу под маленький хайд код, который нужно будет вставлять в файлы
Скрытое содержимое
6. Ставим в свойствах сборки на Relеase
7. Далее как на скринах:

8. Теперь запускаем КС и Дампер
9. После закрытия дампера в папке с ним создадутся 2 текстовика. Открываем "OffsetManager.txt" и ищем нужные оффсеты по названиям. Я в коде пометил какие обновляются
10. Нажимаем кнопку сборка->собрать решение, дожидаемся окончания сборки и тестируем. {НА 27.02.2k17 ЧИТ НЕ ТРЕБУЕТ ОБНОВЛЕНИЯ!}


КТ светятся синим, а ТТ - красным.

Этот гайд не открывает основ программирования, а всего-лишь позволяет создать пользователю индивидуальный чит с почти 0% шансом детекта

Если что-то не понятно то пишите мне в ВК

Ребят, понимаю, гайд старый да и сам создатель заходил в марте прошлого года, но обьясните мне, дурочку, почему неправильно когда я всё пастил?
 

Вложения

Начинающий
Статус
Оффлайн
Регистрация
15 Авг 2017
Сообщения
3
Реакции[?]
0
Поинты[?]
0
устарело походу, уже не первое руководство, где проблемы с кодом. Либо среда VS тупит, видит ошибки там, где их не должно быть. Например: GetModuleNamePointer("client.dll", gameProcess.th32ProcessID);
ошибка в самой строке "client.dll", тип несовместимость параметров


вылечил этим - (LPSTR); //(GetModuleNamePointer((LPSTR)"client.dll", gameProcess.th32ProcessID);)

НО, VS напрочь отказывается компилировать код, хоть ошибок и не показывает.
 
Последнее редактирование:
Новичок
Статус
Оффлайн
Регистрация
5 Апр 2019
Сообщения
1
Реакции[?]
0
Поинты[?]
0
Можно принцип работы в двух словах?
Хочу переписать или хотя бы понять.
 
Новичок
Статус
Оффлайн
Регистрация
20 Ноя 2019
Сообщения
1
Реакции[?]
0
Поинты[?]
0
Всем привет!! Сегодня мы научимся создавать свои читы!

Собственно чем мы сегодня займёмся?
Сегодня мы создадим примерно за 30 минут
WallHack - Glow ESP.

1. Нужно скачать и установить Visual studio и язык Visual C++.
2. Понадобится дампер оффсетов. От себя посоветую
Пожалуйста, авторизуйтесь для просмотра ссылки.
дампер.
3. Создайте проект в Visual studio
4. В фильтре "Файлы исходного кода" создаем файл "main.cpp", а в фильтре "Заголовочные файлы" создаем файлы "ofs.h" и "hprocess.h".
5. Далее я выложу под маленький хайд код, который нужно будет вставлять в файлы
Скрытое содержимое
6. Ставим в свойствах сборки на Relеase
7. Далее как на скринах:

8. Теперь запускаем КС и Дампер
9. После закрытия дампера в папке с ним создадутся 2 текстовика. Открываем "OffsetManager.txt" и ищем нужные оффсеты по названиям. Я в коде пометил какие обновляются
10. Нажимаем кнопку сборка->собрать решение, дожидаемся окончания сборки и тестируем. {НА 27.02.2k17 ЧИТ НЕ ТРЕБУЕТ ОБНОВЛЕНИЯ!}


КТ светятся синим, а ТТ - красным.

Этот гайд не открывает основ программирования, а всего-лишь позволяет создать пользователю индивидуальный чит с почти 0% шансом детекта

Если что-то не понятно то пишите мне в ВК
интересно сейчас актульно?хочу попробовать)
 
Начинающий
Статус
Оффлайн
Регистрация
23 Окт 2019
Сообщения
27
Реакции[?]
1
Поинты[?]
0
Капец, слишком много строк кода. Видел туториал на питоне там строк 30-50. :-)
 
[HvH ✡ Player] aka B1gPaster
Участник
Статус
Оффлайн
Регистрация
28 Дек 2017
Сообщения
941
Реакции[?]
265
Поинты[?]
0
устарело походу, уже не первое руководство, где проблемы с кодом. Либо среда VS тупит, видит ошибки там, где их не должно быть. Например: GetModuleNamePointer("client.dll", gameProcess.th32ProcessID);
ошибка в самой строке "client.dll", тип несовместимость параметров

вылечил этим - (LPSTR); //(GetModuleNamePointer((LPSTR)"client.dll", gameProcess.th32ProcessID);)

НО, VS напрочь отказывается компилировать код, хоть ошибок и не показывает.
Ну давай по фактам.
1) что рили устарело? Всего 2 года прошло
2) сейчас уже не клиент.длл а клиент_панарама.длл
 
Новичок
Статус
Оффлайн
Регистрация
21 Апр 2020
Сообщения
1
Реакции[?]
0
Поинты[?]
0
Помогите что не так с кодом пробую запустить в игре и он не работает. ofs обновлял.
Вот main
C++:
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
#include <conio.h>
#include <Windows.h>
#include "hprocess.h"
#include "ofs.h"

using namespace std;
Hackprocess hEngine;


struct GlowObjectDefinition
{
    DWORD pEntity;
    float r = 0;
    float g = 225;
    float b = 0;
    float a = 0;
    uint8_t unk1[16];
    bool m_bRenderWhenOccluded;
    bool m_bRenderWhenUnoccluded;
    bool m_bFullBloom;
    uint8_t unk2[14];
};

struct Player {
    DWORD PlayerBase;
    DWORD GlowBase;
    DWORD WeaponEntityIndex;
    DWORD WeaponBase;
    int GlowCount;
    int Clip;
    int wn;
    int Team;
    int CrosshairID;
    byte Flags;
    bool ReadInformation() {
        ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(hEngine.dwordClient + dw_LocalPlayer), &PlayerBase, sizeof(DWORD), NULL);
        ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(hEngine.dwordClient + GlowObject), &GlowBase, sizeof(DWORD), NULL);
        ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(hEngine.dwordClient + GlowObject + 0x4), &GlowCount, sizeof(int), NULL);
        ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(PlayerBase + i_TeamNumber), &Team, sizeof(int), NULL);
        ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(hEngine.dwordClient + dw_EntityList + (WeaponEntityIndex * 0x10) - 0x10), &WeaponBase, sizeof(DWORD), NULL);
        if (Clip == 4 && wn == 16) {
            wn = 60;
        }
        if (Clip == 11 && wn == 32) {
            wn = 61;
        }
        return true;
    }
}Player;

struct Entity {
    DWORD EntityBase;
    DWORD BoneMatrix;
    bool Dormant;
    int Team;
    int HP;
    bool IsDead;
    void ReadInformation(int nPlayer) {
        ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(hEngine.dwordClient + dw_EntityList + nPlayer * 0x10), &EntityBase, sizeof(DWORD), NULL);
        ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(EntityBase + dw_BoneMatrix), &BoneMatrix, sizeof(DWORD), NULL);
        ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(EntityBase + i_TeamNumber), &Team, sizeof(int), NULL);
        ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(EntityBase + i_HP), &HP, sizeof(int), NULL);
        ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(EntityBase + b_LifeState), &IsDead, sizeof(bool), NULL);
        return;
    }
}Entity[32];

void esp() {
    {
        if (Player.GlowBase != NULL) {
            for (int i = 0; i < Player.GlowCount; i++) {
                DWORD mObj = Player.GlowBase + i * sizeof(GlowObjectDefinition);
                GlowObjectDefinition glowObj;
                ReadProcessMemory(hEngine.HandleProcess, (PBYTE*)(mObj), &glowObj, sizeof(GlowObjectDefinition), NULL);
                if (glowObj.pEntity != NULL) {
                    for (int j = 1; j < 32; j++) {
                        float red = 0, green = 0, blue = 0;
                        if (glowObj.pEntity == Entity[j].EntityBase) {
                            float a = 1.0f;
                            if (!Entity[j].Dormant && Entity[j].HP > 0) {
                                if (Entity[j].Team == 3) {
                                    blue = 1;
                                }
                                else {
                                    red = 1;
                                }
                                WriteProcessMemory(hEngine.HandleProcess, (PBYTE*)(mObj + 0x4), &red, sizeof(float), NULL);
                                WriteProcessMemory(hEngine.HandleProcess, (PBYTE*)(mObj + 0x8), &green, sizeof(float), NULL);
                                WriteProcessMemory(hEngine.HandleProcess, (PBYTE*)(mObj + 0xC), &blue, sizeof(float), NULL);
                                WriteProcessMemory(hEngine.HandleProcess, (PBYTE*)(mObj + 0x10), &a, sizeof(float), NULL);
                                WriteProcessMemory(hEngine.HandleProcess, (PBYTE*)(mObj + 0x24), &b_True, sizeof(bool), NULL);
                                WriteProcessMemory(hEngine.HandleProcess, (PBYTE*)(mObj + 0x25), &b_False, sizeof(bool), NULL);
                            }
                        }
                    }
                }
            }
        }
    }
    return;
}

void asd() {
    system("title HACK");
    cout << "activate" << endl;
    return;
}

int main() {
    asd();
    hEngine.memoryType();
    while (true) {
        for (int i = 0; i < 32; i++) {
            Entity[i].ReadInformation(i);
        }
        Player.ReadInformation();
        esp();
        Sleep(1);
    }
    return 0;
}
Вот hprocess
C++:
#include <Windows.h>
#include <TlHelp32.h>

class Hackprocess
{
public:

    PROCESSENTRY32 gameProcess;
    HANDLE HandleProcess;
    HWND HWNDCsgo;
    DWORD dwordClient;
    DWORD dwordEngine;
    DWORD dwordOverlay;
    DWORD dwordVGui;
    DWORD dwordServer;
    DWORD dwordLibCef;
    DWORD dwordSteam;
    DWORD FindProcessName(const char* ProcessName, PROCESSENTRY32* pEntry)
    {
        PROCESSENTRY32 ProcessEntry;
        ProcessEntry.dwSize = sizeof(PROCESSENTRY32);
        HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
        if (hSnapshot == INVALID_HANDLE_VALUE) return 0;        if (!Process32First(hSnapshot, &ProcessEntry))
        {
            CloseHandle(hSnapshot);
            return 0;
        }
        do {
            if (!_strcmpi(ProcessEntry.szExeFile, ProcessName))
            {
                memcpy((void*)pEntry, (void*)&ProcessEntry, sizeof(PROCESSENTRY32));
                CloseHandle(hSnapshot);
                return ProcessEntry.th32ProcessID;
            }
        } while (Process32Next(hSnapshot, &ProcessEntry));
        CloseHandle(hSnapshot);
        return 0;
    }

    DWORD getThreadByProcess(DWORD DwordProcess)
    {
        THREADENTRY32 ThreadEntry;
        ThreadEntry.dwSize = sizeof(THREADENTRY32);
        HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPTHREAD, 0);
        if (hSnapshot == INVALID_HANDLE_VALUE) return 0;

        if (!Thread32First(hSnapshot, &ThreadEntry)) { CloseHandle(hSnapshot); return 0; }

        do {
            if (ThreadEntry.th32OwnerProcessID == DwordProcess)
            {
                CloseHandle(hSnapshot);
                return ThreadEntry.th32ThreadID;
            }
        } while (Thread32Next(hSnapshot, &ThreadEntry));
        CloseHandle(hSnapshot);
        return 0;
    }

    DWORD GetModuleNamePointer(LPSTR LPSTRModuleName, DWORD DwordProcessId)
    {
        MODULEENTRY32 lpModuleEntry = { 0 };
        HANDLE hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, DwordProcessId);
        if (!hSnapShot)
            return NULL;
        lpModuleEntry.dwSize = sizeof(lpModuleEntry);
        BOOL RunModule = Module32First(hSnapShot, &lpModuleEntry);
        while (RunModule)
        {
            if (!strcmp(lpModuleEntry.szModule, LPSTRModuleName))
            {
                CloseHandle(hSnapShot);
                return (DWORD)lpModuleEntry.modBaseAddr;
            }
            RunModule = Module32Next(hSnapShot, &lpModuleEntry);
        }
        CloseHandle(hSnapShot);
        return NULL;
    }

    void runSetDebugPrivs()
    {
        HANDLE HandleProcess = GetCurrentProcess(), HandleToken;
        TOKEN_PRIVILEGES priv;
        LUID LUID;
        OpenProcessToken(HandleProcess, TOKEN_ADJUST_PRIVILEGES, &HandleToken);
        LookupPrivilegeValue(0, "seDebugPrivilege", &LUID);
        priv.PrivilegeCount = 1;
        priv.Privileges[0].Luid = LUID;
        priv.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
        AdjustTokenPrivileges(HandleToken, false, &priv, 0, 0, 0);
        CloseHandle(HandleToken);
        CloseHandle(HandleProcess);
        return;
    }

    void memoryType()
    {
        runSetDebugPrivs();
        while (!FindProcessName("csgo.exe", &gameProcess)) Sleep(12);
        while (!(getThreadByProcess(gameProcess.th32ProcessID))) Sleep(12);
        HandleProcess = OpenProcess(PROCESS_ALL_ACCESS, false, gameProcess.th32ProcessID);
        while (dwordClient == 0x0) dwordClient = GetModuleNamePointer((LPSTR)"client.dll", gameProcess.th32ProcessID);
        while (dwordEngine == 0x0) dwordEngine = GetModuleNamePointer((LPSTR)"engine.dll", gameProcess.th32ProcessID);
        while (dwordVGui == 0x0) dwordVGui = GetModuleNamePointer((LPSTR)"vguimatsurface.dll", gameProcess.th32ProcessID);
        while (dwordServer == 0x0)dwordServer = GetModuleNamePointer((LPSTR)"server.dll", gameProcess.th32ProcessID);
        HWNDCsgo = FindWindow(NULL, "Counter-Strike: Global Offensive");
        return;
    }
};

extern Hackprocess CSSource;
Вот ofs
Код:
bool b_True = true;
bool b_False = false;
DWORD dw_EntityList = 0x4D43AB4; //надо обновлять
DWORD dw_LocalPlayer = 0xD2FB84; //надо обновлять
DWORD dw_EnginePointer = 0x006062B4;
DWORD GlowObject = 0x528B880; //надо обновлять
const DWORD i_TeamNumber = 0x000000F0;
const DWORD dw_BoneMatrix = 0x00002698;
const DWORD b_LifeState = 0x0000025B;
const DWORD i_HP = 0x000000FC;
 
Последнее редактирование:
Сверху Снизу