AHK скрипт Готовый скрипт на морфа дота 2

Начинающий
Статус
Оффлайн
Регистрация
22 Май 2023
Сообщения
20
Реакции[?]
0
Поинты[?]
0
Всем привет!!!
я сделал скрипт на морфа в доте 2 он сам перекачивает хп если оно меньше 400 и останавливается если больше
минус этого скрипта в том что надо находить адрес хп с помощью сторонней программы( я использую cheat engine) и вставлять каждый раз когда заходишь на карту
сам код ↓ ↓ ↓

Код:
#Persistent
SetTimer, CheckValue, 100 ; Проверять значение каждые 100 мс
count := 0 ; Инициализируем счетчик нажатий f
return

CheckValue:
Process, Exist, dota2.exe ; Найти процесс dota2.exe
If ErrorLevel ; Если процесс найден
{
    hProc := DllCall("OpenProcess", "UInt", 0x10, "Int", 0, "UInt", ErrorLevel) ; Открыть процесс
    If hProc ; Если процесс открыт
    {
        VarSetCapacity(value, 4, 0) ; Создать переменную для хранения значения
        DllCall("ReadProcessMemory", "Ptr", hProc, "Ptr", 0x(адрес хп, он всегда разный), "Ptr", &value, "UInt", 4, "UInt *", 0) ; Прочитать значение из памяти процесса
        value := NumGet(value, 0, "UInt") ; Преобразовать значение в число
        if (count > 0) ; Если было уже нажатие f
        {
            count++ ; Увеличиваем счетчик времени после первого нажатия f
            if (count <= 50) ; Если прошло менее 5 секунд (50 * 100 мс = 5000 мс)
            {
                if (value > 400) ; Если значение стало больше 400
                {
                    Send, {f} ; Нажать f
                    count := 0 ; Сбрасываем счетчик
                }
            }
            else ; Если прошло 5 секунд
            {
                count := 0 ; Сбрасываем счетчик
            }
        }
        else ; Если еще не было нажатия f
        {
            if (value < 400) ; Если значение меньше 400
            {
                Send, {f} ; Нажать f
                count := 1 ; Устанавливаем счетчик в 1
            }
        }
    }
}
return

insert::  ;Скрипт поставиться на паузу если нажать на Insert
Pause
return

этот скрипт работает если меньше 400 хп, если вы хотите изменить это то просто везде где есть 400 вставьте то число на котором скрипт должен перекачиваться
 
Начинающий
Статус
Оффлайн
Регистрация
30 Май 2019
Сообщения
206
Реакции[?]
21
Поинты[?]
6K
можно скрипт на бриста пж а то кнопки всегда в пиве
 
vk.com/ahkcsgocheat
Пользователь
Статус
Оффлайн
Регистрация
21 Апр 2020
Сообщения
376
Реакции[?]
64
Поинты[?]
2K
Что за зло?
 
Последнее редактирование:
Модератор раздела «Читы для GTA: San Andreas»
Модератор
Статус
Оффлайн
Регистрация
21 Окт 2019
Сообщения
139
Реакции[?]
67
Поинты[?]
6K
Участник
Статус
Оффлайн
Регистрация
28 Май 2019
Сообщения
1,031
Реакции[?]
316
Поинты[?]
9K
Разве за СЕ вак нынче не прилетает?
Простенький скриптик для дотки, пусть учится молодой) По моему мнению не стоит сильно критиковать начинающего кодера.
Как по мне, ахк для чтения памяти не лучший выбор языка
Да и к поинтерам стремится бы изначально, думаю
Я сам не сильно шарю в вашей памяти, извините
 
Эксперт
Статус
Оффлайн
Регистрация
3 Апр 2020
Сообщения
1,148
Реакции[?]
597
Поинты[?]
4K
Всем привет!!!
я сделал скрипт на морфа в доте 2 он сам перекачивает хп если оно меньше 400 и останавливается если больше
минус этого скрипта в том что надо находить адрес хп с помощью сторонней программы( я использую cheat engine) и вставлять каждый раз когда заходишь на карту
сам код ↓ ↓ ↓

Код:
#Persistent
SetTimer, CheckValue, 100 ; Проверять значение каждые 100 мс
count := 0 ; Инициализируем счетчик нажатий f
return

CheckValue:
Process, Exist, dota2.exe ; Найти процесс dota2.exe
If ErrorLevel ; Если процесс найден
{
    hProc := DllCall("OpenProcess", "UInt", 0x10, "Int", 0, "UInt", ErrorLevel) ; Открыть процесс
    If hProc ; Если процесс открыт
    {
        VarSetCapacity(value, 4, 0) ; Создать переменную для хранения значения
        DllCall("ReadProcessMemory", "Ptr", hProc, "Ptr", 0x(адрес хп, он всегда разный), "Ptr", &value, "UInt", 4, "UInt *", 0) ; Прочитать значение из памяти процесса
        value := NumGet(value, 0, "UInt") ; Преобразовать значение в число
        if (count > 0) ; Если было уже нажатие f
        {
            count++ ; Увеличиваем счетчик времени после первого нажатия f
            if (count <= 50) ; Если прошло менее 5 секунд (50 * 100 мс = 5000 мс)
            {
                if (value > 400) ; Если значение стало больше 400
                {
                    Send, {f} ; Нажать f
                    count := 0 ; Сбрасываем счетчик
                }
            }
            else ; Если прошло 5 секунд
            {
                count := 0 ; Сбрасываем счетчик
            }
        }
        else ; Если еще не было нажатия f
        {
            if (value < 400) ; Если значение меньше 400
            {
                Send, {f} ; Нажать f
                count := 1 ; Устанавливаем счетчик в 1
            }
        }
    }
}
return

insert::  ;Скрипт поставиться на паузу если нажать на Insert
Pause
return

этот скрипт работает если меньше 400 хп, если вы хотите изменить это то просто везде где есть 400 вставьте то число на котором скрипт должен перекачиваться
потом ловим пизды за открытый хендл от вака
 
vk.com/ahkcsgocheat
Пользователь
Статус
Оффлайн
Регистрация
21 Апр 2020
Сообщения
376
Реакции[?]
64
Поинты[?]
2K
зачем читать, открывать и находить процесс каждые 100 мс?
 
Начинающий
Статус
Оффлайн
Регистрация
26 Авг 2023
Сообщения
184
Реакции[?]
9
Поинты[?]
7K
Всем привет!!!
я сделал скрипт на морфа в доте 2 он сам перекачивает хп если оно меньше 400 и останавливается если больше
минус этого скрипта в том что надо находить адрес хп с помощью сторонней программы( я использую cheat engine) и вставлять каждый раз когда заходишь на карту
сам код ↓ ↓ ↓

Код:
#Persistent
SetTimer, CheckValue, 100 ; Проверять значение каждые 100 мс
count := 0 ; Инициализируем счетчик нажатий f
return

CheckValue:
Process, Exist, dota2.exe ; Найти процесс dota2.exe
If ErrorLevel ; Если процесс найден
{
    hProc := DllCall("OpenProcess", "UInt", 0x10, "Int", 0, "UInt", ErrorLevel) ; Открыть процесс
    If hProc ; Если процесс открыт
    {
        VarSetCapacity(value, 4, 0) ; Создать переменную для хранения значения
        DllCall("ReadProcessMemory", "Ptr", hProc, "Ptr", 0x(адрес хп, он всегда разный), "Ptr", &value, "UInt", 4, "UInt *", 0) ; Прочитать значение из памяти процесса
        value := NumGet(value, 0, "UInt") ; Преобразовать значение в число
        if (count > 0) ; Если было уже нажатие f
        {
            count++ ; Увеличиваем счетчик времени после первого нажатия f
            if (count <= 50) ; Если прошло менее 5 секунд (50 * 100 мс = 5000 мс)
            {
                if (value > 400) ; Если значение стало больше 400
                {
                    Send, {f} ; Нажать f
                    count := 0 ; Сбрасываем счетчик
                }
            }
            else ; Если прошло 5 секунд
            {
                count := 0 ; Сбрасываем счетчик
            }
        }
        else ; Если еще не было нажатия f
        {
            if (value < 400) ; Если значение меньше 400
            {
                Send, {f} ; Нажать f
                count := 1 ; Устанавливаем счетчик в 1
            }
        }
    }
}
return

insert::  ;Скрипт поставиться на паузу если нажать на Insert
Pause
return

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