⚠️ DISCLAIMERЭтот проект создан исключительно в образовательных целях для демонстрации возможностей гибридных нейросетевых архитектур (Vision + Audio). Использование средств автоматизации в онлайн-играх может нарушать правила платформы. Автор не несет ответственности за использование данного кода.
Это автономный агент для рыбалки, который воспринимает игровой мир "человеческим" способом — через анализ видеопотока экрана и системного звука. Бот не читает память процесса игры.
Архитектура:
- Vision: Модель YOLOv8n анализирует экран в реальном времени для нахождения координат поплавка.
- Audio: Модель TensorFlow/Keras анализирует аудиопоток (через Loopback) для классификации звука всплеска, игнорируя фоновый шум и музыку.
В проекте содержится несколько модулей для полного цикла разработки: от генерации данных до инференса.
fishing_bot.py— Главный исполняемый файл. Содержит логику бота: инициализация моделей, захват экрана (mss), захват звука (soundcard), машина состояний (заброс -> поиск -> ожидание -> сбор) и авто-калибровка звука.
train.py— Скрипт для обучения визуальной модели (YOLOv8). Использует размеченные данные для создания весов детектора (.pt).train_audio_model.py— Скрипт для обучения аудио-модели. Преобразует .wav файлы в MFCC-спектрограммы и обучает нейросеть классификации (Splash vs Noise).generate_dataset.py— Генератор синтетических аудио-данных. Использует агрессивную аугментацию (изменение тона, скорости, наложение шума) для создания большого датасета из малого количества сэмплов.prepare_dataset.py— Утилита для автоматического разделения визуального датасета (изображения + лейблы) на обучающую (train) и проверочную (val) выборки.
run_detector.py— Инструмент отладки компьютерного зрения. Запускает окно с видеопотоком, где отрисовывает рамки (bounding boxes) вокруг найденного поплавка в реальном времени. Полезно для проверки качества работы YOLO без запуска самого бота.requirements.txt— Список всех необходимых Python-библиотек для запуска проекта.
git clone https://github.com/YOUR_USERNAME/wow-ai-fishing-bot.git
cd wow-ai-fishing-bot
pip install -r requirements.txtТак как веса нейросетей не хранятся в Git-репозитории, их необходимо скачать отдельно: 📥 Скачать модели на Hugging Face
Поместите файлы visual_model.pt (визуальная модель) и audio_model.keras (аудио модель) в корневую папку проекта.
Примечание: Если вы хотите обучить модели с нуля на своих данных, используйте скрипты train.py и train_audio_model.py.
Запустите бота(настройте пути к моделям):
python fishing_bot.py- F9 — Режим калибровки (нажать один раз при первом запуске, чтобы бот подстроился под громкость вашей системы).
- F8 — Старт / Пауза.
- Esc — Выход.
Исходный код распространяется под лицензией MIT License. Обученные модели и датасеты доступны под лицензией CC BY-NC 4.0.