Создаем сами простенького бота для танков (World of Tanks)
Всем привет! Некоторые игроки не хотят покупать ботов, и готовы брать даже самое худшее. Что же, я вас обрадую - есть возможность создать своего бота и совершенствовать его!
Где вы можете его использовать? Основная его задача, на данный момент, - прокачка экипажа Т62А Спорт.
Что же нам потребуется для создания данного чуда? Программа Clickermann.
Немного о ней:
1. Кликер с возможностью записи действий
2. Возможность анализа экрана(количество пикселей в определенной области, цвет пикселя, картинки и тд)
3. Есть редактор скриптов, которые вы можете писать сами, если нету смысла записывать самому
4. Простой и понятный язык написания скриптов, даже для новичков, требующий минимальные знания английского.
Официальный сайт программы:
Официальная группа кликера:
ЭТО НЕ РЕКЛАМА, ПЕРВАЯ ССЫЛКА НУЖНА ДЛЯ СКАЧИВАНИЯ, ВТОРАЯ - ЕСЛИ У ВАС ВОЗНИКНУТ ВОПРОСЫ, ТАМ ВАМ МОГУТ ПОМОЧЬ!
Немного ознакомимся с ее интерфейсом.
Image 1:
Красным отмечены настройки, где вы можете настроить хоткеи.
Желтым - кнопки "Начать выполнение скрипта", "Начать запись скрипта", "Остановить"
И зеленым - редактор, место где есть возможность написать свой собственный скрипт.
Что же, приступим! Не забывайте, WoT открыт в оконном режиме.
Раздел I - создание "ориентиров" для нашего бота.
Что такое ориентир? Это часть интерфейса, по которой бот будет определять, где он "находится" в данный момент времени и выполнять соответствующую задачу.
Что может быть ориентиром? Давайте разберемся, для начала, какие 3 стадии боя у нас есть:
1. Танк в ангаре
2. Сам бой
3. Результаты после боя
Для каждой стадии есть свой ориентир. Заметьте, он должен быть статическим, т.е быть неизменным.
Допустим, у меня есть 3 ориентира:
1. Кнопка "в бой", горящая красным.
2. Зеленая полосочка хп внизу экрана
3. Задний фон результатов боя
Нужно сделать скриншоты этих областей в формате bmp. Не реклама, но советую вам использовать программу FastStone Capture, покопавшись в настройках, определите, как сделать сохранение в нужном формате.
Далее, их нужно сложить в папку "Clickermann/projects/WOT"
Мои скриншоты прилагаются(к сожалению, фон результатов не загружается, сами сделаете, в случае чего).
Раздел II - определение координат
Какие нам координаты нужны?
1. Область, где у вас находится кнопка "в бой", а так же любые координаты, с помощью которых можно нажать на нее.
2. Координаты полоски хп внизу, точнее область, в которой она находится
3. Координаты фона результатов, а так же координаты крестика для закрытия.
Как их определить?
К счастью, в нашу программку вставлена возможность отображения координат мышки. Мы просто наводим на определенную область, и записываем координаты.
НЕ ЗАБЫВАЙТЕ - НУЖНЫ КООРДИНАТЫ СНАЧАЛА СЛЕВА СВЕРХУ, ПОТОМ СЛЕВА СНИЗУ, ЕСЛИ ЭТО ОБЛАСТЬ
Раздел III - создание нашего искусственного интеллекта
Открываем редактор, и начинаем ТВОРИТЬ.
К сожалению, сейчас 3 часа ночи, и объяснять по кускам я просто физически не могу, так что я напишу просто код с объяснениями. Если хотите получить более детальную информацию - там есть встроенная справка, где описаны все доступные команды.
Код: getscreen // с помощью данной команды мы получаем снимок экрана, с помощью которого программа и ориентируется, если его нету - программа работает по устаревшим данным
IF_PICTURE_IN (x1,y1, x2, y2,"название нашей картинки которая лежит по правильной директории.bmp") // IF_PICTURE_IN (x, y, x2, y2, "file") - производит поиск изображения в прямоугольной области буфера анализа. Координаты - область, где мы должны искать кнопку "в бой". И не забывайте - слева вверху и справа внизу
Wait(2) // Делаем задержку, что бы все работало даже при лагах
Lclick(x,y) // Делаем клик по области, x и y - координаты на кнопке, куда кликать
END_IF
getscreen
IF_PICTURE_IN (x1,y1, x2,y2, "картинка с полоской хп.bmp") // Тут мы проверяем, в бою ли танк или нет
#ps2_keyboard //Специальный режим эмуляции нажатий клавиатуры, но, увы, я не могу о нем рассказать подробно, если вам интересно - прочитайте в справке.
Wait(2)
// Тут вы должны определить поведение бота в бою. Тут есть много вариантов. Один из которых просто записать пару движений или выстрелов и вставить сюда(не забывайте, тут есть функция записи действий), или для более рукастых: самому написать движения с помощью определенных команд, о которых вы прочитаете в справочнике по редактору. А для особо умных, вы можете сделать проверку положения на карте, и в зависимости от него, выполнить определенное действие. Этого я писать не буду, ибо слишком геморно, да и статья только для ознакомления, своими скриптами вы можете, и ПРОСТО ПРОШУ ВАС, ЕСЛИ ВЫ СДЕЛАЛИ РЕАЛЬНО ГОДНОГО БОТА, ПОДЕЛИТЕСЬ СО ВСЕМИ, ИЛИ ЖЕ ПРОСТО МОЖЕТЕ ПИСАТЬ ПРЕДЛОЖЕНИЯ, ЧТО СТОИТ ДОБАВИТЬ!
END_IF
getscreen
IF_PICTURE_IN (x1,y1, x2,y2, "фон послебоевой статистики.bmp")
Wait(2)
Lclick(x1, y2)
END_IF
// Проверка, вышел ли танк из боя, и если вышел, нажать на крестик для выхода.
Вроде все, мы создали своего первого бота, теперь пора заглянуть в справочник, и придумать еще лучше! Совершенствуйте свои скрипты и присылайте сюда.
Статья криво написана с ошибками by smay123.
Задавайте свои вопросы тут.
P.s модератор, прошу, проверьте тему, что стоит исправить, первая статья.
Последний раз редактировалось dark; 20.06.2014 в 10:53.
Кому интересно, могу скинуть готовый код. Танк едет вперед, вправо, влево, стреляет, назад и по новой все.
Файл *.cms - код для кликера.
Пароль - rf-cheats.ru
Добавлено через 15 минут
Так же, можно сделать определение карты, на которой играешь, но есть довольно большая проблема - как определить спавн и положение танка - это я не знаю. Кто придумает ориентир - молодец!)
p.s если использовать данного бота с aimbot'ом, вообще офигенно будет)
Добавлено через 2 часа 41 минуту
Цитата:
Сообщение от Кибернетика
Фуфло какоето.
Почему? Для тех, кто не хочет платить за нормальных ботов - вполне нормально.
Добавлено через 22 часа 31 минуту
Кстати! Вы можете качать экипаж и сидеть в интернете одновременно! Просто нажмите Alt+W с активным окном, и можете переключать вкладки, не боясь того, что бот остановится!
p.s подробнее читайте про "привязку к окну"
Последний раз редактировалось smay123; 20.06.2014 в 10:55.
Причина: Добавлено сообщение
Простые и легкие задания, в отличии от ваших coinsup'ов, где дают анальные таски.
http://money2game.ru/?ref=44651
Выведено уже более 1000 голды за 7 дней.
Я не оказываю услуги гаранта!
База данных кидал: blacklist.rf-cheats.ru
Обязательно проверяйте человека через чёрный список прежде чем совершать с ним сделку.
Вот еще...скрипт можно сохранить, нажав на дискету в верхней панели редактора, дабы каждый раз не писать заново.
Простые и легкие задания, в отличии от ваших coinsup'ов, где дают анальные таски.
http://money2game.ru/?ref=44651
Выведено уже более 1000 голды за 7 дней.