Найти тему

19.06.2021 - 21.06.2021. Автокликер и Трофейная рыбалка 2: определяем разные поклевки

с сайта Drive2.com
с сайта Drive2.com

Сегодня 19 июня 2021 года 7 часов 5 минут, суббота. Жарко и душно.

В предыдущих статьях:

14.06.2021 - 16.06.2021. Автокликер и Трофейная рыбалка 2: Начало.

16.06.2021. Автокликер и Трофейная рыбалка 2: ловим на 3 удочки.

мы ловили только на один вид поклевки -топящую.

Чтобы определять множество поклевок, необходимо сравнивать контрольную зону с некоторым количеством картинок.

На форуме

IF_PICTURE_IN - Для новичков

я нашел конструкцию для множества картинок

FOR($count = 1, $count < 11)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, STRCONCAT(STRCUT("00", 0, 3 - STRLEN($count)), $count, ".bmp"), -1, 100)
LCLICK($_return1, $_return2)
WAITMS(100)
END_IF
END_CYC

IF_PICTURE_IN позволяет обращаться только к одному файлу с картинкой. Как я понял в цикле формируется обращение к различным контрольным файлам.

STRCONCAT сливает в кучу строковые значения. Как я потом понял это такая особенность работы со строками.

Изменил код, приведенный в конце статьи

16.06.2021. Автокликер и Трофейная рыбалка 2: ловим на 3 удочки.

В цикл перед каждой уточкой вставил

//вставляем много картинок
FOR($count = 1, $count<$a+1)
//формируем префикс вида поклевки.
IF($count=1)
$str= "top_"
END_IF
IF($count=2)
$str= "bult_"
END_IF
IF($count=3)
$str= "lezh_"
END_IF
FOR($count2 = 1, $count2<$b+1)
//формируем окончание файла
$str2 = STRCONCAT($str,"00",$count2,".bmp")
GETSCREEN(564,679,641,755)
COLORMODE(8)
//первая уда
IF_PICTURE_IN (564,679,641,755, $str2, -1, 100)
LOGWRITE ($str2)

Дело, как говорится, осталось за малым. Наловить контрольных картинок.

Вручную ловить поклевки - дело утомительное. Кроме того, я заметил, что картинки поклевок зависят от типа уды (дальность заброса), градуса заброса (на локациях бывают солнечные и затененные площади заброса). Так что ловить поклевки, отличающиеся от топящей надо на определенный тип уды, локации и градуса.

В предыдущую ночь запустил скрипт с записью лога имен сработавших картинок. Как я понял, лог имеет ограниченное количество записей, так что новых картинок я не отловил, но 30 травы таки наловил. Доработал скрипт

//топящие не пишем
IF($count>1)
LOGWRITE ($str2)
END_IF

Теперь надо автоматизировать фиксацию поклевок и запись скрина

Для сбора поклевок написал скрипт, который делает скриншот каждые 5 сек.:

$str= "ScrShot_"
FOR($count = 1, $count<101)
$str2 = STRCONCAT($str,$count,".bmp")
GETSCREEN // Clickermann помещает в свой графический буфер скриншот
COLORMODE(8) // Применяет к этому скриншоту режим COLORMODE
SCREENSHOTFIX(0,0, $_xmax,$_ymax, $str2)
WAIT(5)
END_CYC

Записанные файлы надо отсматривать и выявлять нужные с поклевками. Нас интересуют кладущие и "бултыхающие".

21 июня 2021 года 19 часов 28 минут, понедельник. За бортом 27 градусов по Цельсию.

Вчера настроил по 9 картинок на каждую поклевку и запустил рыбалку на ночь.

9 картинок, все-таки много. Большинство топящих поклевок не успевает сработать. Новых сработавших картинок не наловил, да и травы поймал всего 10.

Думаю, оптимально по три картинки на каждую поклевку. Словить поклевки, отличные от топящих довольно сложно - слишком большая вариабельность. Ну попробую еще.

22 июня 2021 года 7 часов 37 минут. 25 градусов

Новых поклевок так и не словил, зато наловил более 30 травы. Похоже пора кончать с другими поклевками. Отрицательный результат - тоже результат. Будем довольствоваться топящими поклевками.

Канал "Дневник программиста 1С"