Author Topic: Помогите разобраться со скриптом  (Read 13628 times)

0 Members and 3 Guests are viewing this topic.

markovi

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #15 on: January 05, 2016, 01:02:43 PM »
Неужели тут на форуме никто в AoWE не играет?
Так устрани этот маленький недостаток, создай новую тему, назови " бот для age of warring empire"
  и развивай её выкладывай новые скрипты здесь и ссылки на них на форуме игры и везде где можно. Со временем народ заинтересуется и подтянется, а тебе почёт и уважуха!  8)


Прежде чем чтото создавать надо самому разобраться
Что я счас и делаю хотя и с трудом

markovi

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #16 on: January 05, 2016, 01:03:48 PM »
Кликер делает скриншот
В какой роге можно открыть этот скрин чтоб удобно можно было найти нужный пиксель и узнать его цвет?

markovi

  • Освоившийся
  • **
  • Posts: 27
    • View Profile

markovi

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #18 on: January 05, 2016, 08:01:00 PM »
Вот такой получился скрипт

Code: (clickermann) [Select]
GETSCREEN
SCREENSHOT
IF_PIXEL_IN(845,349, 4811887) // 2

LCLICK(934,524) // 4 20-9
WAIT(3)

LCLICK(1082,769) // 4 бой
WAIT(3)

LCLICK(1323,816) // 4 20-9
WAIT(3)

LCLICK(1115,705) // 4 ___________
WAIT(3)

LCLICK(926,626) // 4 20-9
WAIT(3)

LCLICK(1082,769) // 4 бой
WAIT(3)

LCLICK(1323,816) // 4 20-9
WAIT(3)

LCLICK(1115,705) // 4 ___________
WAIT(3)

LCLICK(1058,633) // 4 ___________
WAIT(3)

LCLICK(1057,736) // 4 20-9
WAIT(3)

LCLICK(1082,769) // 4 бой
WAIT(3)

LCLICK(1323,816) // 4 20-9
WAIT(3)

LCLICK(1115,705) // 4 _______________
WAIT(3)

LCLICK(924,738) // 4 20-9
WAIT(3)

LCLICK(1082,769) // 4 бой
WAIT(3)

LCLICK(1323,816) // 4 20-9
WAIT(3)

LCLICK(1115,705) // 4 20-9
WAIT(3)

LCLICK(1115,705) // 4 20-9
WAIT(3)

LCLICK(848,505) // 4 ______________
WAIT(5)

LCLICK(1147,659) // 4 20-9
WAIT(3)
 
LCLICK(150,812) // 6 выход
WAIT(3)

LCLICK(1208,470) // 6 заход
WAIT(3)

LCLICK(765,611) // 5 подтверждение
WAIT(3)

ELSE
   LCLICK(150,812) // 3 выход
   WAIT(3)
 
LCLICK(1147,659) // 4 20-9
WAIT(3)

LCLICK(765,611) // 5 подтверждение
WAIT(3)
 
LCLICK(150,812) // 6 выход
WAIT(3)

LCLICK(1208,470) // 6 заход
WAIT(3)

LCLICK(765,611) // 5 подтверждение
WAIT(3)

END_IF


Цветокоррекцию вставлять обязательно?
Задержки нужны после getscreen и screenshot?
« Last Edit: January 05, 2016, 08:22:00 PM by Oraven »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #19 on: January 05, 2016, 08:24:21 PM »
Для IF_PIXEL_IN не верные параметры, первые 4 числа это область анализа, последующие, возможные цвета.

SCREENSHOT тебе не нужен, ты же не хочешь забить весь жесткий диск бмпешками?!

Code: (clickermann) [Select]
GETSCREEN
IF_PIXEL_IN(845,349, 845,349, 4811887) // 2
   
   LCLICK(934,524) // 4 20-9
   WAIT(3)
   
   LCLICK(1082,769) // 4 бой
   WAIT(3)
   
   LCLICK(1323,816) // 4 20-9
   WAIT(3)
   
   LCLICK(1115,705) // 4 ___________
   WAIT(3)
   
   LCLICK(926,626) // 4 20-9
   WAIT(3)
   
   LCLICK(1082,769) // 4 бой
   WAIT(3)
   
   LCLICK(1323,816) // 4 20-9
   WAIT(3)
   
   LCLICK(1115,705) // 4 ___________
   WAIT(3)
   
   LCLICK(1058,633) // 4 ___________
   WAIT(3)
   
   LCLICK(1057,736) // 4 20-9
   WAIT(3)
   
   LCLICK(1082,769) // 4 бой
   WAIT(3)
   
   LCLICK(1323,816) // 4 20-9
   WAIT(3)
   
   LCLICK(1115,705) // 4 _______________
   WAIT(3)
   
   LCLICK(924,738) // 4 20-9
   WAIT(3)
   
   LCLICK(1082,769) // 4 бой
   WAIT(3)
   
   LCLICK(1323,816) // 4 20-9
   WAIT(3)
   
   LCLICK(1115,705) // 4 20-9
   WAIT(3)
   
   LCLICK(1115,705) // 4 20-9
   WAIT(3)
   
   LCLICK(848,505) // 4 ______________
   WAIT(5)
   
   LCLICK(1147,659) // 4 20-9
   WAIT(3)
   
   LCLICK(150,812) // 6 выход
   WAIT(3)
   
   LCLICK(1208,470) // 6 заход
   WAIT(3)
   
   LCLICK(765,611) // 5 подтверждение
   WAIT(3)
   
ELSE
   LCLICK(150,812) // 3 выход
   WAIT(3)
   
   LCLICK(1147,659) // 4 20-9
   WAIT(3)
   
   LCLICK(765,611) // 5 подтверждение
   WAIT(3)
   
   LCLICK(150,812) // 6 выход
   WAIT(3)
   
   LCLICK(1208,470) // 6 заход
   WAIT(3)
   
   LCLICK(765,611) // 5 подтверждение
   WAIT(3)
   
END_IF

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #20 on: January 05, 2016, 08:27:15 PM »
Цветокоррекцию вставлять обязательно?
Если графика меняется то нужно использовать цветокоррекцию.

Задержки нужны после getscreen и screenshot?
нет

markovi

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #21 on: January 05, 2016, 10:02:44 PM »
Сейчас попробую оба варианта и уберу скриншот

markovi

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #22 on: January 05, 2016, 10:31:48 PM »
Тест прошёл успешно
Пиксель ловит и запускает сценарий верный

Начинаю облагораживать это дело

markovi

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #23 on: January 06, 2016, 12:38:05 AM »
Господа позвольте я продолжу мучать Вас своими вопросами))

Подскажите плз как сделать так чтобы начало скрипта повторялось только один раз
Т.е. Чтобы это
LCLICK(934,524) // 4 20-9
   WAIT(3)
 
   LCLICK(1082,769) // 4 бой
   WAIT(3)
 
   LCLICK(1323,816) // 4 20-9
   WAIT(3)
 
   LCLICK(1115,705) // 4 ___________
   WAIT(3)

Выполнялось один раз
А все что начинается с getscreen крутилось до пока не остановлю

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #24 on: January 06, 2016, 02:42:19 PM »
Лучше сразу привыкать к "хорошему". Без GOTO где надо и не надо

Code: (clickermann) [Select]
IF($first = 0)
   $first = 1
   // здесь то, что один раз
END_IF

// здесь то, что по кругу


Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #25 on: January 06, 2016, 03:22:55 PM »
Не нужно выскакивать. Но и лепить его в примере из трёх строк тоже не стоит.
А так, пусть делает как хочет.


markovi

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #26 on: January 06, 2016, 03:23:43 PM »
Спасибо за ответы
Меня немного смутило ":" после skip
Попробую оба варианта

Можно ещё вопросик
Сейчас при открытии картинки на экране ищется один пиксель и при совпадении его с заданными параметрами начинает работу скриптик
Можно ли сделать так чтоб картинка открывалась один раз но искалось четыре разных пикселя в разных местах и при нахождении одного из четырёх включался определённый скрипт
По окончании все так же выход на скрипт когда ненайден пиксель ( собственно говоря ониксе есть)


Ещё раз спасибо за ответы и помощь

Луций

  • Активный участник
  • ***
  • Posts: 248
  • чат в телеге: https://t.me/klickermannchat
    • View Profile
    • Пишу скрипты на заказ:
Re: Помогите разобраться со скриптом
« Reply #27 on: January 06, 2016, 07:29:12 PM »
переменную $first нужно где то обнулять, если скрипт ходит по кругу

markovi

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #28 on: February 21, 2016, 12:33:33 PM »
[spoiler= ну, как-то так]
Code: (clickermann) [Select]

IF($first = 0)
   INC($first,1)   
   LCLICK(934,524) // 4 20-9
   WAIT(3)   
   LCLICK(1082,769) // 4 бой
   WAIT(3)   
   LCLICK(1323,816) // 4 20-9
   WAIT(3)   
   LCLICK(1115,705) // 4 ___________
   WAIT(3)
   // здесь то, что один раз
END_IF

GETSCREEN
// SCREENSHOT
IF(PXL(845,349)=4811887) // 1  координаты и цвет указать
   $sovpal=1
ELSE
   IF(PXL(845,349)=4811887) // 2 координаты и цвет указать
      $sovpal=2
   ELSE
      IF(PXL(845,349)=4811887) // 3  координаты и цвет указать
         $sovpal=3
      ELSE
         IF(PXL(845,349)=4811887) // 4  координаты и цвет указать
            $sovpal=4
         END_IF
      END_IF
   END_IF
END_IF
SWITCH($sovpal)
CASE(1)

// определённый скрипт1
 LCLICK(926,626) // 4 20-9
WAIT(3)
LCLICK(1082,769) // 4 бой
WAIT(3)
LCLICK(1323,816) // 4 20-9
WAIT(3)
LCLICK(1115,705) // 4 ___________
WAIT(3)
LCLICK(1058,633) // 4 ___________
WAIT(3)
LCLICK(1057,736) // 4 20-9
WAIT(3)
LCLICK(1082,769) // 4 бой
WAIT(3) 
LCLICK(1323,816) // 4 20-9
WAIT(3)   
LCLICK(1115,705) // 4 _______________
WAIT(3) 
LCLICK(924,738) // 4 20-9
WAIT(3)
LCLICK(1082,769) // 4 бой
WAIT(3)
LCLICK(1323,816) // 4 20-9
WAIT(3)
LCLICK(1115,705) // 4 20-9
WAIT(3)
LCLICK(1115,705) // 4 20-9
WAIT(3)
LCLICK(848,505) // 4 ______________
WAIT(5) 
LCLICK(1147,659) // 4 20-9
WAIT(3)
LCLICK(150,812) // 6 выход
WAIT(3)
LCLICK(1208,470) // 6 заход
WAIT(3)
LCLICK(765,611) // 5 подтверждение
WAIT(3)

CASE(2)

// определённый скрипт2
CASE(3)

 // определённый скрипт3
CASE(4)

// определённый скрипт4
DEFAULT

// случай по умолчанию, действия если пикселей неннайдено
 LCLICK(150,812) // 3 выход
WAIT(3)
LCLICK(1147,659) // 4 20-9
WAIT(3)
LCLICK(765,611) // 5 подтверждение
WAIT(3)
LCLICK(150,812) // 6 выход
WAIT(3)
LCLICK(1208,470) // 6 заход
WAIT(3)
LCLICK(765,611) // 5 подтверждение
WAIT(3)
END_SWITCH
UNDEFINE($sovpal)
[/spoiler]


В этом скрипте как можно сделать чтоб после нахождения нужного цвета в одной из 4-х точек скрипт полностью останавливался?
Можно производить поиск по двум точкам одновременно?

markovi

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Помогите разобраться со скриптом
« Reply #29 on: April 12, 2016, 05:34:24 PM »
Люди !!! Тут живые есть??? Нужна помощь подкорректировать скриптик