AutoHotKey RadarHack

Работает на любой ОС, запускать в ansi32


#NoEnv
Process = csgo.exe
DLLName = client.dll
dwLocalPlayer = 0xDBF4BC
dwEntityList = 0x4DDB8FC
dw_bSpotted = 0x93D
dw_iTeamNum = 0xF4
dw_bDormant = 0xED
Num = 0
Process, Exist, %Process%
ProcessID = %ErrorLevel%
if (!ProcessID)
{
    MsgBox, [!] CS:GO is not running!
    ExitApp
}
ProcessHandle := GetProcessHandle("Counter-Strike: Global Offensive")
if (!ProcessHandle)
{
    MsgBox, [!] Failed to get handle!
    ExitApp
}
Client := GetDllBase(DLLName, ProcessID)
if (!Client)
{
    MsgBox, [!] Failed to get %DLLName% from %Process%!
    ExitApp
}
LocalPlayer := ReadMemory(Client + dwLocalPlayer, ProcessHandle)
LocalTeam := ReadMemory(LocalPlayer + dw_iTeam, ProcessHandle)
Loop
{
    if (Num <= 64)
    Num++
    else
    Num = 1
    BaseEntity := ReadMemory(Client + dwEntityList + ((Num - 1) * 0x10), ProcessHandle)
    if (BaseEntity)
    {
        EntityTeam := ReadMemory(BaseEntity + dw_iTeamNum, ProcessHandle)
        EntityDormant := ReadMemory(BaseEntity + dw_bDormant, ProcessHandle)
        if (EntityTeam != LocalTeam and !EntityDormant)
        WriteMemory(BaseEntity + dw_bSpotted, 1, ProcessHandle)
    }
    Sleep, 10
}
ExitApp
GetProcessHandle(name)
{
    winget, pid, PID, %name%
    h := DllCall("OpenProcess", "int", 2035711, "char", 0, "UInt", pid, "UInt")
    return, h
}
WriteMemory(address, newval, processhandle)
{
    return DllCall("WriteProcessMemory", "UInt", processhandle, "UInt", address, "UInt*", newval, "UInt", 4, "UInt *", 0)
}
ReadMemory(address, processhandle)
{
    VarSetCapacity(addr,4,0)
    DllCall("ReadProcessMemory", "UInt", processhandle, "UInt", address, "Str", addr, "UInt", 4, "UInt *", 0)
    Loop 4
    result += *(&addr + A_Index-1) << 8*(A_Index-1)
    return, result
}
GetDllBase(DllName, PID = 0)
{
    TH32CS_SNAPMODULE := 0x00000008
    INVALID_HANDLE_VALUE = -1
    VarSetCapacity(me32, 548, 0)
    NumPut(548, me32)
    snapMod := DllCall("CreateToolhelp32Snapshot", "Uint", TH32CS_SNAPMODULE
    , "Uint", PID)
    If (snapMod = INVALID_HANDLE_VALUE) {
        Return 0
    }
    If (DllCall("Module32First", "Uint", snapMod, "Uint", &me32)){
        while(DllCall("Module32Next", "Uint", snapMod, "UInt", &me32)) {
            If !DllCall("lstrcmpi", "Str", DllName, "UInt", &me32 + 32) {
                DllCall("CloseHandle", "UInt", snapMod)
                Return NumGet(&me32 + 20)
            }
        }
    }
    DllCall("CloseHandle", "Uint", snapMod)
    Return 0
}


3 Likes

AutoHotKey

пишет failed to get client.dll from cs.go что это?

Запускаете не в ansi32

Обновил, актуальная версия в теме

обнова
поменялась
dwEntityList = 0x4DCDE7C

Зачем? Есть уже AHK, это более безопасно. Да и почему тебе должны доверять? Вдруг там Майнер?

это и есть АХК, человек код выложил

Файл для тех, кто не может сам скомпилировать

Есть известия ,когда обновят obwh ? обнова вышла, не работает(

Не знаю, обращайтесь к автору obwh

а есть скрипт на вх у тебя?

Это ты ахк не правильно установил, там 32 битную версию устанавливать нужно)

Если тебе обычный OBWH (Не AHK) нужен, то перейди сюда -
Я там все расписал как сделать, но немного сложно. Перейти (не реклама, я сам писал этот пост).

Я как ты указал сделал, только проблема что в консоль ввожу,пишет, что системе не удается найти указанный путь,почему так?

ну во первых потому что надо разорхивировать папку , а во вторых нужно указывать с cd путь.

радар работает?

Да, работает

Так в том и дело, что я разорхивировал, пример покажешь?

А это тоже самое что и one byte radar?

Тем более, там наглядный пример показывает, как делать, я точно также сделал, путь найти не может