Автокликер Clickermann :: Форум
Основной раздел => Использование => Topic started by: Kedrick on December 03, 2014, 10:24:05 AM
-
Написал бота, на том компе где написан скрипт все отлично работает. Для максимальной совместимости прикрутил коррекцию цветов и снизил точность поиска картинок до 70%
Принес на рабочий комп - не отрабатывает все нажатия. Вычислил где, не пойму почему. Прошу помощи.
Для начала в этой подпрограмме:
$donat = 2 // 0 - не скидываем, 1 - только бабло, 2 - бабло и ресы, 3 - только ресы
SUB(donate) // скидываем награбленное в клановую казну
IF($donat > 0)
coord() // сверяем координаты, если сместилось корректируем с помощью $x и $y (по умолчанию они = 0)
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN (253+$x,569+$y, 355+$x,764+$y, "1.bmp", -1, 70) // страница клана
LCLICK($_return1, $_return2)
waiting() // ждем прогрузки страницы
END_IF
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN (448+$x,627+$y, 600+$x,848+$y, "2.bmp", -1, 70) // казна клана
LCLICK($_return1, $_return2)
waiting() // ждем прогрузки страницы
END_IF
FOR($a=0, $a < 10) // перемотка экрана вниз
KEYPRESS(#DOWN)
WAITMS(300)
END_CYC
WAITMS(500)
GETSCREEN
COLORMODE(6)
IF(($donat = 1) | ($donat = 2))
IF_PICTURE_IN (357+$x,438+$y, 600+$x,631+$y, "plus.bmp", -1, 70) // плюсик рядом с окном ввода суммы бабла чтобы положить сразу все из кармана
LCLICK($_return1, $_return2)
WAIT(1)
END_IF
END_IF
IF(($donat = 2) | ($donat = 3))
IF_PICTURE_IN (587+$x,438+$y, 840+$x,631+$y, "plus.bmp", -1, 70) // плюсик рядом с окном ввода суммы ресурса чтобы положить сразу все из кармана
LCLICK($_return1, $_return2)
WAIT(1)
END_IF
END_IF
IF_PICTURE_IN (557+$x,445+$y, 875+$x,724+$y, "down.bmp", -1, 70) // кнопка ОК
LCLICK($_return1, $_return2)
waiting()
END_IF
KEYPRESS(#HOME) //если не сработает то поднять страницу в исходное для работы следующих подпрограмм
WAITMS(500)
PRINT("скинул ништяки") // контролим в логе по отчетам где затык
waiting()
END_IF
END_SUB
Изначально работает в привязке к окну, но тут для выявления проблемы привязку отключил, координаты поправил. Чтобы видеть куда приходит курсор для клика.
Первую и вторую картинки находит и по кнопкам отрабатывает.
Вниз экран скроллит.
По плюсикам - картинки находит, но кликает уже на 1-1,5см левее и выше этих кнопок.
По кнопке ОК не кликает, находит ее или нет я не понял.
-
Может с процентом переборщил? Вот и находит левое.
-
Начал сперва без колормода но с 80% - не работает.
Прикрутил колормод и переделал картинки - не работает.
Начал крутить точность и докрутил уже до 70.
Дома все работает, в любом раскладе.
Коррекцию координат отключал, все десять раз перепроверил, но что-то видимо упустил, или комп тут особенный.
-
Приблизительно разобрался
Часть картинок нормально находится и при 100%, часть только при 90, пресловутые плюсики только при 80% находит уверенно, еще часть картинок при 70% :(
Не получится так универсального бота нарисовать, если на каждом другом компе придется со всеми картинками так выёживаться и регулировать. А тупо на каждом компе по новой свои картинки мутить, это тоже геморняк, ибо некоторые картинки (на попапах) ловить приходится по несколько дней, пока все условия совпадут и оно выскочит, какие-то картинки только в полночь появляются, а сидеть каждый раз до полуночи так и бот нафиг не нужен - раз сидишь то и руками потыкаешь.
Буду много думать, как это обойти/решить красиво.
На Ацтулзе я заставлял пользователя при запуске указывать "нулевую точку" в окне игры, от которой скрипт рассчитывал все точки для кликов и тупо без картинок кликал. Но не хочется и тут такое применять, ибо именно от этого я сюда и ушел для быстрого поиска по картинкам :)