Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » скрипт падает в бесконечный цикл

Страниц (2): [1] 2 »
 

1. fireframe - 03 Апреля, 2023 - 08:07:46 - перейти к сообщению
вначале все работало. сейчас в отладчике постоянно повторяется вот это. в чем может быть проблема?
CODE:
sleep ( 5 )
if ( ew == 0 )
if ( ew == 1 )
mK = findimage ( SWIFT * g1 , kol , # image [ 0 ] [ 0 ] , cf , # mX [ 0 ] , # mY [ 0 ] , v_x + ex1 , v_y + ey1 , v_x + ex2 , v_y + ey2 , r , r , r , r , r , r , proc , 1 , - 1 )
if ( ew == 2 )
if ( ew == 3 || ew == 4 )
if ( mK > 0 )
2. Kibor - 03 Апреля, 2023 - 09:59:40 - перейти к сообщению
Проблем нет
3. fireframe - 03 Апреля, 2023 - 10:22:40 - перейти к сообщению
хорошо что у вас проблем нет.
а я вот немогу понять на каком этапе что-то идет не так.
я так понял оно почему-то не находит картинку. раз 5 ее сохранял, на 5й начало находить. картинка статичная.
как вот из этого кода можно понять какую именно картинку оно не находит?
4. Ilya001 - 03 Апреля, 2023 - 10:26:25 - перейти к сообщению
 fireframe пишет:
sleep ( 5 )
if ( ew == 0 )
if ( ew == 1 )
mK = findimage ( SWIFT * g1 , kol , # image [ 0 ] [ 0 ] , cf , # mX [ 0 ] , # mY [ 0 ] , v_x + ex1 , v_y + ey1 , v_x + ex2 , v_y + ey2 , r , r , r , r , r , r , proc , 1 , - 1 )
if ( ew == 2 )
if ( ew == 3 || ew == 4 )
if ( mK > 0 )

Из этого кода ничего не понятно, оно сгенерировано с помощью виз.редактора.
И как нам понять почему он не находить?
5. fireframe - 03 Апреля, 2023 - 10:37:30 - перейти к сообщению
 Ilya001 пишет:
 fireframe пишет:
sleep ( 5 )
if ( ew == 0 )
if ( ew == 1 )
mK = findimage ( SWIFT * g1 , kol , # image [ 0 ] [ 0 ] , cf , # mX [ 0 ] , # mY [ 0 ] , v_x + ex1 , v_y + ey1 , v_x + ex2 , v_y + ey2 , r , r , r , r , r , r , proc , 1 , - 1 )
if ( ew == 2 )
if ( ew == 3 || ew == 4 )
if ( mK > 0 )

Из этого кода ничего не понятно, оно сгенерировано с помощью виз.редактора.
И как нам понять почему он не находить?

а что нужно в отладчике искать? первое что отличается от спама этих строк?
6. Kibor - 03 Апреля, 2023 - 11:00:22 - перейти к сообщению
Начнем с того, что бесконечный цикл не имеет никакого отношения к тому, почему не находится изображение.
Не находится - несколько причин:

Изображение изменилось
Если поиск по указателю - не находит окно
Просто не видит по какой то причине

Относительно бесконечного цикла, то все нормально.

Там есть галка в отладчике - сканировать значения переменных.
..

Сделайте скриншоты окна в котооом находится и в котором не находится. Прогоните их через фильтр динамики и узнаете что изменилось.

Сделать это так:
Открываете первый скрин в паинте Сдвигаете Кибор в сторону, оставив только кнопку
обновить
в графике

Нажимаете на нее.
В Кибор будет снимок экрана.

Открываете другой скрин и нажимаете 2 раза кнопку
запустить фильтр динамики.

Кибор покажет все что изменилось.

Но это работает только если элементы которые надо искать на одном месте.
7. fireframe - 03 Апреля, 2023 - 15:02:58 - перейти к сообщению
место одно и все статично.
только что визуальный редактор вообще завис, я его закрыл и старт через кибор все заработало.
(для просмотра ссылки Вам необходимо авторизоваться) то что в цикле работало нормально. прогнал несколько раз бота по маршруту, все ок.
начал разбираться с верхней частью, вроде сделал, перестала работать часть в цикле(там ничего не менял).
сейчас почемуто во время работы скрипта визуальный редактор сам начал открываться.

в другом кликире все нормально находит. но там изображения которые ищещь оно сохраняет в сам скрипт и ему нельзя ни переменную назначить ни к файлу привязать. и когада таких скриптов несколько сотен, поменять какуюто часть, это нужно всех их перебирать.
8. Kibor - 03 Апреля, 2023 - 22:35:41 - перейти к сообщению
 fireframe пишет:
только что визуальный редактор вообще завис, я его закрыл и старт через кибор все заработало.

Как это выглядело, что к этому привело?
 fireframe пишет:
сейчас почемуто во время работы скрипта визуальный редактор сам начал открываться.

Открывается когда завершена программа.
У вас это случится если прошло 50 циклов.. Они могут пройти быстро если не будут найдены изображения, или не найдено изображение во втором блоке в цикле loop, так как там нет проверки такой.

 fireframe пишет:
в другом кликире все нормально находит

Быстрее всего изображения выглядят не всегда одинаково.
Возможно там параметры поиска изображений идут по неполному совпадению или с какой то разбежностью.
Настройте такие параметры в блоках поиска изображений.

Все рекомендации я дал.
В конце концов у вас есть отладка, в которой можно указать параметр сканировать переменные и определить, почему программа себя так ведет и понять что именно происходит и почему не так как ожидалось.
9. fireframe - 04 Апреля, 2023 - 10:00:26 - перейти к сообщению
 Kibor пишет:
Как это выглядело, что к этому привело?

просто завис сам визор, что привело, не знаю.
(Добавление)
 Kibor пишет:
Открывается когда завершена программа.
У вас это случится если прошло 50 циклов.. Они могут пройти быстро если не будут найдены изображения, или не найдено изображение во втором блоке в цикле loop, так как там нет проверки такой.

оно в самом начале его открывает, это когда я понимажаю даже на немного процент соответствия, оно почемуто кликает на вкалдку визора. в картинке там конечно есть черное, но на иконку визора оно совершенно не похоже.
 Kibor пишет:
Быстрее всего изображения выглядят не всегда одинаково.
Возможно там параметры поиска изображений идут по неполному совпадению или с какой то разбежностью.
Настройте такие параметры в блоках поиска изображений.

пробовал. вообще куда попало кликать начинает.
может быть проблема из-за второго монитора? типа оно на нем пытается искать?
10. Kibor - 04 Апреля, 2023 - 10:56:02 - перейти к сообщению
Второй монитор это разрешение первого +координаты второго.
Проверьте без второго.
Короче что то не так ищется.
Еще раз повторю. Есть отладчик.
Более на вопрос
Ищу и не ищется или не там кликает тут никто ответа не даст.

Powered by ExBB FM 1.0 Final