Автокликер Clickermann :: Форум
Основной раздел => Использование => Topic started by: Lanmark on March 15, 2016, 11:17:55 AM
-
Всем привет. Решил использовать данную программу, ну и разбираюсь. Скопились вопросы. Знающих прошу ответить
1. Кликер распознает картинки. Но сможет ли он распознать Не Статичную картинку - Например мне нужно чтоб он нажал на урну с анимированным огнем.
Уточняю - у Урне привязываться нельзя - она имеет текстуру пола.
2. Встречал тему что кликер можно настроить на фоновый режим (Работа, в свернутом окне- или окне за пределами видимой области экрана) Но как описано в гайде - крайне не понятно. Правильно я понял что все действия клавиши и мышки нужно заменить на системные коды?
3. У меня есть записанные события которые сделаны с помощью кнопки запись в программе. Мне нужно чтоб посередине записи выполнялась проверка (Простенький IF). Могу ли я - выбрав момент с которого мне нужен запуск скрипта- просто его вставить в код и программа начнет его выполнение? или нужны определенные "теги" для того чтоб программа поняла что этот скипт нужно использовать именно в это время?
4. Большое количество проверочных картинок, Именно Картинок, замедляют выполнение скрипта?
5. У меня настроен поиск на экране по картинке. Но в экране только часть этой картинки как программа себя поведет ?
Пример: ММО - Нужная картинка - Дерево, в скрипте записано что если дерево найдено нужно на него кликнуть мышкой ЛКМ. в противном случае, рандомно раз в 30 секунд нажимаем на экране чтоб персонаж перемещался. И тут появляется нужное дерево, но часть его находится за экраном (виден только ствол). Как поведет себя программа? продолжит кликать рандомно пока дерево не попадет в экран полностью и только потом на него кликнет?
5.1 Есть ли команда которая делает проверку по картинке, но не на 100% совпадение?
Пока все в дальнейшем могу дополнять =)
Спасиб за ответы.
-
1. Используй цветокоррекцию и процент совпадения.
Вот таким скриптом получаешь снимок
// Получение скриншота с цветокоррекцией (фильтр 6)
GETSCREEN
COLORMODE(6) // 6 7 уровень самое то
SCREENSHOT
HALT
В результате огонь превратится в красное пятно. Вырезаем эти пикселы и ищем
GETSCREEN
COLORMODE(6) // используем такой же уровень
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "file.bmp", -1, 70) // 70% совпадения
LCLICK($_return1, $_return2)
WAITMS(100)
END_IF
2. Координаты будут отсчитываться от начала окна. Если не будут нажиматься клавиши не надо впадать в шок. В свернутом окне ничего не отображается да и в не свернутом зачастую из за аппаратного ускорения то же кликер ничего не видит.
3. Записанный скрипт ничем не отличается от написанного в ручную. Но писать лучше именно в ручную так как при записи пишется много лишнего (перемещения нажатия отжатия), и разобраться в этом бардаке будет не просто.
4. Естественно что на поиск каждой картинки тратится время, и времени этого уйдет меньше если область анализа будет сокращена до места возможного появления объекта, картинка размером менее 50x50 пикселов. Чем ниже процент совпадения тем дольше поиск.
5. А почему бы не искать ствол?
-
Спасибо всем кто откликнулся, даже с примерами!
5. А почему бы не искать ствол?
Ну разрабы игры сделали все стволы одинаковыми а вот листву разную ), вот так и определяем дерево.
Правильно я понимаю что картинки должны быть уже обработаны через COLORMODE? чтоб программа нашла соответствие?
И еще вопрос - есть у меня такое условие:
IF_PIXEL_IN (10,20, 100, 40, 255)
Rclick($_return1, $_return2)
END_IF
Дак вот, если в заданной области находится не один а 2 или 3 таких пикселя, то кликер клинкет правой кнопкой по ним всем или только первому попавшемуся?
-
1. картинки должны быть уже обработаны через COLORMODE соответствующий от 1 до 8, если применяете игнорирование фона, то и фон нужно предварительно закрасить указанным цветом.
Спасибо
А как применить COLORMODE к картинке?
-
Благодарю.
Подскажите такой IF программа скушает? или нужно разбивать будет на 2 IF-а?
IF_PIXEL_IN(472,143, 723,387, 16760639)
LCLICK($_return1, $_return2)
WAITMS(1400)
ELSE
LCLICK(939,382) // 6242143
WAITMS(400)
IF_PIXEL_IN(472,143, 723,387, 16760639)
LCLICK($_return1, $_return2)
WAITMS(1400)
END_IF END_IF