Обзор аддона Master Plan для Wo. WОпубл. 2. 01. 5 р. Как сделать из соратников Рабов? Как заставить их работать ещё эффективней? Эти вопросы интересовали многих! А этот аддон ответ на ваши вопросы. Супер удобный интерфейс, сортировка по росту и весу.
Статистика способностей. Сбор добычи по одному нажатию. Вообщем всё включено! Ссылка для скачивания: http: //www. Музыка взята с сайта: http: //www.
Моя партнерская программа VSP Group.
Создание простого бота для Wo. W: продолжение / Хабрахабр. Это продолжение предыдущей статьи: Создание простого бота для онлайн- игры world of warcraft.
В этой части я рассмотрю процесс взаимодействия с аукционером и почтовым ящиком. Если предыдущая часть была более общая, то эта часть уже больше связана с миром Wo. W и многое врядли будет применимо к другим онлайн- играм.
Создание простого бота для онлайн-игры world of warcraft. Здесь уже идет чистый AutoIt, с небольшим добавлением макросов. Он умел мочить мобов, собирать лут и ресы, пить банки, есть пилюли, . Личная сборка макросов для WOW. С помощью них вы сможете. Меняем способ сбора добычи (фри лут, групп лут и мастер лут). Собиратель трофеев — Расходуется 85-го уровня. Предмет из коллекции игрушек.
В той статье мы создали бота, который умеет самостоятельно приходить к NPC- аукционеру. Теперь нам необходимо реализовать дальнейшие наши действия. Сначала я немного расскажу как происходит торговля на аукционе. Я лично торгую символами, но аддоны, которые я использую, также позволяют автоматизировать торговлю любыми крафтовыми предметами.
Я использую Trade. Skill Master, это аддон от авторов auction profit masterа, который раньше назывался quick auctions. Смысл в чем: у меня лежит на аукционе около 4. Кроме меня на сервере есть еще 4- 5 человек, которые торгуют тем же товаром в таких же объемах.
Моя задача — все время держать цену на товар ниже чем у них. Это позволяет делать аддон: он автоматически сканирует аукцион, если находит что кто- то выставил предмет по цене ниже моей он снимает мой лот с торгов. Предмет отправляется на почту. Соответсвенно его потом нужно забрать с почты и выложить по цене ниже чем у конкурентов.
Цену назначает также аддон. Т. е. Бота, который умеет приходить к NPC- аукционеру мы уже написали. Теперь наша задача начать торговлю. Торговля. Здесь уже идет чистый Auto.
It, с небольшим добавлением макросов. Дальше нам необходимо начать с ним торговлю.
Тут тоже все просто: в настройках назначения клавиш, раздел «функции использования целей» надо назначить кнопку «взаимодействовать с целью», я ее назначил на . В моем аддоне это желается простым кликом по кнопке, в других аддонах может потребоваться два клика — не принципиально, все равно функция получается тривиальной: Func Start. Posting. Auc(). Send(. После нажатия на кнопку у нас появляется такое окно: В нем внизу идет прогрессбар, а наверху появляется кнопка, по клику на ней наш товар выставляется на аукцион.
Соответственно наша задача кликать по кнопке пока есть прогресс- бар, как только прогресс- бар заканчивается — переходим к следующему шагу — отмене товаров, цену на которые перебили. Func Posting. Auc(). Pixel. Color = Pixel.
Get. Color(9. 37,5. While $border. Pixel. Color = 6. 24. 98. Соответственно функции точно такие же, просто кликаем. Вот собственно и весь процесс торговли. Перемещение к почтовому ящику. После того, как все отмененные товары попали на почту, надо их оттуда забрать.
Для этого мы идем к почтовому ящику. В принципе процесс ходьбы к почтовому ящику почти ничем не отличается от процесса ходьбы к аукционеру. Также пишем семафор, который будет показывать куда идти. Также делаем поворот системы координат чтобы было проще ориентироваться. Когда персонаж стоит лицом к почтовому ящику угол составляет 2.
Единственная разница: когда идешь в сторону почтового ящика в стенах есть выступающие элементы, в которые я иногда врезался, поэтому при создании семафора я этот момент учел и сделал чтобы при приближении к стене от отодвигался от нее вправо. В принципе это было сделано просто добавлением еще одной ветки в if: elseif(mail. Pos. X < 0. 2. Pos. Y > 0. 8. Player. Mail. Go. Forvard: Set. Texture(1,0,0). Player. Mail. Go.
Back: Set. Texture(1,0,0). Player. Mail. Go. Left: Set. Texture(1,0,0).
Player. Mail. Go. Right: Set. Texture(0,1,0). Player. On. Mail: Set. Texture(1,0,0). Т. Как только вышел из здания стены уже нет, отходить не надо. Игры Через Торрент Газель здесь. Теперь, когда персонаж пришел к почтовому ящику надо его каким- то образом открыть. Способ как с аукционером тут не работает — почтовый ящик нельзя взять в цель.
Поэтому тут требуется небольшая подготовка: перед запуском бота необходимо максимально приблизить камеру и сделать чтобы он смотрел вперед и вниз. Раньше api вова позволял узнать текущее положение камеры, и можно было бы написать семафор для управления камерой, но после того как предприимчивые люди написали аддон дополненной реальности, который существенно упрощал жизнь игроку, эту функцию апи запретили к использованию в аддонах. Поэтому придется камеру настраивать вручную, при запуске бота: для взаимодействия с аукционером все равно как направлена камера.
Итак, мы пришли к почтовому ящику, камера направлена вниз. Видим примерно такую картину: Наша задача кликнуть по почтовому ящику правой кнопкой мыши.
Тут возникают проблемы: 1. Проблема была решена прописыванием в семафор условия, при котором персонаж должен отойти немного назад чтобы не упасть.
Функция для autoit у меня получилась такая: Func Open. Mail(). $x. 1 = 3.
While not (Pixel. Get. Color(2. 37,5. Mouse. Click(. Как только аддон все извлечет — кнопка меняется на красную и можно идти обратно к аукционисту: это мы уже умеем. Казалось бы все, бот написан. Но тут то меня и поджидали самые большие проблемы: узнать о том, что все письма получены, оказалось не такой тривиальной задачей, как выглядело сначала. Вообще есть два способа узнать что все письма получены: 1.
Чтобы решить эту проблему бот автоматически открывает последнюю сумку при запуске и следит чтобы последняя ячейка в ней была пустой. Как только цвет последней ячейки сумки меняется — значит сумки заполнены, пора идти на аукцион. В этом случае кнопка тоже никогда не становится красной, даже если писем на почте уже нет. В этом случае проблема решается просто: я взял последний слот почты, и смотрю меняется он или нет: при получении писем они постоянно сдвигаются вверх и слот меняется.
Когда все письма получены он перестает меняться. Если он не меняется в течении 2.
Итого функция получилась такая: Func Give. Mails(). if Pixel. Get. Color(2. 37,5. Pixel. Get. Color(1. Каким образом обойти ту или иную особенность? Как лучше реализовать ту или иную функцию? Выходные считаю проведенными с толком, хорошая разминка для мозгов : ).