Гайд CSGO, простой external баннихоп C++

Статус
В этой теме нельзя размещать новые ответы.
Пользователь
Пользователь
Статус
Оффлайн
Регистрация
24 Июл 2018
Сообщения
721
Реакции
78
P. S: Адаптированный перевод с guidedhacking.com

UPD:
Пожалуйста, авторизуйтесь для просмотра ссылки.

В этой теме мы научимся делать простой external баннихоп для ксго
Что нужно:
Базовое понимание геймхакинга(как работает память, как игра располагается в памяти)
Базовое понимание C++
IDE: Visual Studio (2017-2019)

1. Создаём проект
Создаём проект с шаблоном "Консольное приложение"
2.Переходим в свойства проекта(правой кнопкой мышки по проекту -> свойства), если у вас Visual Studio 2017 версии, то заходим в: "Свойства конфигурации -> Общие" находим пункт набор символов, у вас по умолчанию должно стоять значение: "Использовать набор символов Юникода", меняем его на: "Использовать многобайтовую кодировку", нажимаем Применить. Если у вас Visual Studio версии 2019 -> Переходим в "Свойства конфигурации -> Дополнительно"
3. Удаляем ненужное(по желанию):
Удаляем папки: Файлы заголовков, Файлы ресурсов
Оставляем папку: Исходные файлы
Т.К. наш проект маленький, нет смысла создавать отдельные папки для заголовочных файлов и т.д.
4. Подключаем файлы к проекту, содержащие класс для работы с памятью
Т. к. Мы хлебушки, класс мы будем использовать уже заранее сделанный, скачать вы его можете внизу, в прикреплённых файлах
Скачиваем, распаковываем архив в любую папку(для удобства - в папку с вашим созданным проектом), в папке будут два файла - MemMan.cpp, MemMan.h
Файл MemMan.cpp мы должны напрямую поместить в наш проект(просто перетащите его в окно справа, в папку "Исходные файлы"), переходим в главный файл нашего проекта(он имеет название, которые вы дали вашему проекту, например: если вы назвали проект: "BHOP", то главный файл будет называться: "BHOP.cpp")
5.
C++:
Expand Collapse Copy
#include <iostream>
#include <Windows.h>
#include <ВАШ ПУТЬ ДО ФАЙЛА MemMan.h>
Все эти библиотеки нужны нам для корректной работы с памятью игры
C++:
Expand Collapse Copy
MemMan memory;
C++:
Expand Collapse Copy
struct gameOffsets
{
    DWORD oLocalPlayer = 0xD2FB94;
    DWORD fJump = 0x51ED760;
    DWORD flags = 0x104;
}offsets;

struct values
{
    DWORD localPlayer;
    DWORD gameModule;
    DWORD process;
    BYTE flag;
}val;
Важно! С любым обновлением ксго тот или иной оффсет может поменяться, поэтому лучше всегда тщательно проверять правильность оффсетов, иначе ничего попросту не будет работать, т.к мы не правильно обращаемся к памяти
C++:
Expand Collapse Copy
int main()
{
    val.process = memory.getProcess("csgo.exe"); //Находим процесс с названием csgo.exe
    val.gameModule = memory.getModule(val.process, "client_panorama.dll"); //Находим модуль с названием client_panorama.dll
    if(val.localPlayer == NULL) //Делаем проверку c циклом на то, есть ли у нас localPlayer, когда мы находимся в меню -> у нас нет localPlayer'а, следовательно, если не сделать цикл, то localPlayer один раз не найдётся, и дальше не будет искаться, даже если мы зайдём на карту
        while(val.localPlayer == NULL)
            val.localPlayer = memory.readMem<DWORD>(val.gameModule + offsets.oLocalPlayer); //Пытаемся найти localPlayer

    while (true)
    {
        val.flag = memory.readMem<BYTE>(val.localPlayer + offsets.flags); //Находим флаги нашего локального игрока(Находиться на земле, в воздухе, в воде и т.д)
        if (GetAsyncKeyState(VK_SPACE) && val.flag & (1 << 0)) //Делаем проверку на клавишу и на флаг(если нажат спейс, и наш локал плеер по флагу находится на земле)
            memory.writeMem<DWORD>(val.gameModule + offsets.fJump, 6); //Заставляем локалплеера прыгать, если проверка в верху пройдена
        Sleep(1);
    }

    return 0;
}
Это всё, отпишите в теме, если я что-то сделал неправильно, или у вас есть какие-то проблемы
 

Вложения

Последнее редактирование:
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Зачем этот геморрой когда есть ахк
 
Зачем этот геморрой когда есть ахк
Ахк иногда работает криво
Это скорее для тех, кто хочет читы писать, просто основы геймхакинга, если тебе это не надо, то просто используй ahk
 
Зачем этот геморрой когда есть ахк
Здесь проверка на флаги, прыжок работает только при условии что человек на земле. А ахк в тупую спамит прыжок, что может способствовать потерям скорости.
 
Здесь проверка на флаги, прыжок работает только при условии что человек на земле. А ахк в тупую спамит прыжок, что может способствовать потерям скорости.
Он хотел сказать что проще прыгать через ахк чем делать экстернал бхоп. А то что с ахк есть потеря скорости это и так понятно.
 
Он хотел сказать что проще прыгать через ахк чем делать экстернал бхоп. А то что с ахк есть потеря скорости это и так понятно.
так получается, что ахк говно и с ним не проще
 
в геймхакинге я пока нихуя не шарю, но как этот бхоп работает, даже я понял. так что красава
 
жду пока тру кодер прийдет и по классике доебётся до кода :roflanEbalo: :roflanEbalo:
 
Мог бы объяснить как написать "MemMan" самостоятельно, а не просто copy + paste.
 
Это гайд по бхопу а не по мемори классу
Если хочешь, могу сделать
Можешь сделать для начинающих, правда написан он у тебя не очень, есть другие примеры чтения/записи памяти, которые содержат меньше кода.
 
Можешь сделать для начинающих, правда написан он у тебя не очень, есть другие примеры чтения/записи памяти, которые содержат меньше кода.
С каких пор кол-во кода влияет на то, очень написана программа или нет
Да и в этом ридере мало кода, не вижу здесь ничего странного, хз что тебе не понравилось
 
С каких пор кол-во кода влияет на то, очень написана программа или нет
Да и в этом ридере мало кода, не вижу здесь ничего странного, хз что тебе не понравилось
Думаю ты не так понял, имелось ввиду что есть примеры лучше твоего, а про количество - это просто +, потому что чем меньше кода, тем лучше.
 
Думаю ты не так понял, имелось ввиду что есть примеры лучше твоего, а про количество - это просто +, потому что чем меньше кода, тем лучше.
Тут дело не в том лучше или нет, просто этот код подходит для элементарных задач, потому что он простой
Зачем зря заморачиваться чтобы писать экстернал глоу/бхоп/триггер
Вот для более сложных задач нужны уже более продвинутые ридеры
 
Тут дело не в том лучше или нет, просто этот код подходит для элементарных задач, потому что он простой
Зачем зря заморачиваться чтобы писать экстернал глоу/бхоп/триггер
Вот для более сложных задач нужны уже более продвинутые ридеры
Возможно ты прав, но я заморачиваюсь над любым делом. :FeelsBadMan:
 
Было ли у вас такое, что когда ты отжимаешь пробел в воздухе и снова зажимаешь, то прыжок не происходит?
 
Было ли у вас такое, что когда ты отжимаешь пробел в воздухе и снова зажимаешь, то прыжок не происходит?
Да, потому что проверка на нажатие есть, только если чел на земле
Легитно как бы
 
1590147749304.png

так написал будто бы мы реально капаемся и ищем его
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху Снизу