ага,,, 15 окон крабило на пилоте 3к строк....... пока не пришёл дядя РМТбан, а в другом проекте ГГ пайлот фиксит,, что бы там не писали на форумах
(Добавление)
ну и конешн пилот против кибора это как фортран против с++
11. Lessammo - 18 Ноября, 2017 - 09:36:53 - перейти к сообщению
12. Zireael - 19 Ноября, 2017 - 09:21:13 - перейти к сообщению
CODE:
int Image[30][30], PosX[1], PosY[1];
loadimage (#Image[0][0], "C:\Users\abc\Desktop\Resurrection.bmp");
win w = window (-1, "l2UnrealWWindowsViewportWindow", -1);
int time = gettime();
for(int i=1; i < 10; i++)
{
if (findimage(1, #Image[0][0], 255, #PosX[0], #PosY[0], 0, 0, 1920, 1080, 5, 5, 5, 5, 5, 5, 80, 1, w) > 0)
{
}
}
textout (1, 200, 200, format(gettime() - time), 1);
sleep(3000);
loadimage (#Image[0][0], "C:\Users\abc\Desktop\Resurrection.bmp");
win w = window (-1, "l2UnrealWWindowsViewportWindow", -1);
int time = gettime();
for(int i=1; i < 10; i++)
{
if (findimage(1, #Image[0][0], 255, #PosX[0], #PosY[0], 0, 0, 1920, 1080, 5, 5, 5, 5, 5, 5, 80, 1, w) > 0)
{
}
}
textout (1, 200, 200, format(gettime() - time), 1);
sleep(3000);
Ради теста. Искомое изображение находится в правом нижнем углу. Затрачено 15500 мсек, этот же скрипт в пилоте 530 мсек. Почему такая разница?
13. Kibor - 19 Ноября, 2017 - 09:41:45 - перейти к сообщению
Ради теста выложите код пилота и изображение где ищется и что ищется.
Тут в Кибор драконовские настройки.
Разбежность + 80 процентов совпадения.
Только 80 процентов означает что на каждый пиксел будет идти проверка 180 пикселей (в этом случае и при этом самом минимальном (если они все подряд не совпадут)) пока не поймет что не тот кусок).. Эту опцию надо использовать правильно, а не где попало.
Я не знаю.. Но вроде в пилоте нет вообще возможности сделать такие настройки, которые вы привели в Кибор (была необходимость?).. Может стоит поискать как в пилоте? Без этих разбежностей?
Я достаточно много что искал и где.. 15 сек.. Это как то совсем не понятно.
Короче выложите исходный материал и код пилота.
Тут в Кибор драконовские настройки.
Разбежность + 80 процентов совпадения.
Только 80 процентов означает что на каждый пиксел будет идти проверка 180 пикселей (в этом случае и при этом самом минимальном (если они все подряд не совпадут)) пока не поймет что не тот кусок).. Эту опцию надо использовать правильно, а не где попало.
Я не знаю.. Но вроде в пилоте нет вообще возможности сделать такие настройки, которые вы привели в Кибор (была необходимость?).. Может стоит поискать как в пилоте? Без этих разбежностей?
Я достаточно много что искал и где.. 15 сек.. Это как то совсем не понятно.
Короче выложите исходный материал и код пилота.
14. Zireael - 19 Ноября, 2017 - 10:58:24 - перейти к сообщению
Скинул в личку.
15. Kibor - 19 Ноября, 2017 - 11:36:32 - перейти к сообщению
А почему в личку?
Возможно создадите скрипт на чем то более доступном чем RPG HF : lVenum?
К примеру на паинте?
Я попробовал на основе вашего скрипта
однако получаю при запуске скрипта
Error while creating Lua virtual mashine
что означает
Ошибка при создании виртуальной машины Lua
Что подразумевается под эти я не знаю.
Выложите скрипт который без проблем можно протестировать на компьютере без установки игр и тд..
Тогда я смогу посмотреть что означают эти "подобные" параметры для Кибор и для UoPilot.
Возможно создадите скрипт на чем то более доступном чем RPG HF : lVenum?
К примеру на паинте?
Я попробовал на основе вашего скрипта
CODE:
set %a [1] LoadImage (C:\Image_0.bmp) // загрузка изображения в память
set #w Findwindow("Новый точечный рисунок (5).bmp - Paint") // поиск окна
set #time timer // текущее время с момента запуска скрипта
for #i 1 10 // цикл от 1 до 10 с шагом 1
set #a findimage(0 0 1366 746 (%a [1 1]) %arr #w 80 1 5) // размер клиентской области паинта
if #a > 0 // если найдена
// move %arr [1 1] %arr [1 2] // навести куррсор на скил
end_if
end_for
set #time2 timer - #time // текущее время - время перед поиском
hint (24 clred 200 200 -1 -1 (#time2)) // вывод ссобщения
end_script
set #w Findwindow("Новый точечный рисунок (5).bmp - Paint") // поиск окна
set #time timer // текущее время с момента запуска скрипта
for #i 1 10 // цикл от 1 до 10 с шагом 1
set #a findimage(0 0 1366 746 (%a [1 1]) %arr #w 80 1 5) // размер клиентской области паинта
if #a > 0 // если найдена
// move %arr [1 1] %arr [1 2] // навести куррсор на скил
end_if
end_for
set #time2 timer - #time // текущее время - время перед поиском
hint (24 clred 200 200 -1 -1 (#time2)) // вывод ссобщения
end_script
однако получаю при запуске скрипта
Error while creating Lua virtual mashine
что означает
Ошибка при создании виртуальной машины Lua
Что подразумевается под эти я не знаю.
Выложите скрипт который без проблем можно протестировать на компьютере без установки игр и тд..
Тогда я смогу посмотреть что означают эти "подобные" параметры для Кибор и для UoPilot.
16. Zireael - 19 Ноября, 2017 - 12:34:41 - перейти к сообщению
https://yadi.sk/d/1ambil2l3PqUD5
В архиве папка с пилотом, искомой картинкой (Resurrection.bmp) и изображением, в котором искать (Безымянный.bmp).
Пилот запускать от администратора.
Открыть Безымянный.bmp в Paint, открыть пилот, навести курсор на картинку в Paint'е, нажать Ctrl + A, запустить скрипт.
В архиве папка с пилотом, искомой картинкой (Resurrection.bmp) и изображением, в котором искать (Безымянный.bmp).
Пилот запускать от администратора.
Открыть Безымянный.bmp в Paint, открыть пилот, навести курсор на картинку в Paint'е, нажать Ctrl + A, запустить скрипт.
17. Kibor - 19 Ноября, 2017 - 13:33:26 - перейти к сообщению
Интересно интересно..
А теперь перенесите эту иконку с правого нижнего угла в левый верхний. И проверьте время.. Разница ощутимо меняется в другую сторону со сменой знака. Это насчет поиска с разбежностью.
А вообще интересно.. Время поиска в пилоте не зависит от положения и насколько я понял от разбежности.
Даже если искать полное совпадение без разбежностей там всегда (у меня на моем разрешение) показывает окогло 500 мсек и более.
Тогда как Кибор зависит от позиции и при поиске совпадения полного показывает от 30 (левый верхний угол )до 70 (правый нижний угол) мсек..
Короче тестируйте все режимы и выложите ваши результаты.
Я не знаю что означает быстрый и точный режим поиска в пилоте.. По моему режим должен быть надежным..
А теперь перенесите эту иконку с правого нижнего угла в левый верхний. И проверьте время.. Разница ощутимо меняется в другую сторону со сменой знака. Это насчет поиска с разбежностью.
А вообще интересно.. Время поиска в пилоте не зависит от положения и насколько я понял от разбежности.
Даже если искать полное совпадение без разбежностей там всегда (у меня на моем разрешение) показывает окогло 500 мсек и более.
Тогда как Кибор зависит от позиции и при поиске совпадения полного показывает от 30 (левый верхний угол )до 70 (правый нижний угол) мсек..
Короче тестируйте все режимы и выложите ваши результаты.
Я не знаю что означает быстрый и точный режим поиска в пилоте.. По моему режим должен быть надежным..
18. Zireael - 19 Ноября, 2017 - 14:52:06 - перейти к сообщению
Цитата:
Время поиска в пилоте не зависит от положения и насколько я понял от разбежности.
От положения не сильно зависит, от разбежности только при больших значениях. От точности не зависит вообще, она вычисляется после поиска, а не во время.
Цитата:
Я не знаю что означает быстрый и точный режим поиска в пилоте.. По моему режим должен быть надежным..
Надёжный использовался давно, когда только функция была реализована. Сейчас не актуален. По сути сейчас есть 3 вида поиска, 2 (быстрый, по умолчанию, работает только в активном окне, несмотря на название самый медленный, т. к. 16мсек уходит только на получение снимка экрана, 33мсек на win7 с аэро). Т. е. на получение изображения уходит времени больше чем на обработку. Также есть поиск в окне, тот что сейчас тестили и ещё поиск на скрине хранящемся в памяти.
код в Kibor (Отобразить)
код в UoPilot (Отобразить)
В коде менял только область поиска. Искать 1 картинку, точность 98, разбежность 0. Полученное время делил на 10, т. к. цикл на 10 шагов. С разбежностью не тестил, думаю разница будет ещё больше.
Результаты Kibor (Отобразить)
Результаты UoPilot (Отобразить)
19. Kibor - 19 Ноября, 2017 - 15:10:42 - перейти к сообщению
Zireael пишет:
С разбежностью не тестил, думаю разница будет ещё больше
findimage(1, #Image[0][0], 255, #PosX[0], #PosY[0], 0, 0, 1920, 1080, 0,0,0,0,0,0, 98, 1, w) это и есть с разбежностью..
для полного совпадения надо использовать короткую функцию
findimage(1, #Image[0][0], 255, #PosX[0], #PosY[0], 0, 0, 1920, 1080, w)
у нее совсем другое время.. побыстрее намного.
и не обязательно использовать фоновый цвет(255) если не надо. а ставить -1
ну а вообще интересно.. независимость от зоны.
В кибор по крайне мере есть зависимость.
Zireael пишет:
Результаты
странно.. почему у меня наоборот..
Короче я не знаю. При правильном использование параметров проблем со скоростью поиска не возникает абсолютно.
20. Zireael - 19 Ноября, 2017 - 15:23:09 - перейти к сообщению
Почему бы не прерывать поиск когда найдено нужное количество картинок?
Если изображение в левом верхнем углу, то разницы между 0 0 40 40 и 0 0 1920 1080 не должно быть, т. к. картинка в обоих случаях почти сразу найдётся, дальше искать смысла нет.
Если изображение в левом верхнем углу, то разницы между 0 0 40 40 и 0 0 1920 1080 не должно быть, т. к. картинка в обоих случаях почти сразу найдётся, дальше искать смысла нет.