-
Автор темы
- #1
Чит работает, но не корректно, должны подсвечиваться игроки, но подсвечиваются почему то определённые части карты, по типу вентиляторов на мираже и всякого мусора, мне нужна помощь чтобы исправить это.
И ещё, кто может, помогите с оптимизацией кода пожалуйста, а то поиграю пару раундов и кс просто вылетает, или бывает что при инжекте кс просто вылетает,
#include <Windows.h>
#include <iostream>
#include "offsets.h"
#include "dllmain.h"
#include <cstdio>
DWORD WINAPI MainThread(HMODULE hModule)
{
DWORD moduleBase = (DWORD)GetModuleHandle("client.dll");
while (!GetAsyncKeyState(VK_END))
{
DWORD LocalPlayer = *(DWORD*)(moduleBase + hazedumper::signatures::dwLocalPlayer);
DWORD GlowObjectManager = *(DWORD*)(moduleBase + hazedumper::signatures::dwGlowObjectManager);
DWORD EntityList = *(DWORD*)(moduleBase + hazedumper::signatures::dwEntityList);
int localTeam = *(int*)(LocalPlayer + hazedumper::netvars::m_iTeamNum);
for (int i = 1; i < 32; i++)
{
DWORD entity = *(DWORD*)(moduleBase + hazedumper::signatures::dwEntityList) + i * 0x10;
if (entity == NULL) continue;
int glowIndex = *(int*)(entity + hazedumper::netvars::m_iGlowIndex);
int entityTeam = *(int*)(entity + hazedumper::netvars::m_iTeamNum);
if (entityTeam == localTeam)
{
//Local Team
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x4)) = 0.f; //R
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x8)) = 1.f; //G
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0xC)) = 0.f; //B
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x10)) = 1.7f; //A
}
else
{
//EnemyTeam
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x4)) = 0.f; //R
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x8)) = 1.f; //G
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0xC)) = 0.f; //B
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x10)) = 1.7f; //A
*(bool*)((GlowObjectManager + glowIndex * 0x38 + 0x24)) = true;
*(bool*)((GlowObjectManager + glowIndex * 0x38 + 0x25)) = false;
}
}
}
FreeLibraryAndExitThread(hModule, 0);
return 0;
}
#pragma once
BOOL APIENTRY DllMain(HMODULE hmodule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
CloseHandle(CreateThread(nullptr, 0, (LPTHREAD_START_ROUTINE)MainThread, hmodule, 0, nullptr));
case DLL_THREAD_ATTACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
вот скрин того, как работает glow -
И ещё, кто может, помогите с оптимизацией кода пожалуйста, а то поиграю пару раундов и кс просто вылетает, или бывает что при инжекте кс просто вылетает,
Пожалуйста, авторизуйтесь для просмотра ссылки.
, заранее спасибо.
Пожалуйста, авторизуйтесь для просмотра ссылки.
- код#include <Windows.h>
#include <iostream>
#include "offsets.h"
#include "dllmain.h"
#include <cstdio>
DWORD WINAPI MainThread(HMODULE hModule)
{
DWORD moduleBase = (DWORD)GetModuleHandle("client.dll");
while (!GetAsyncKeyState(VK_END))
{
DWORD LocalPlayer = *(DWORD*)(moduleBase + hazedumper::signatures::dwLocalPlayer);
DWORD GlowObjectManager = *(DWORD*)(moduleBase + hazedumper::signatures::dwGlowObjectManager);
DWORD EntityList = *(DWORD*)(moduleBase + hazedumper::signatures::dwEntityList);
int localTeam = *(int*)(LocalPlayer + hazedumper::netvars::m_iTeamNum);
for (int i = 1; i < 32; i++)
{
DWORD entity = *(DWORD*)(moduleBase + hazedumper::signatures::dwEntityList) + i * 0x10;
if (entity == NULL) continue;
int glowIndex = *(int*)(entity + hazedumper::netvars::m_iGlowIndex);
int entityTeam = *(int*)(entity + hazedumper::netvars::m_iTeamNum);
if (entityTeam == localTeam)
{
//Local Team
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x4)) = 0.f; //R
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x8)) = 1.f; //G
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0xC)) = 0.f; //B
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x10)) = 1.7f; //A
}
else
{
//EnemyTeam
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x4)) = 0.f; //R
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x8)) = 1.f; //G
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0xC)) = 0.f; //B
*(float*)((GlowObjectManager + glowIndex * 0x38 + 0x10)) = 1.7f; //A
*(bool*)((GlowObjectManager + glowIndex * 0x38 + 0x24)) = true;
*(bool*)((GlowObjectManager + glowIndex * 0x38 + 0x25)) = false;
}
}
}
FreeLibraryAndExitThread(hModule, 0);
return 0;
}
#pragma once
BOOL APIENTRY DllMain(HMODULE hmodule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
CloseHandle(CreateThread(nullptr, 0, (LPTHREAD_START_ROUTINE)MainThread, hmodule, 0, nullptr));
case DLL_THREAD_ATTACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
вот скрин того, как работает glow -
Пожалуйста, авторизуйтесь для просмотра ссылки.
Последнее редактирование: