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

 
Ответить в эту темуОткрыть новую тему
> Скрипт для игры Сказание, Не находит картинку
RomeoFL
сообщение 29.3.2013, 22:14
Сообщение #1


*

Registred
Сообщений: 7
Регистрация: 29.3.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.946



вот ссылка на игру: http://skazanie.ru
Цитата
set #startX 176
set #startY 176
set #endX 449
set #endY 449
set $path D:\Skazanie\
set %cash[1] kompas //
set $a findimage (#startX #startY #endX #endY ($path%cash[1].bmp) %crds 2)
if $a > 0
send Up//
else
send Enter//
end_if

Не работает поиск картинки.. Задачей является-при отсутствие компаса нажать "Enter", а если есть, то "Up".
Несколько раз пробовал, не находит и всё... В чём ошибка?


Прикрепленные файлы
Прикрепленный файл  kompas.bmp ( 96,03 килобайт ) Кол-во скачиваний: 334
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Zeleax
сообщение 29.3.2013, 22:50
Сообщение #2


*********

ex-Moderator UOPilot
Сообщений: 2.440
Регистрация: 8.10.2010
Группа: Пользователи
Наличность: 0
Из: Киев
Пользователь №: 13.093



Возможно, не сделана привязка скрипта к окну игры (Ctrl+A)


--------------------
Полезные советы - читать всем! UOWiki
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 29.3.2013, 23:03
Сообщение #3


***********

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



Изображение очень большое. Для поиска вполне достаточно картинки 10*10 пикселей, можно меньше. Кроме очень существенного увеличения времени поиска, такая простыня ни к чему не приведет.

Как именно не находит? Скрипт виснет, постоянно отрицательный результат поиска? Что содержится в $a(log $a напишите в теле скрипта после поиска)?


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


*

Registred
Сообщений: 7
Регистрация: 29.3.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.946



Цитата(DarkMaster @ 29.3.2013, 23:03) *

Как именно не находит? Скрипт виснет, постоянно отрицательный результат поиска?

Идёт то что написано после "else"

Цитата
Что содержится в $a(log $a напишите в теле скрипта после поиска)?

Я только начал писать скрипты и не в крусе что там содержится...
Подскажите какую литературу изучить..
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 30.3.2013, 16:02
Сообщение #5


***********

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



Я же написал log $a и увидете, что там содержится.
http://uopilot.tati.pro/index.php?title=%D...%D1%8F:AllPages
Там собственно говоря почти все, что нужно. Есть неописанные моменты, но их не так много.


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


*

Registred
Сообщений: 7
Регистрация: 29.3.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.946



Цитата(DarkMaster @ 30.3.2013, 16:02) *

Я же написал log $a и увидете, что там содержится.
http://uopilot.tati.pro/index.php?title=%D...%D1%8F:AllPages
Там собственно говоря почти все, что нужно. Есть неописанные моменты, но их не так много.

Спасибо большое за ссылку(IMG:style_emoticons/default/smile.gif) пишет неопознанная команда log(((
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Zeleax
сообщение 30.3.2013, 19:13
Сообщение #7


*********

ex-Moderator UOPilot
Сообщений: 2.440
Регистрация: 8.10.2010
Группа: Пользователи
Наличность: 0
Из: Киев
Пользователь №: 13.093



версию пилота 2.32 скачайте


--------------------
Полезные советы - читать всем! UOWiki
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RomeoFL
сообщение 30.3.2013, 19:33
Сообщение #8


*

Registred
Сообщений: 7
Регистрация: 29.3.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.946



Цитата(Zeleax @ 30.3.2013, 19:13) *

версию пилота 2.32 скачайте

0:32:41 0 (, 12): 0 -вот что выдало
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 30.3.2013, 19:47
Сообщение #9


********

Master
Сообщений: 1.264
Регистрация: 22.5.2012
Группа: Пользователи
Наличность: 0
Из: Белоруссии
Пользователь №: 14.972



Цитата(RomeoFL @ 30.3.2013, 19:33) *

0:32:41 0 (, 12): 0 -вот что выдало

0 - это значит картинка не найдена. Проверь привязку, путь к картинке. И проверь свои координаты области поиска, какие то они странные вроде у тебя.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 30.3.2013, 19:48
Сообщение #10


***********

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



Ну 0, тоже результат. Теперь как минимум знаем, что ошибок не возвращает.

Вы привязку к окну делаете? Попробуйте использовать абсолютные координаты и задать поиск по всему экрану. Так же можно пробовать открыть изображение, скажем пэинтом, и в нем попробовать найти. Чтобы убедиться, что нет проблем с самой картинкой. Ну и рекомендую все-таки воспользоваться моим совет и вырезать что-то более мелкое(5*5-10*10).


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


********

Master
Сообщений: 1.264
Регистрация: 22.5.2012
Группа: Пользователи
Наличность: 0
Из: Белоруссии
Пользователь №: 14.972



В этой игре помойму лучше искать компас Фколором или ифом быстрее будет и проще.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RomeoFL
сообщение 30.3.2013, 20:46
Сообщение #12


*

Registred
Сообщений: 7
Регистрация: 29.3.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.946



Цитата(DarkMaster @ 30.3.2013, 19:48) *


Вы привязку к окну делаете? Попробуйте использовать абсолютные координаты и задать поиск по всему экрану. Так же можно пробовать открыть изображение, скажем пэинтом, и в нем попробовать найти. Чтобы убедиться, что нет проблем с самой картинкой. Ну и рекомендую все-таки воспользоваться моим совет и вырезать что-то более мелкое(5*5-10*10).

Сделал всё как сказали, вырезал картинку меньше, пробовал в паинте.. в паинте тоже не находит... привязку делаю
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
xolost
сообщение 30.3.2013, 20:50
Сообщение #13


******

Expert
Сообщений: 517
Регистрация: 17.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.035



Если результат 0, то это значит что картинка ищется и картинка не найдена. Проблемы с оформлением значит нету. Привязка не имеет значения.
Значит, на 99% Координаты области для поиска заданы неверно.
Наверняка в том же пейнте у Вас картинка в 0 0 находится, а ищете от 179 179...
Поставьте весь экран для поиска(для теста) - 0 0 до 1280 на 1024(к примеру).

И вообще, как новичку не рекомендую пока в финдимидже использовать так:
Код

set #startX 176
set #startY 176
set #endX 449
set #endY 449
set $path D:\Skazanie\
set %cash[1] kompas //
set $a findimage (#startX #startY #endX #endY ($path%cash[1].bmp) %crds 2)

начинайте с простого:
Код
set $a findimage (0 0 1280 1024 (c:\images\вася.bmp) %crds 2)

Т.е., как видите, в одной строке координаты и путь и название картинки.


А то что выше, это такой поток информации, которая новичку не нужна. Её постепенно осознавать надо.
Я лично из-за этих массивов и переменных потерял кучу времени при изучении азов, т.к. с трудом пытался понять как оно всё клеится.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RomeoFL
сообщение 30.3.2013, 21:04
Сообщение #14


*

Registred
Сообщений: 7
Регистрация: 29.3.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.946



Цитата(xolost @ 30.3.2013, 20:50) *

Если результат 0, то это значит что картинка ищется и картинка не найдена. Проблемы с оформлением значит нету. Привязка не имеет значения.
Значит, на 99% Координаты области для поиска заданы неверно.
Наверняка в том же пейнте у Вас картинка в 0 0 находится, а ищете от 179 179...
Поставьте весь экран для поиска(для теста) - 0 0 до 1280 на 1024(к примеру).

И вообще, как новичку не рекомендую пока в финдимидже использовать так:
Код

set #startX 176
set #startY 176
set #endX 449
set #endY 449
set $path D:\Skazanie\
set %cash[1] kompas //
set $a findimage (#startX #startY #endX #endY ($path%cash[1].bmp) %crds 2)

начинайте с простого:
Код
set $a findimage (0 0 1280 1024 (c:\images\вася.bmp) %crds 2)

Т.е., как видите, в одной строке координаты и путь и название картинки.
А то что выше, это такой поток информации, которая новичку не нужна. Её постепенно осознавать надо.
Я лично из-за этих массивов и переменных потерял кучу времени при изучении азов, т.к. с трудом пытался понять как оно всё клеится.



спасибо большое, но по той схеме уже сработало))))
Интересно вот что, можно ли именно текст искать а не картинку?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
xolost
сообщение 30.3.2013, 21:27
Сообщение #15


******

Expert
Сообщений: 517
Регистрация: 17.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.035



Через несколько секунд ДаркМастер пояснит.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 30.3.2013, 21:27
Сообщение #16


***********

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



Можно и текст. Вырезаете картинку с текстом и ищите текст (IMG:style_emoticons/default/smile.gif) Это самый простой способ. Правда возможны некоторые проблемы, если используете сглаживание шрифтов, но все это поправимо заданием погрешности поиска параметром deviation либо отключением сглаживания шрифтов. А вот процент точности рекомендую увеличить при работе с текстом до 95+ процентов, вместо стандартных 80, лучше чуть увеличить deviation.


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


*

Registred
Сообщений: 7
Регистрация: 29.3.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.946



Цитата(xolost @ 30.3.2013, 21:27) *

Через несколько секунд ДаркМастер пояснит.

ахах)))
ну я успел прочитать то))) Поиск как картинки мне не подходит, а вот текст самое то))
Походу в шары долблюсь... не могу найти как найти текст именно на экране по параметрам...
Текст в буфер забить можно
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
xolost
сообщение 30.3.2013, 22:02
Сообщение #18


******

Expert
Сообщений: 517
Регистрация: 17.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.035



Цитата(RomeoFL @ 30.3.2013, 22:51) *

ахах)))
ну я успел прочитать то))) Поиск как картинки мне не подходит, а вот текст самое то))
Походу в шары долблюсь... не могу найти как найти текст именно на экране по параметрам...
Текст в буфер забить можно

Если Вы прочитали внимательно, то я всё что нужно написал. разве что ссылок не дал.
http://uopilot.tati.pro/index.php?title=GetSelectedText
Вот как взять выделенный текст.

А для начала нужно выделить его.
Например кликнув по нему пару раз или три клика - выделится?
ну вот команда
kleft #x, #y
кликает один раз.

Искать сам текст на экране, Вы думаете пилот знает как выглядит текст в Вашей игре?)) Его надо учить такой базе - т.е. нарезать каждую букву ну и т.д. Да ещё и сценарий написать для поиска этих букв или воспользоваться ссылкой Зилакса.
А ещё через ctrl+f

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

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

 

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