Начинающий
-
Автор темы
- #1
Сделал вот из гайдов шок байта пасту, но она чет много фпс жрёт, да и сам код не оч выглядит
Посоветуйте че исправить можно, чтоб комфортно по легиту поиграть
Только без оскорблений пж, я ток начал этим всем заниматься, плохо разбираюсь
Посоветуйте че исправить можно, чтоб комфортно по легиту поиграть
Только без оскорблений пж, я ток начал этим всем заниматься, плохо разбираюсь
C++:
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include "Memory.h"
#include <cstdint>
using namespace std;
DWORD dwLocalPlayer = 0xCCA6A4;
DWORD dwEntityList = 0x4CDB00C;
DWORD m_iGlowIndex = 0xA3F8;
DWORD m_bSpotted = 0x93D;
DWORD m_iHealth = 0x100;
DWORD m_iTeamNum = 0xF4;
DWORD dwGlowObject = 0x521AF50;
DWORD m_iCrosshairId = 0xB394;
memory mem;
PModule bClient;
typedef struct GlowObjectDefinition_t
{
float r;
float g;
float b;
float a;
uint8_t unk1[16];
bool m_bRenderWhenOccluded;
bool m_bRenderWhenUnoccluded;
bool m_bFullBloom;
int GlowStyle;
uint8_t unk2[10];
} GlowObjectDefinition_t;
int main()
{
while (!mem.Attach("csgo.exe", PROCESS_ALL_ACCESS)) {}
bClient = mem.GetModule("client_panorama.dll");
cout << "Started..." << endl;
while (1)
{
DWORD playerBase = mem.Read<DWORD>(bClient.dwBase + dwLocalPlayer);
int playerHp = mem.Read<int>(playerBase + m_iHealth);
if (!playerHp)
continue;
int playerTeam = mem.Read<DWORD>(playerBase + m_iTeamNum);
int glowArray = mem.Read<int>(bClient.dwBase + dwGlowObject);
int glowCount = mem.Read<int>(bClient.dwBase + dwGlowObject + 0x4);
/*GLOW*/
for (int j = 0; j < glowCount; j++)
{
DWORD gEntity = mem.Read<DWORD>(glowArray + 0x38 * j);
if (!gEntity)
continue;
int entHp = mem.Read<int>(gEntity + m_iHealth);
if (!entHp)
continue;
int enTeam = mem.Read<int>(gEntity + m_iTeamNum);
if (enTeam == playerTeam)
continue;
static GlowObjectDefinition_t Glow = mem.Read<GlowObjectDefinition_t>(glowArray + (j * 0x38) + 0x4);
if (enTeam == 3)
{
Glow.r = 0.447058827f;
Glow.g = 0.607843161f;
Glow.b = 0.8666667f;
Glow.a = 0.5f;
Glow.m_bRenderWhenOccluded = true;
Glow.m_bRenderWhenUnoccluded = false;
}
if (enTeam == 2)
{
Glow.r = 0.8784314f;
Glow.g = 0.6862745f;
Glow.b = 0.3372549f;
Glow.a = 0.5f;
Glow.m_bRenderWhenOccluded = true;
Glow.m_bRenderWhenUnoccluded = false;
}
mem.Write<GlowObjectDefinition_t>(glowArray + (j * 0x38) + 0x4, Glow);
/*TRIGGER*/
DWORD lCrosshairId = mem.Read<DWORD>(playerBase + m_iCrosshairId);
if (!lCrosshairId || lCrosshairId > 64)
continue;
DWORD entityBase = mem.Read<int>(bClient.dwBase + dwEntityList + (lCrosshairId - 1) * 0x10);
if (!entityBase)
continue;
DWORD entityHp = mem.Read<DWORD>(entityBase + m_iHealth);
DWORD entityTeam = mem.Read<DWORD>(entityBase + m_iTeamNum);
if (!entityHp || entityTeam == playerTeam)
continue;
/*shoot*/
Sleep(5);
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
Sleep(15);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
}
/*RADAR*/
for (DWORD i = 0; i < 64; i++)
{
DWORD pEnt = mem.Read<DWORD>(bClient.dwBase + dwEntityList + (i - 1) * 0x10);
DWORD entHp = mem.Read<DWORD>(pEnt + m_iHealth);
if (!entHp)
continue;
BOOL entSpotted = mem.Read<BOOL>(pEnt + m_bSpotted);
if (entSpotted)
continue;
mem.Write(pEnt + m_bSpotted, TRUE);
}
}
return 0;
}
Вложения
-
2.6 MB Просмотры: 61