3.2 KiB
3.2 KiB
PerfectKachalka
Установка
python -m venv venv
.venv\Scripts\python.exe -m pip install -r requirements.txt
cp .env.example .env
Запуск бота
.venv\Scripts\python.exe bot.py
- В консоли появится строка
Захват экрана: bettercam(илиmss, если bettercam не сработал - тогда эксклюзивный фуллскрин может не захватываться). - Переключитесь в игру.
- F6 - включить/выключить бота. При включении он один раз сканирует экран на наличие шкалы (повторяет попытку раз в секунду, если шкала пока не видна).
- Ctrl+C в консоли - полностью завершить программу.
Проверка детекции (опционально)
.venv\Scripts\python.exe debug_snapshot.py
- Скрипт ждёт 5 секунд - успейте переключиться в игру так, чтобы шкала мини-игры была видна на экране.
- После снимка он напечатает найденные координаты шкалы/зоны/курсора и
сохранит
debug_snapshot.pngс нарисованными рамками: синяя рамка - шкала, красная - узкая (целевая) зона, пурпурная линия - курсор. - Если что-то не нашлось, скрипт сохранит
debug_full.png(полный кадр без рамок) - по нему можно подправить пороги вconfig.py.
Если игра запущена с правами администратора
pydirectinput может не достучаться до окна игры из-за защиты Windows
(UIPI), если игра имеет более высокие привилегии, чем консоль. В этом случае
запускайте терминал/bot.py от имени администратора.
Подстройка таймингов
При каждом нажатии E в консоли печатается строка вида:
[Bot] E нажата | cursor_x=... predicted_x=... zone=(...,...) | задержка цикла=... мс
- Если E срабатывает позже, чем курсор визуально входит в узкую зону -
увеличьте
CURSOR_LEAD_TIMEвconfig.py, шаг ~0.02-0.03. - Если E срабатывает раньше входа в зону - уменьшите его.
- Если "задержка цикла" заметно больше ~16 мс - система не успевает за 60 FPS, это тоже добавляет задержку.
- Если в одном проходе курсора через зону E срабатывает несколько раз - потребуется сглаживание скорости курсора (сообщите, чтобы добавить).
Изменения в config.py применяются после перезапуска bot.py.