Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Как убрать абсолютно все сообщения, которые выдает пилот, Ошибка пилота, syntax error(Exp1)
Dma13th
сообщение 26.9.2017, 23:02
Сообщение #1


*

Registred
Сообщений: 6
Регистрация: 26.9.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.618
Возраст: 27



Так вот иногда пилот даёт ошибку и выкидывает в окно пилота, но это фигня решаемая showwindow возвращаемся в окно. В настройках убрал всё выводить в лог, открывать лог, осталось только Выводить сообщения в лог, поставил Dev/Null, типа не выводить или я хз что это, так вот, очень редко выскакивает вот эта штука UOpilot Error Message окно такое, и там написано syntax error(Exp1) с кнопкой ОК, как сделать, чтобы это окно не выскакивало, так как оно вешает скрипт, типа скрипт включен но пока не нажмешь ОК не продолжится, не ну чисто физически можно написать, чтобы сам пилот выключал, просто раньше не пользовался, типа запустить второй пилот рядом, так как первый зависнет, второй пилот ищет окно с названием UOpilot Error Message, если оно есть делает его активным нажимает ентер. И вообще что это за ошибка и как её можно легкими способами убрать?
И да на счет скрипта, что он делает. Он там цвета находит, кнопочки нажимает, но ошибки, я так понял, когда идут команды stop_script start_script там много раз, по миллиону раз они нажимаются, и вот, видимо, когда один скрипт выключает другой, а первый чего-то не доделал, например, не отжал зажатую клавишу, бывают ошибки, но не такие, а обычные, которые просто сворачивают пилот, как я уже говорил showwindow решает проблему, а эта ошибка бывает редко, но она слишком паскудная.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 26.9.2017, 23:16
Сообщение #2


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Версия пилота какая? Эти проблемы фиксились.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Dma13th
сообщение 26.9.2017, 23:50
Сообщение #3


*

Registred
Сообщений: 6
Регистрация: 26.9.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.618
Возраст: 27



Цитата(DarkMaster @ 26.9.2017, 23:16) *

Версия пилота какая? Эти проблемы фиксились.


v2.39 WK
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 27.9.2017, 2:10
Сообщение #4


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Цитата
syntax error

Нужен код, в котором ошибка.
Цитата
когда идут команды stop_script start_script там много раз

Так можно и без них скрипт написать.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Dma13th
сообщение 27.9.2017, 12:37
Сообщение #5


*

Registred
Сообщений: 6
Регистрация: 26.9.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.618
Возраст: 27



Цитата(cirus @ 27.9.2017, 2:10) *

Нужен код, в котором ошибка.

Так можно и без них скрипт написать.


Последний раз ошибка была в скрипте 1
Код


//script 1
set workwindow 394784

get color #col 993 563
if (#col > 56064) AND (#col < 58125)
else
start_script 5
while_not (#col > 56064 and #col < 58125)
get color #col 993 563
end_while
stop_script 5
end_if


get color #col2 925 566
if (#col2 > 56063) AND (#col2 < 58126)
else
start_script 6
while_not (#col2 > 56064 and #col2 < 58125)
get color #col2 925 566
end_while
stop_script 6
end_if

//sctipt5
set workwindow 394784
send217 {a}

//script6
set workwindow 394784
send217 {a}

//script7
set workwindow 394784
set #showindow 394784
:beg1
get color #col 993 563
if (#col > 56064) AND (#col < 58125)
else
while_not (#col > 56064 and #col < 58125)
get color #col 993 563
end_while
end_if
send {tab}
set #live1 findcolor (450, 56 450, 56 1 1 (2896435) %arr 2)
if #live1 = 1
get color #col 732, 984
while #col = 10784648
get color #col 732, 984
send {3}
end_while
showwindow #showwindow
stop_script 2
stop_script 3
showwindow #showwindow
stop_script 1
stop_script 5
stop_script 6
else
goto beg1
end_if
stop_script

//script 15

set workwindow 394784
set #showindow 394784

get color #col 732, 984
if #col = 10784648

get color #col3 784, 988
if #col3 = 3821666
else
send {F1}
wait 1500
end_if

else
get color #col 732, 984
if #col = 10784648
else
showwindow #showwindow
stop_script 1
stop_script 2
stop_script 3
stop_script 5
stop_script 6
send217 {w}

start_script 16
while #col != 10784648
get color #col 732, 984
end_while
stop_script 16
wait 50
send {=}
wait 150
get color #col 392, 59
if #col = 42956
send217 {j}
end_if
wait 300
send217 {t}
wait 100
send217 {t}
wait 100
send217 {t}
wait 100
send217 {t}
wait 100
send217 {t}
wait 100
send217 {t}

end_if

showwindow #showwindow
stop_script 1
wait 400
showwindow #showwindow
start_script 1
showwindow #showwindow
start_script 2

end_if

end_if

//script 16
set workwindow 394784
set #showindow 394784
send217 {j}
set #live findcolor (227, 93 227, 93 1 1 (1778127) %arr 2)
if #live = 0
send217 {q}
send217 {z}
send217 {e}
send217 {f}
send {3}
send {4}
else
send {2}
end_if
showwindow #showwindow
stop_script 1
stop_script 5
stop_script 6

//script 19
stop_script 7




Вот часть скриптов, где есть sctop_scrupt или start_script. Все скрипты их 19 работают параллельно и постоянно при определенных условиях один включает другой или выключает, как написать без остановки и запуска параллельные скрипты я хз, ну если знаете подскажите.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 27.9.2017, 13:12
Сообщение #6


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Цитата
как написать без остановки и запуска параллельные скрипты

Ладно 2-3 скрипта, но 19 это бред, тем более скрипты в 2 строчки.
Код
//script 1
set workwindow 394784

get color #col 993 563
if (#col > 56064) AND (#col < 58125)
else
start_script 5
while_not (#col > 56064 and #col < 58125)
get color #col 993 563
end_while
stop_script 5
end_if

//sctipt5
set workwindow 394784
send217 {a}

Тоже самое:
Код
set workwindow 394784
get color #col 993 563
if  #col < 56064 AND #col > 58125
    send217 {a}
end_if

Условия можно группировать:
Код
set workwindow 394784
get color #col 993 563
get color #col2 925 566
if  (#col < 56064 AND #col > 58125) or (#col2 < 56063 AND #col2 > 58126)
    send217 {a}
end_if
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Dma13th
сообщение 27.9.2017, 16:29
Сообщение #7


*

Registred
Сообщений: 6
Регистрация: 26.9.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.618
Возраст: 27



Цитата(cirus @ 27.9.2017, 13:12) *

Ладно 2-3 скрипта, но 19 это бред, тем более скрипты в 2 строчки.
Код
//script 1
set workwindow 394784

get color #col 993 563
if (#col > 56064) AND (#col < 58125)
else
start_script 5
while_not (#col > 56064 and #col < 58125)
get color #col 993 563
end_while
stop_script 5
end_if

//sctipt5
set workwindow 394784
send217 {a}

Тоже самое:
Код
set workwindow 394784
get color #col 993 563
if  #col < 56064 AND #col > 58125
    send217 {a}
end_if

Условия можно группировать:
Код
set workwindow 394784
get color #col 993 563
get color #col2 925 566
if  (#col < 56064 AND #col > 58125) or (#col2 < 56063 AND #col2 > 58126)
    send217 {a}
end_if



Не переделывать ничего нельзя, тут всё выверено, до мельчайших подробностей, если условие будет где-то в центре оно до него будет доходить с огромной задержкой, что убивает программу, поэтому скрипт нельзя менять. Ну попробую удалять другим пилотом
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 28.9.2017, 2:10
Сообщение #8


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Цитата
если условие будет где-то в центре оно до него будет доходить с огромной задержкой

Дело ваше. Но, например, раскинув 3 проверки цвета в 3 скрипта ничего не даст:
Код
get color #col1 732, 984
get color #col2 993 563
get color #col3 392, 59

По времени тоже самое что в одном скрипте.

Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 28.9.2017, 13:07
Сообщение #9


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
По времени тоже самое что в одном скрипте.

Не совсем. Это даже медленнее, если выполняется в нескольких вкладках. Ну точнее, если мы в пределах одной вкладки это делаем, то мы можем избавиться от трех вызовов гет колора и трех снимков экрана, что и тормозит процесс. Можно сделать getimage, а затем в захваченном изображении сделать три findcolor'а либо и вовсе напрямую из памяти считать цвет. Это даст прирост в скорости примерно в три раза (на самом деле чуть-чуть меньше из-за финда/редмема, но это в пределах погрешности).


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Dma13th
сообщение 28.9.2017, 20:18
Сообщение #10


*

Registred
Сообщений: 6
Регистрация: 26.9.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.618
Возраст: 27



Цитата(DarkMaster @ 28.9.2017, 13:07) *

Не совсем. Это даже медленнее, если выполняется в нескольких вкладках. Ну точнее, если мы в пределах одной вкладки это делаем, то мы можем избавиться от трех вызовов гет колора и трех снимков экрана, что и тормозит процесс. Можно сделать getimage, а затем в захваченном изображении сделать три findcolor'а либо и вовсе напрямую из памяти считать цвет. Это даст прирост в скорости примерно в три раза (на самом деле чуть-чуть меньше из-за финда/редмема, но это в пределах погрешности).

Тогда самый последний вопрос в пилоте можно как-то сделать, чтобы 1 скрипт проверял включен скрипт 2 или на паузе или выключен. Типа:
If {script 1} = started
stop_script 1
end_if

If {script 1} = paused
resume_script 1
end_if

If {script 1} = stopped
start_script 1
end_if
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 28.9.2017, 23:05
Сообщение #11


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



добавил возможность выяснить количество вкладок со скриптами, с занесением в массив их номеров, имен и статуса запуска
get scripts %a
msg size (%a)
save_array %a


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 29.9.2017, 2:18
Сообщение #12


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Учтите, что скрипты в пилоте начинаются с 0, а массивы с 1.
Код
get scripts %a
If  %a [1 3] = runing  // статус скрипта в 0 вкладке
    stop_script 0
end_if

If %a [2 3] = stoped  // статус скрипта в 1 вкладке
    start_script 1
end_if
end_script
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Dma13th
сообщение 29.9.2017, 12:03
Сообщение #13


*

Registred
Сообщений: 6
Регистрация: 26.9.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.618
Возраст: 27



Ну красиво, красиво товарищи. Всем спасибо, пойду жертвовать на вебмани за труды.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 28.3.2024, 19:28
Designed by Nickostyle