PandariaBot — модуль ботов для сервера Legends of Azeroth 5.4.8
О проекте:
PandariaBot — это авторский модуль для частного сервера World of Warcraft версии 5.4.8 (Mists of Pandaria), разработанный с нуля и постоянно развиваемый. Его главная идея проста: дать одиночному игроку возможность формировать группу или рейд из управляемых ботов прямо в игре, не покидая сессии и не нуждаясь в посторонних людях. Боты создаются, одеваются, получают уровень, специализацию и роль, а затем следуют за игроком, участвуют в бою, телепортируются вместе с мастером на любую карту — включая подземелья и удалённые локации. Всё управление осуществляется через удобный внутриигровой аддон с кнопочным интерфейсом, который отображается прямо на экране и не мешает игровому процессу. Модуль написан на C++ и интегрирован в серверное ядро как полноценный плагин, а аддон написан на Lua и подключается стандартным способом.
Что уже реализовано:
На данный момент модуль включает полноценную систему создания и управления ботами. Игрок может в любой момент добавить бота выбрав расу и класс из всех доступных комбинаций — бот немедленно появляется рядом с мастером, автоматически вступает в группу или рейд, получает уровень близкий к уровню игрока, облачается в подходящее снаряжение и начинает следовать за ним. Каждый бот получает уникальное положение в строю — боты не сливаются в одну точку, а рассредотачиваются вокруг мастера. Реализована полная боевая система с приоритетной очерёдностью умений (Priority Queue) для всех 34 специализаций игры: воин, паладин, охотник, разбойник, жрец, рыцарь смерти, шаман, маг, чернокнижник, друид, монах — каждый класс и каждая спека используют собственный набор умений в правильном порядке с учётом прока, дебаффов, кулдаунов и уровня здоровья цели. Боты умеют тестировать урон на тренировочных манекенах, помогать в атаке цели мастера, самостоятельно атаковать ближайших врагов. В режиме ожидания (команда «Стоять») боты ведут себя живо: с шансом 20% каждые несколько секунд они прыгают, поворачиваются или делают небольшой шаг в сторону, не удаляясь дальше 10 метров от лидера. Когда кто-то инициирует проверку готовности — все боты отвечают «Готов» автоматически. Роль каждого бота (танк, хилер, ближний ДД, дальний ДД) определяется автоматически по его специализации при входе в группу и при логине.
Текущий функционал — кнопка за кнопкой:
**Колонка левая:**
- **За мной** — все боты в группе (или выделенный бот) начинают следовать за игроком, каждый на своём уникальном угле и дистанции - **Стоять** — боты останавливаются и переходят в режим ожидания с живыми случайными движениями - **Помощь в атаке** — боты следят за целью мастера и атакуют всё что атакует он - **Атаковать всё** — боты самостоятельно ищут и атакуют ближайших врагов в радиусе - **ТП** — боты телепортируются прямо к мастеру, работает между любыми картами и материками - **В группу** — пригласить выделенного бота в группу или рейд - **Выгнать** — исключить выделенного бота из группы - **Добавить бота** — открывает диалог выбора расы и класса; после создания бот появляется рядом с мастером - **Задать роль** — вручную назначить роль выделенному боту (Танк / Хилер / ДД ближний / ДД дальний)
**Колонка правая:**
- **Переодеть** — бот получает снаряжение подходящего качества и уровня из базы данных сервера - **Выровнять уровень** — бот получает уровень близкий к уровню мастера (±3 уровня) - **Тест ДПС** — бот идёт к обычному тренировочному манекену и начинает бить его умениями - **Тест ДПС Босс** — то же самое, но на рейдовом манекене - **Смена Расы / Класса / Смена спеки / Удалить бота** — в разработке
**Автоматически без кнопок:**
- При нажатии проверки готовности в игре — все боты отвечают «Готов» сами - При входе в группу — бот сам определяет свою роль по специализации - При бездействии — боты живут: прыгают, поворачиваются, ходят туда-сюда - Боты никогда не стоят в одной точке — каждый занимает своё место в строю