Гайд Создаем свой первый CSGO чит

press f to suck dick
Начинающий
Статус
Оффлайн
Регистрация
12 Янв 2019
Сообщения
146
Реакции[?]
24
Поинты[?]
0
1548784311864.png
кину лайк тому, кто поможет

использовал код
Полный код:
Убрал поток, лишние куски кода которые не использовались
Добавил VK_DELETE = return;
C++:
#include <iostream>
#include <Windows.h>
#include <TlHelp32.h>

const DWORD    dwLocalPlayer = 0xCBD6A4;
const DWORD dwEntityList = 0x4CCDCBC;
const DWORD m_iTeamNum = 0xF4;
const DWORD m_iGlowIndex = 0xA3F8;
const DWORD dwGlowObjectManager = 0x520DAE0;

HANDLE        process = NULL; // непосредственно сам процесс CSGO
DWORD        clientBase = NULL; // клиентская часть

DWORD getModuleBaseAddress(DWORD pid, const char* name)
{
    HANDLE snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pid);
    MODULEENTRY32 mEntry;
    mEntry.dwSize = sizeof(MODULEENTRY32);
    do
    {
        if (!strcmp(mEntry.szModule, name))
        {
            CloseHandle(snapshot);
            return (DWORD)mEntry.modBaseAddr;
        }
    } while (Module32Next(snapshot, &mEntry));
}
template <typename T>
T readMem(DWORD address)
{
    T buffer;
    ReadProcessMemory(process, (LPVOID)address, &buffer, sizeof(buffer), 0);
    return buffer;
}

template <typename T>
void writeMem(DWORD address, T value)
{
    WriteProcessMemory(process, (LPVOID)address, &value, sizeof(value), 0);
}
void main()
{
    SetConsoleTitle("Top non-pasted shit 1337"); // устанавливаем заголовок нашей консоли


    bool wallhack = false;
    std::cout << "Open CS:GO\n"; // выводим в консоль сообщение о том, что надо открыть ксго

    HWND hwnd;

    do {
        hwnd = FindWindowA(0, "Counter-Strike: Global Offensive"); // ищем ксго, если находим - выходим из цикла
        Sleep(50); // таймаут (чтобы не грузить процессор)
    } while (!hwnd);

    DWORD pid;
    GetWindowThreadProcessId(hwnd, &pid); // получаем id приложения
    process = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pid); // заходим в кс го его id

    std::cout << "Csgo started, pid " << pid << ".\n"; // выводим сообщение о том, что ксго запущена

    do {
        clientBase = getModuleBaseAddress(pid, "client_panorama.dll"); // ищем клиент кс го
        Sleep(50);
    } while (!clientBase);

    while (true)
    {
        Sleep(10); // таймаут, чтобы сбросить нагрузку
        if (GetAsyncKeyState(VK_F9)) // если нажали f9
        {
            wallhack = !wallhack; // заменяем значение переменной на противоположное
            system("cls");
            std::cout << "wh\t=\t" << wallhack;
        }
        if (GetAsyncKeyState(VK_DELETE))
        {
            system("cls");
            break;
        }
        if (!wallhack && !readMem<DWORD>(readMem<DWORD>(clientBase + dwLocalPlayer) + 0xED)) // если вх выключено или не удается прочитать память - выходим из цикла
            continue;
        DWORD glowObj = readMem<DWORD>(clientBase + dwGlowObjectManager); // создаем объект glowObj из модельки игрока
        DWORD myTeam = readMem<DWORD>(readMem<DWORD>(clientBase + dwLocalPlayer) + m_iTeamNum); // создаем объект тиммейтов
        for (int x = 0; x < 32; x++) // сам вх
        {
            DWORD player = readMem<DWORD>(clientBase + dwEntityList + x * 0x10); // обычный игрок
            if (player == 0)
                continue;
            bool dormant = readMem<bool>(player + 0xED); // спектатор
            if (dormant)
                continue;
            DWORD team = readMem<DWORD>(player + m_iTeamNum); // тиммейт
            if (team != 2 && team != 3)
                continue;

            DWORD currentGlowIndex = readMem<DWORD>(player + m_iGlowIndex); // текущий индекс игрока

            if (team != myTeam) // если игрок не тиммейт
            {
                // делаем его обводку красным
                writeMem<float>(glowObj + currentGlowIndex * 0x38 + 0x4, 255); // red
                writeMem<float>(glowObj + currentGlowIndex * 0x38 + 0x8, 0); // green
                writeMem<float>(glowObj + currentGlowIndex * 0x38 + 0xC, 0); // blue
                writeMem<float>(glowObj + currentGlowIndex * 0x38 + 0x10, 255);
                writeMem<bool>(glowObj + currentGlowIndex * 0x38 + 0x24, true);
                writeMem<bool>(glowObj + currentGlowIndex * 0x38 + 0x25, false);
            }
            else // если игрок тиммейт
            {
                // делаем его обводку синим
                writeMem<float>(glowObj + currentGlowIndex * 0x38 + 0x4, 0); // red
                writeMem<float>(glowObj + currentGlowIndex * 0x38 + 0x8, 0); // green
                writeMem<float>(glowObj + currentGlowIndex * 0x38 + 0xC, 255); // blue
                writeMem<float>(glowObj + currentGlowIndex * 0x38 + 0x10, 255);
                writeMem<bool>(glowObj + currentGlowIndex * 0x38 + 0x24, true);
                writeMem<bool>(glowObj + currentGlowIndex * 0x38 + 0x25, false);
            }
        }
    }
    return;
}
этого чувака
пытался и другой, но всё равно не робут
 
Эксперт
Статус
Оффлайн
Регистрация
31 Авг 2018
Сообщения
1,791
Реакции[?]
1,073
Поинты[?]
29K
Посмотреть вложение 8258
кину лайк тому, кто поможет

использовал код

этого чувака
пытался и другой, но всё равно не робут
Глянь в моей теме, там со всем помогу и все расскажу

А, у тебя предуомпилированный заголовок включен просто в самый верх файла добавь #include "pch.h"
 
press f to suck dick
Начинающий
Статус
Оффлайн
Регистрация
12 Янв 2019
Сообщения
146
Реакции[?]
24
Поинты[?]
0
Глянь в моей теме, там со всем помогу и все расскажу

А, у тебя предуомпилированный заголовок включен просто в самый верх файла добавь #include "pch.h"
я уже пытался
 

Вложения

Эксперт
Статус
Оффлайн
Регистрация
31 Авг 2018
Сообщения
1,791
Реакции[?]
1,073
Поинты[?]
29K
Ладно, убери подключение этого файла и делай как скажу: Пкм по проекту справа в списке - свойства - Создание кода - Предкомпилированный заголовок и там дальше аыключаешь его просто, надеюсь понял
 
press f to suck dick
Начинающий
Статус
Оффлайн
Регистрация
12 Янв 2019
Сообщения
146
Реакции[?]
24
Поинты[?]
0
Ладно, убери подключение этого файла и делай как скажу: Пкм по проекту справа в списке - свойства - Создание кода - Предкомпилированный заголовок и там дальше аыключаешь его просто, надеюсь понял
1548785906307.png
мб я слепой, но я не вижу сдесь создание кода
 
press f to suck dick
Начинающий
Статус
Оффлайн
Регистрация
12 Янв 2019
Сообщения
146
Реакции[?]
24
Поинты[?]
0
объясни мне пожалуйста, где сама вкладка создание кода (я либо не туда зашёл , либо не туда гляжу)
 

Вложения

Эксперт
Статус
Оффлайн
Регистрация
31 Авг 2018
Сообщения
1,791
Реакции[?]
1,073
Поинты[?]
29K
Эксперт
Статус
Оффлайн
Регистрация
31 Авг 2018
Сообщения
1,791
Реакции[?]
1,073
Поинты[?]
29K
press f to suck dick
Начинающий
Статус
Оффлайн
Регистрация
12 Янв 2019
Сообщения
146
Реакции[?]
24
Поинты[?]
0
Тебе нужно отключить предкомпилированный заголовок ибо ты все равно им не пользуешься, могу завтра в дсе объяснить все
ок, но микро у меня не робит
 
press f to suck dick
Начинающий
Статус
Оффлайн
Регистрация
12 Янв 2019
Сообщения
146
Реакции[?]
24
Поинты[?]
0
РЕБЯТА, я понял, не допускайте моих ошибок! При создании нового проекта, что бы отключить всю фигню, нужно нажать "Пустой проект" , а не консольное приложение. Кстати, лайки убирать не буду, т.к. он сказал истину - НУЖНО отключить предкомпилированный заголовок
 
Эксперт
Статус
Оффлайн
Регистрация
12 Июн 2014
Сообщения
999
Реакции[?]
1,209
Поинты[?]
3K
Код:
static bool  wallhack = false;
for(;;Sleep(10))
{
    printf_s("\rWallHack = %d",wallhack);
    
    if (GetAsyncKeyState(VK_F9)) // если нажали f9
        wallhack = !wallhack;
            
    if (GetAsyncKeyState(VK_DELETE))         
         break; 
 
 
    if (!wallhack && !readMem<DWORD>(readMem<DWORD>(clientBase + dwLocalPlayer) + 0xED)) // если вх выключено или не удается прочитать память - выходим(НЕ ВЫХОДИМ, а сбрасываем на следующию итерацию) из цикла
            continue;
 
  //todo
  }
Если в кс списки статичны(а оно скорее всего так и есть), + можно получить размер списка игроков(количество игроков), то можно всю эту дребедень ускорить раза в два))
Есть ли в КС возможность подключения к идущему бою?
 
Эксперт
Статус
Оффлайн
Регистрация
31 Авг 2018
Сообщения
1,791
Реакции[?]
1,073
Поинты[?]
29K
Код:
static bool  wallhack = false;
for(;;Sleep(10))
{
    printf_s("\rWallHack = %d",wallhack);
    
    if (GetAsyncKeyState(VK_F9)) // если нажали f9
        wallhack = !wallhack;
            
    if (GetAsyncKeyState(VK_DELETE))         
         break; 
 
 
    if (!wallhack && !readMem<DWORD>(readMem<DWORD>(clientBase + dwLocalPlayer) + 0xED)) // если вх выключено или не удается прочитать память - выходим(НЕ ВЫХОДИМ, а сбрасываем на следующию итерацию) из цикла
            continue;
 
  //todo
  }
Если в кс списки статичны(а оно скорее всего так и есть), + можно получить размер списка игроков(количество игроков), то можно всю эту дребедень ускорить раза в два))
Есть ли в КС возможность подключения к идущему бою?
Есть, но не в мм, туда никак не подключиться, а можно величайший крайслер прокомментирует мою тему? Тоже связано с glowesp но чуть иначе все
 
error
Начинающий
Статус
Оффлайн
Регистрация
28 Июн 2017
Сообщения
97
Реакции[?]
25
Поинты[?]
0
И создадим в нашем главном методе бесконечный цикл.

Код:
while(true)
{

    if (GetAsyncKeyState(VK_F9)) // если нажали f9
    {
 
        wh = !wh; // заменяем значение переменной на противоположное
        if (wh)
            std::cout("wh: on\n"); // если wallhack - true, то пишем, что вх включен
        else
            std::cout("wh: off\n"); // иначе пишем, что вх выключен
         
        Sleep(100); // таймаут, чтобы сбросить нагрузку
 
    }

}
Опечатолся тут... :
внутри тела if-а
Sleep(100); // таймаут, чтобы сбросить нагрузку нужно было

как нужно
C++:
while(true)
{
    if (GetAsyncKeyState(VK_F9))
    {
        wh = !wh;
        if (wh)
            std::cout("wh: on\n");
        else
            std::cout("wh: off\n");
        Sleep(200); // Дабы не прощитывало несколько раз за нажатие
    }
    Sleep(10);//Уменьшили нагрузку...
}
 
Забаненный
Статус
Оффлайн
Регистрация
3 Янв 2019
Сообщения
16
Реакции[?]
0
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
гайд 5/10
много ненужных вещей рассказал в код залил примерно столько же
твой экстернал тапается ваком меньше чем за неделю, даже тестить не буду
код будто писал школьник из саратова, ну
 
error
Начинающий
Статус
Оффлайн
Регистрация
28 Июн 2017
Сообщения
97
Реакции[?]
25
Поинты[?]
0
гайд 5/10
много ненужных вещей рассказал в код залил примерно столько же
твой экстернал тапается ваком меньше чем за неделю, даже тестить не буду
код будто писал школьник из саратова, ну
Ни чё ты умный(нет)

Там действительно есть пара лишних строчек кода. Но гайд для ознакомления. Автор показывает только свою версию реализации. А ты поняв его код(в рятли у тебя это получится...), уже сам пишешь в такой монере как привык.

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

про школьника верно подметил - действительно в теме в комментариях есть какой-то школьник, и мы оба знает кто это:CoolStoryBob:
 
Сверху Снизу