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

3 страниц V  1 2 3 >  
Ответить в эту темуОткрыть новую тему
> Анализ графики в перекрытом окне, Findimage, Findcolor и прочее
Piloter
сообщение 25.1.2014, 20:09
Сообщение #1


**

Neophyte
Сообщений: 48
Регистрация: 27.8.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.966



Задача проверять HP/MP (персонажа/таргета/пати) и выполнять прочие действия, связанные с анализом графики, при этом не препятствуя работе скрипта в случае перекрытия окна игры другим окном:

Код
set #c findcolor ( 0 0 800 600  1 1 (1251183) %close workwindow )
if #c > 1
send 1
end_if

Это должно было сработать и нашелся бы хоть один пиксель заданного цвета, но по неизвестной причине, не в активном, не в перекрытом окнах ничего не произошло.

Так же пробовал FindImage:
Код
set $a FindImage ( 0 80 200 150 (C:\Users\ONE\Desktop\1.bmp) %arr workwindow )
if $a > 0
send 1
end_if

и пытался добавлять после workwindow 80 1 30 (80 - точность поиска, 30 - погрешность оттенка, но в обоих случаях ничего не произошло. Можно ли сделать что то еще для работы анализа цвета в перекрытом окне?

Цитата(DarkMaster @ 25.2.2013, 7:31) *

Просто он иногда не работает. Почему никто не знает.

И за год ничего не изменилось?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 25.1.2014, 20:17
Сообщение #2


***********

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



К сожалению нет... В л2 именно он не заводился. Точнее не так. Я не слышал, чтобы он работал в л2, но учитывая, что я в л2 уже очень давно не бегал, то может у кого-то и работает.


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


**

Neophyte
Сообщений: 48
Регистрация: 27.8.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.966



Может, есть альтернативные варианты? Может, виртуальные рабочие столы, или что то еще, не считая виртуалки?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 28.1.2014, 18:41
Сообщение #4


***********

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



АСТЕР. Идеальный вариант по производительности, совместимости и т.д. Минусы: минимум 2 выхода с видюхи(либо несколько видюх) и 2 монитора(либо несколько входов на один монитор).

Сообщение отредактировал DarkMaster - 28.1.2014, 18:41


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


**

Neophyte
Сообщений: 48
Регистрация: 27.8.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.966



Возможно, существует подобное, но без второго монитора? Виртуальный рабочий стол с обновлением в реальном времени? Второй но виртуальный монитор?
Буду искать, если найду то отпишу. Попутно здесь, возможно, уже есть кому об этом рассказать?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 1.2.2014, 18:57
Сообщение #6


***********

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



Виртуальные рабочие столы - это не то. Это по сути менеджеры окон, которые работают через hide/show окон и пачками их скрывают/показывают.

Цитата
Второй но виртуальный монитор?

самый простой вариант воткнуть в тот же монитор второй кабель, если дырки конечно есть.

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


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


**********

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



У меня возникла чуть другая проблема.

Код
set #a findcolor (0 0 27 43 1 1 ( 6014945 ) %arr workwindow)
if #a > 0
alarm
end_if


Работает в л2 даже в перекрытом окне. Находит 1 пиксель. Всё нормально.

Но при начальных координатах отличных от 0 0 ничего не находит. Причём даже если окно активно и не перекрыто. Проверял в 2.34 и 2.35 никакой разницы. В других программах тоже самое. Это особенность workwindow?
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 20.10.2014, 4:18
Сообщение #8


***********

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



Хренасе... Оно работает?! о.О
Больше сказать пока нечего...

Сообщение отредактировал DarkMaster - 20.10.2014, 4:19


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


**********

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



Работает, проверил еще несколько раз.
На счёт координат. Допустим есть 4 точки с одним цветом.
1794 316
1822 316
1794 317
1822 317
Пока начальные координаты 0 0 находит все 4.
Пробуем увеличивать начальные координаты.

set #a findcolor (0 1 1822, 317 1 1 ( 7959053 ) %arr workwindow)
Находит 2 точки
1794 316
1822 316

set #a findcolor (0 2 1822 317 1 1 ( 7959053 ) %arr workwindow)
Не находит ни одной точки.

set #a findcolor (28 0 1822 317 1 1 ( 7959053 ) %arr workwindow)
Находит 2 точки
1794 316
1794 317

set #a findcolor (29 0 1822 317 1 1 ( 7959053 ) %arr workwindow)
Ничего не находит.

set #a findcolor (28 1 1822 317 1 1 ( 7959053 ) %arr workwindow)
Находит одну точку.
1794 316

А теперь еще один момент, если вместе с начальными координатами увеличивать конечные, то находит все точки.
set #a findcolor (29 2 1851 319 1 1 ( 7959053 ) %arr workwindow)
Находит все 4 точки.

Т. е для поиска скажем одной точки 500 500, координаты будут 500 500 1000 1000, а не 500 500 500 500.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 21.10.2014, 1:56
Сообщение #10


**********

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



Проверял на клиентах GraciaFinal и HighFive.
С Findimage всё тоже самое. Работает в перекрытом окне, вопросов нет.
Точно также приходится искать от начальных координат 0 0, либо к конечным прибавлять начальные.
В целом не критично, можно пользоваться. Но если когда-то исправите хуже не будет.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 21.10.2014, 3:29
Сообщение #11


***********

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



Когда достучусь до кнайта, он хорошо удивится. Буду настаивать хот фиксе.


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


***

Novice
Сообщений: 79
Регистрация: 19.8.2014
Группа: Пользователи
Наличность: 0
Пользователь №: 16.974
Возраст: 29



У меня возник вопрос по вашим суждениям.

1. зачем искать одну точку в пределах половины окна? (ваши конечные координаты уж очень большие.)
и зачем искать точку в координатах одной точки 500 500 500 500 если есть для этого Get Color??

2. зачем искать от нулевой точки??? (0 0 - это координаты границы окна, при перекрытом окне, они не могут быть 0 0 , как минимум 4 точки от края окна это линия границы окошка!!!)

у меня в перекрытом окне все работает отлично

set $ubili FindColor (7 35 7 50 1 1 (1124919) ili 2 1) - вот 15 точек перебирает, и отлично работает...

3. По поводу Л2 на ОФФ сайте не смог запустить нажатия кнопок, но цвета очень хорошо видит!!!
(и тоже границы окна не 0 0 .)

Из всего выше перечисленного делаю вывод, это это мелкое недоразумение.

Поправьте меня, если я не прав.

По поводу определения цвета в перекрытом окне есть предложение:

Где то читал, что можно сделать Скрин свернутого окна (причем только самой программы, а не экрана целиком), делать какие то операции не сохраняя саму картинку. (не проверял и не могу обратно найти тот форум.)

Предложение такое (если это конечно возможно) делаем скрин - проводим операции - и радуемся (при этом окно свернуто, или запущено другое приложение.) тогда в принципе пилот будет более гибким, не придется держать окно постоянно открытым и экран можно будет выключить.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 22.10.2014, 10:35
Сообщение #13


***********

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



Цитата
1. зачем искать одну точку в пределах половины окна? (ваши конечные координаты уж очень большие.)

А где нужно искать? Где появляется, там и ищут. К тому же тесты никто не отменял.
Цитата
и зачем искать точку в координатах одной точки 500 500 500 500 если есть для этого Get Color??

Потому что гет колор не ищет в перекрытых окнах.
Цитата
2. зачем искать от нулевой точки??? (0 0 - это координаты границы окна, при перекрытом окне, они не могут быть 0 0 , как минимум 4 точки от края окна это линия границы окошка!!!)

Граница, как правило, имеет отрицательные координаты. За стартовые берется рабочая область окна.
Цитата
Из всего выше перечисленного делаю вывод, это это мелкое недоразумение.

Над этим недоразумением уже не первый год бьется весь форум.
Цитата
Где то читал, что можно сделать Скрин свернутого окна (причем только самой программы, а не экрана целиком), делать какие то операции не сохраняя саму картинку. (не проверял и не могу обратно найти тот форум.)

Очень активно пинаю кнайта на этот предмет. Осталось только коллективное письмо написать.


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


**********

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



Fraps умеет делать скрины свёрнутых игр и игр, находящимися за пределами экрана. Осталось только узнать как (IMG:style_emoticons/default/smile.gif)
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
yamenko
сообщение 22.10.2014, 12:09
Сообщение #15


***

Novice
Сообщений: 79
Регистрация: 19.8.2014
Группа: Пользователи
Наличность: 0
Пользователь №: 16.974
Возраст: 29



Цитата(cirus @ 22.10.2014, 12:27) *

Fraps умеет делать скрины свёрнутых игр и игр, находящимися за пределами экрана. Осталось только узнать как (IMG:style_emoticons/default/smile.gif)


да и научить FindColor и GetColor работать с данным скрином.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 22.10.2014, 14:50
Сообщение #16


***********

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



Цитата
Fraps умеет делать скрины свёрнутых игр и игр, находящимися за пределами экрана. Осталось только узнать как smile.gif

Хочешь прикол? Пилот тоже умеет. Стандартной функцией printscreen. Я так 13к скринов снял за 3 суток. Правда есть какое-то странное ограничение на 2160 пикселей в высоту. Если окно больше, то скрина нет. Есть подозрение, что видюха просто не держит бОльшие разрешения поверхностей.


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


***

Novice
Сообщений: 79
Регистрация: 19.8.2014
Группа: Пользователи
Наличность: 0
Пользователь №: 16.974
Возраст: 29



Цитата(DarkMaster @ 22.10.2014, 15:50) *

Хочешь прикол? Пилот тоже умеет. Стандартной функцией printscreen. Я так 13к скринов снял за 3 суток. Правда есть какое-то странное ограничение на 2160 пикселей в высоту. Если окно больше, то скрина нет. Есть подозрение, что видюха просто не держит бОльшие разрешения поверхностей.


Хорошо, можно ли теперь научить FINDCOLOR и GET COLOR искать в файле? (или чтобы не сохранять на диск в буфере...)

Вопрос: можно ли сделать скрин из свернутого окна или нет?

PS А где ты нашел изображение высотой 2160 пикселей (у тебя 4К монитор)??? мало какие мониторы могут его выдать.. да и игры в основном пока 1080 (по высоте.)! 4К обычной видеокарте сложновато выдать....
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 22.10.2014, 18:25
Сообщение #18


***********

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



Цитата
Вопрос: можно ли сделать скрин из свернутого окна или нет?

Есть серьезные сомнения в том, что это вообще возможно. Не уверен, что свернутое окно имеет свою поверхность в памяти видюхи. Перекрытого обычно хватает.
Цитата
PS А где ты нашел изображение высотой 2160 пикселей (у тебя 4К монитор)???

У меня обычный фулхд. Ну почти обычный... 42 дюйма) Но ничего не мешает сделать окно бОльшего размера.

Цитата
Хорошо, можно ли теперь научить FINDCOLOR и GET COLOR искать в файле? (или чтобы не сохранять на диск в буфере...)

Под буфер использовал программу-заглушку. Работало. Оно снимало скрин и помещало в рабочую область. Не очень удобно, но свою функцию выполняло.
С файла пока никак, наверное.

Сообщение отредактировал DarkMaster - 22.10.2014, 18:26


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


**********

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



Цитата
Потому что гет колор не ищет в перекрытых окнах.

Вообще-то ищет. В л2 работает.
get color #a #x #y [workwindow]
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 25.10.2014, 15:26
Сообщение #20


***********

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



мде... пробельчик в знаниях однако...


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

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

 

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