Подведи собственные итоги года совместно с YOUGAME и забери ценные призы! Перейти

Сделайте bunnyhop

  • Автор темы Автор темы zeras4
  • Дата начала Дата начала
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
6 Июл 2017
Сообщения
105
Реакции
21
Всем привет, кто сможет сделать бхоп, который будет только читать память и не внедряться в игру?
 
Исследуй скрипты про баннихоп. Репач проде даже делал видос на эту тему. Скрипты вроде ничего не делают с игровыми файлами. Про память вроде нет. Кстати не думаю, что кто-то тебе это сделает за бесплатно
 
чекаешь позицию игрока не ебу че там за строчка и пишешь скрипт
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Простой скрипт на нажатие пробела раз в секунду - *
Пожалуйста, авторизуйтесь для просмотра ссылки.
*
 
external имеет он ввиду, есть куча примеров
 
Исследуй скрипты про баннихоп. Репач проде даже делал видос на эту тему. Скрипты вроде ничего не делают с игровыми файлами. Про память вроде нет. Кстати не думаю, что кто-то тебе это сделает за бесплатно

Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.

 
#define FL_ONGROUND ( 1 << 0 )

struct Player
{
DWORD Base()
{
return RM<DWORD>(Offsets::Client + Offsets::dwLocalnigga);
}

int Jump()
{
return RM<int>(Offsets::Client + Offsets::dwniggajump);
}

int Flags()
{
DWORD Base = this->Base();
return RM<int>(Base + Offsets::niggaFlags);
}

void SetJump(int v)
{
WM<int>(Offsets::Client + Offsets::niggajump, v);
}
};

struct Player* pPlayer;

DWORD WINAPI Loop(PVOID pThreadParameter)
{
for (;; Sleep(7)) {
if (pPlayer->Jump() == 5) {
while (GetAsyncKeyState(VK_SPACE)) {
if (pPlayer->Flags() & FL_ONGROUND)
pPlayer->SetJump(5);
else
pPlayer->SetJump(4);
}
}

if (!FindWindow(NULL, "Counter-Strike: Global Offensive"))
exit(0);


}
}

int main()
{
if (!FindWindow(NULL, "Counter-Strike: Global Offensive")) {
cout << "\n > Start csgo first\n";
system("pause");
exit(0);
}

while (!Offsets::Client) {
pMemory->FindProcess("csgo.exe");
Offsets::Client = pMemory->ModulePointer("client_panorama.dll");
}

Console();
HANDLE Threads[] = {
CreateThread(0, 0, &Loop, 0, 0, 0),
};
WaitForMultipleObjects(sizeof(Threads) / sizeof(HANDLE), Threads, TRUE, INFINITE);
return 0;
}

Сам оффсеты поменяешь, если хоть что-то понимаешь
 
#define FL_ONGROUND ( 1 << 0 )

struct Player
{
DWORD Base()
{
return RM<DWORD>(Offsets::Client + Offsets::dwLocalnigga);
}

int Jump()
{
return RM<int>(Offsets::Client + Offsets::dwniggajump);
}

int Flags()
{
DWORD Base = this->Base();
return RM<int>(Base + Offsets::niggaFlags);
}

void SetJump(int v)
{
WM<int>(Offsets::Client + Offsets::niggajump, v);
}
};

struct Player* pPlayer;

DWORD WINAPI Loop(PVOID pThreadParameter)
{
for (;; Sleep(7)) {
if (pPlayer->Jump() == 5) {
while (GetAsyncKeyState(VK_SPACE)) {
if (pPlayer->Flags() & FL_ONGROUND)
pPlayer->SetJump(5);
else
pPlayer->SetJump(4);
}
}

if (!FindWindow(NULL, "Counter-Strike: Global Offensive"))
exit(0);


}
}

int main()
{
if (!FindWindow(NULL, "Counter-Strike: Global Offensive")) {
cout << "\n > Start csgo first\n";
system("pause");
exit(0);
}

while (!Offsets::Client) {
pMemory->FindProcess("csgo.exe");
Offsets::Client = pMemory->ModulePointer("client_panorama.dll");
}

Console();
HANDLE Threads[] = {
CreateThread(0, 0, &Loop, 0, 0, 0),
};
WaitForMultipleObjects(sizeof(Threads) / sizeof(HANDLE), Threads, TRUE, INFINITE);
return 0;
}

Сам оффсеты поменяешь, если хоть что-то понимаешь
Ещё не тестил, но заранее спасибо
 
Ещё не тестил, но заранее спасибо
Конечно не код даю, но расскажу как работает.
Находишь в своем экстернале локалплеера, читаешь флаги, если в флагах есть FL_ONGROUND, то заставляешь игрока прыгнуть. Только не забудь проверить, нажат ли пробел.

Кстати, если собираешься юзать GetAsyncKeyState в цикле в каком либо потоке, то не забудь поставить Sleep. Иначе, твоя прога будет жрать очень много.
 
Назад
Сверху Снизу