Предыстория этой статьи находится вот тут.
Обнаруженная мной Легенда оказалась чрезвычайно интересным экземпляром в жанре многопользовательская «тамагочи-RPG». Но было безумно жаль времени на прокачку персонажа, чтобы поглядеть что же там дальше придумали авторы игры. Да и довольно скучные бои с монстрами также не вдохновляли на этот игровой подвиг. Так я пришел к мысли — а не написать ли нам простенький макрос?
К ботоводам я, как и остальные нормальные игроки, отношусь с легкой брезгливостью. Это явление имеет место везде, где есть возможность этому явлению быть. Если подходить к этому вопросу не предвзято, а по сути — то вопрос ставится так — зачем тупо тратить время, если есть специально обученная программа? Тараканы тоже вызывают у многих отвращение, хотя по сути — жучки и жучки.
В сетевых играх ботоводство просто неискоренимо. Ведь если не будет рутины прокачки, то выманивать реальные деньги за игровую валюту станет бессмысленно. А если есть рутина — то найдется способ её автоматизировать.
Итак, вернемся к Легенде в контакте и макросу. Есть специализированная программа с сайта lebot.ru. Можете сами поглядеть, если есть интерес. В бесплатном варианте она делает очень много, но не делает самого главного — автоматизации боёв с монстрами. А ведь только с них можно обеспечить стабильный заработок игровых денежек и опыта. Опыт, чтобы быть честным, можно (хотя и довольно вяло) выколачивать из других игроков. В платной версии (сам не брал, но так написано на сайте) такая возможность есть. Удовольствие стоит всего 50 рублей.
Но мне кажется, что при всей полезности программы, для нас с вами полезнее будет научиться писать элементарные макросы.
Для этой благой цели, я поискал специализированный софт и нашел подходящее средство в лице — AutoClickExtreme. Программа в бесплатном варианте ограничена по функционалу, но нам его хватит. Скачать можно с авторской страницы программы.
Обсудим алгоритм макроса. Макрос — это фактически программа или алгоритм (последовательность точных инструкций исполнителю), поэтому надо четко представлять что и за чем будет происходить.
Точкой старта — является карта мира с определенной локацией. Слева мы видим иконки трех видов монстров данной локации и над ними иконку босса (как, например, на картинка слева). Советую выбрать монстра, которого вы легко можете побеждать раз за разом, т.к. за проигрыши не дают ни экспертности, ни денег.
Далее начинается сам бой. И вам нужно периодически выбирать направление удара (вниз, прямо или вверх). Когда бой окончен появляется окошечко с характерным заголовком — «Бой окончен». Жмем «выход». Показывается ещё одно окошко со статистикой и результатами боя — жмем «закрыть».
И мы снова в точке старта.
Для боя я запрограммировал комбинацию ударов — прямо, прямо, прямо, вверх — «жажда крови». Можно было и не делать этого. Вот, что нужно сделать по шагам.
- Запишите так называемый пиксель-контроль — проверку совпадения с тестовой картинкой. Т.е. мы должны проверить, что на экране видна пиктограмма с изображением нужного монстра. Для этого, во время записи нужно дважды нажать NUM LOCK или CAPS LOCK и выделить эталонную область экрана. Выбранный эталон сохранится и его можно будет использовать в ветвлении алгоритма.
- Далее нужно записать пиксель-контроль для картинки, которая во время боя появляется для выбора тактики и направления удара. Выберите статический участок этой картинки, т.е. тот участок, где нет анимации.
- Если вы хотите в последствии записывать комбинации ударов, то лучше всего записать отдельно нажатие на каждое из трёх направлений атаки.
- В конце боя нужно проверять появление окошка с заголовком «Бой окончен» — запишем его отдельным пиксель-контролем + нажатие на кнопку «выход».
- И завершает цикл пиксель-контроль картинки с надписью — «закрыть».
Далее из кусочков осталось собрать программу, настроить ветвления пиксель-контролей. У меня получился вот такой макрос:
Прилагаю также файл этого макроса в формате, читаемом AutoClickExtreme. Не думаю, что вам сильно поможет готовый макрос — так как он написан под моё разрешение экрана, позиции кликов и картинок не являются универсальными. Также сама программа имеет дефект (возможно из за sharewere версии или же баг) — при загрузке не восстанавливаются номера ветки (первая колонка таблички).
Рассмотрим таблицу.
Ветка 1. Из-за того что, нельзя выбрать ветку с номером 1 в условиях макроса, то пришлось продублировать стартовый смарт-контроль. В строке «0» просто проверяем наличие картинки и переходим к ветке 5 без клика (графа — дополнительная ветка воспроизведения).
Ветка 5. Фактическое начало цикла. Идет смарт-контроль иконки монстра, клик по нему и ожидание появления панели «атаки» — переход к дополнительной ветке 2.
Ветка 2. Основной цикл боя. Здесь можно записать либо комбинацию ударов, либо какой то один удар. Можно вообще просто ждать пока не появится надпись — конец боя. Но для этого в настройках игрока надо поставить галочку — «автоматический случайный удар в бою на последней секунде». И так как это довольно не продуктивно, то я записал комбинацию «жажда крови». После каждого удара нужно ожидать появления панели «атаки», если в течении 8-10 сек она не появилась, возможно, что бой то уже окончен и она не появится. Тогда перейдем к ветке 4 (условие для графы — в случае провала поиска). После выполнения всей комбинации (строка 16), мы ставим условие в пиксель-контроль — дополнительная ветка воспроизведения — № 2. Т.е. замыкаем круг, а в на случай провала поиска — указываем ветку № 4.
Ветка 4. Контроль окончания боя. Если такая картинка появилась — переход к доп. ветке воспроизведения № 3, иначе возвращаемся к началу цикла (ветка № 2).
Ветка 3. Завершение боя. Нажимаем кнопку выход и при появлении кнопки «закрыть» — нажимаем её. А дополнительной веткой воспроизведения устанавливаем — №5.
Программа готова. Если вы не можете найти как установить номер ветки воспроизведения — посмотрите в контекстном меню — пункт «Специальное».