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

Забаненный
Статус
Оффлайн
Регистрация
9 Янв 2019
Сообщения
701
Реакции[?]
295
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
бля вот ты тему апнул и мне интересно стало, а движок(engineBase) - эт не клиентская часть чтоли? на сервере его код выполняется чтоли? или может у друга на компе? вообще всегда делилось все на client/server-side, про игровую часть слышу впервые внимание
как их еще назвать-то? обновил комменты тупа, а пидорас, что засунул топик в гугл переводчик пускай...................
 
Эксперт
Статус
Оффлайн
Регистрация
31 Авг 2018
Сообщения
1,791
Реакции[?]
1,073
Поинты[?]
29K
Начинающий
Статус
Оффлайн
Регистрация
25 Июн 2019
Сообщения
10
Реакции[?]
0
Поинты[?]
0
Скажи пожалуйста, какую библиотеку надо подключить для того что бы функция getModuleBaseAddress() определилась? Я гуглил, искал аналоги, сказали что есть еще getModuleHandle(). То ли это, нет?
 
Забаненный
Статус
Оффлайн
Регистрация
9 Янв 2019
Сообщения
701
Реакции[?]
295
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Скажи пожалуйста, какую библиотеку надо подключить для того что бы функция getModuleBaseAddress() определилась? Я гуглил, искал аналоги, сказали что есть еще getModuleHandle(). То ли это, нет?
см.пункт 7, вот код метода, он есть в туториале:
C++:
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));
}
 
Начинающий
Статус
Оффлайн
Регистрация
25 Июн 2019
Сообщения
10
Реакции[?]
0
Поинты[?]
0
см.пункт 7, вот код метода, он есть в туториале:
C++:
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));
}
Ой, спасибо. Я просто не копирую, стараюсь сам переписывать(набивать руку), некоторое изменять под себя. И забыл про то что это изменил.
 
gabarov
Пользователь
Статус
Оффлайн
Регистрация
26 Мар 2019
Сообщения
499
Реакции[?]
34
Поинты[?]
0
Привет, сегодня мы создадим наш первый External-чит для ксго. Создавать мы будем вх, так как вх - идеален, чтобы рассматривать его как основу. Я постараюсь расписать все максимально понятно и по шагам, чтобы вы поняли как что работает, а не просто спастили код и нму" я написал в самом коде.
как это всё скомпить в длл?
 
Пользователь
Статус
Оффлайн
Регистрация
19 Май 2017
Сообщения
172
Реакции[?]
47
Поинты[?]
0
вак детектит по-разному. например, часто читы отлетают из-за того, что инжектор спалили, также бывает палят читы, которые внедряются в игру. external-чит в этом имеет небольшое преимущество - он не внедряется в игру, а работает как бы отдельно.
полностью обойти вак (если ты имеешь в виду снизить шанс бана до 0%) - невозможно, но можно максимально снизить этот шанс.
как вариант, можно постоянно обновлять чит (добавлять джанки, изменять названия переменных).
орнул с джанков, они не работают, кодер ты наш))
 
PRIME ENABLED
Начинающий
Статус
Оффлайн
Регистрация
8 Фев 2019
Сообщения
59
Реакции[?]
12
Поинты[?]
0
1. Зашёл.
2. Прочитал.
3. Них*я не понял.
4. Вышел.
 
Забаненный
Статус
Оффлайн
Регистрация
9 Янв 2019
Сообщения
701
Реакции[?]
295
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Спасибо за код только как его запустить?( я новичок)
целью туториала не было дать готовый код, но раз уж не то пошло: скачай visual studio -> напиши код, измени под себя -> нажми сборка -> собрать проект
p.s. у меня визуалка на англ. + я точно не помню точных названий баров, так что будь готов искать )
 
/antiaimbot
Пользователь
Статус
Оффлайн
Регистрация
24 Июл 2019
Сообщения
167
Реакции[?]
34
Поинты[?]
2K
это пиздец заезжено, темболее EXTERNAL, это неактуально уже года как 2.. круто было бы, если бы ты сделал гайд по написанию internal софта, а вот это было бы интересно. но все равно +реп за старания
 
/antiaimbot
Пользователь
Статус
Оффлайн
Регистрация
24 Июл 2019
Сообщения
167
Реакции[?]
34
Поинты[?]
2K
целью туториала не было дать готовый код, но раз уж не то пошло: скачай visual studio -> напиши код, измени под себя -> нажми сборка -> собрать проект
p.s. у меня визуалка на англ. + я точно не помню точных названий баров, так что будь готов искать )
скомпиль в .ехе в visual studio, и усе
 
Забаненный
Статус
Оффлайн
Регистрация
23 Ноя 2019
Сообщения
42
Реакции[?]
13
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
const DWORD dwLocalPlayer = 0xCBD6A4; const DWORD dwEntityList = 0x4CCDCBC; const DWORD m_iTeamNum = 0xF4; const DWORD m_iGlowIndex = 0xA3F8; const DWORD dwGlowObjectManager = 0x520DAE0;
constexpr не не слышал
SetConsoleTitle("Top non-pasted shit 1337"); // устанавливаем заголовок нашей консоли
hwnd = FindWindowA(0, "Counter-Strike: Global Offensive"); // ищем ксго, если находим - выходим из цикла
кодинг стайл не совпадает
SetConsoleTitle дефайн
FindWindowA функция
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); }
нахера 1 миллион раз записывать в память если можно создать структуру и записать 1 раз?
изменять названия переменных
компилятор палит ток имена экспортируемых функций ему пох на название переменных
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
9 Дек 2019
Сообщения
5
Реакции[?]
0
Поинты[?]
0
Вот вам пример того как легко и чётоко всё сделано
Пожалуйста, авторизуйтесь для просмотра ссылки.
Там тоже нужно обновить оффсет в архиве есть дампер который это может сделать завас протически и найти все нужные оффсет .
 
Пользователь
Статус
Оффлайн
Регистрация
31 Дек 2018
Сообщения
481
Реакции[?]
140
Поинты[?]
3K
constexpr не не слышал
зачем?
кодинг стайл не совпадает
SetConsoleTitle дефайн
FindWindowA функция
SetConsoleTitle - макрос, который в зависимости от кодировки подставляет тебе функцию
FindWindow - аналогичный макрос как SetConsoleTitle
нахера 1 миллион раз записывать в память если можно создать структуру и записать 1 раз?
на чтение и запись целой структуры уходит больше времени, зачем читать и записывать не нужные нам переменные, если можно выделить только необходимые?
 
Сверху Снизу