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

 
Ответить в эту темуОткрыть новую тему
> Кликер для Фотошоп, Ускорение нудной работы в фотошоп
Yuran
сообщение 6.4.2017, 16:25
Сообщение #1


*

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



Привет всем
Только сегодня наткнулся на всемогущий UO Pilot и очень им заинтересовался!
Но я весь в сомнениях, но применим ли UO Pilot к Photosop он же ни чем не хуже линейки или любой другой игрули?
Поиск по сайту ничего мне не сказал на этот счет.
А может я неправильно искал...

Короче, что меня интересует:
Можно ли научить UO Pilot понимать элементы управления фотошоп?

-//-понимать какое окно открыто в данный момент?

-//-понимать в какой момент программа занята, а когда готова к дальнейшим действиям?

Объясните нубу, плиз (IMG:style_emoticons/default/rolleyes.gif)

Сейчас пользуюсь автокликером
Advanced Key and Mouse Recorder

Но он до жути тугой, вернее мне в нем тяжело делать большие скрипты (там нет сносок) и его сильно приходится настраивать к таймингу выполнения действий и отклика от программы (глюки в связи с неуспеванием - следствие пропуска и лавинообразное нарастание косячных действий скрипта)
И сами понимаете, мне часто приходится искать в какой момент фотошоп не успевает за скриптом или при изменении положение окна к которому будут применяться действия
(IMG:http://image.prntscr.com/image/fc257f51db93464e856f8336c88f476a.jpeg)
Я уже не говорю о том, все эти скрипты привязаны к координатной сетке монитора и отсюда невозможность перенести скрипт на другой компьютер
А ещё я постоянно дорабатываю эти скрипты (буквально каждый день) и что бы их переделывать... Хватаюсь за голову и собираю мозги в кучку после предыдущего взрыва при попытках починить другой нужный скрипт. Иногда просто зависаю... пытаюсь вспомнить что хотел сделать и что должна выполнять данная строчка скрипта, уж не говорю о том, что в верху, а что в низу???

Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
M0rBiT
сообщение 6.4.2017, 16:31
Сообщение #2


********

Группа: Пользователи
Наличность: 5964
Пользователь №: 11.468



Стесняюсь спросить. А зачем в фотошоп кликер 0_0?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Yuran
сообщение 6.4.2017, 16:35
Сообщение #3


*

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



Обработка большого количества фотографий (пакетная обработка не катит для этого)
Отсюда и пытаюсь как то ускорить этот процесс автокликерами (IMG:style_emoticons/default/smile.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 6.4.2017, 17:34
Сообщение #4


********

Master
Сообщений: 1.395
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 21046
Пользователь №: 16.156



Можно все. только может есть другие варианты? Плагины-макросы и т.п.?

30 сек. поиска


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


***********

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



вообще по вашим вопросам ответ findwindow. Он даст возможность опеределить какое окно сейчас открыто/на переднем плане, есть ли окно ожидания и т.д.


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


*

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



Цитата(Cockney @ 6.4.2017, 17:34) *

Можно все. только может есть другие варианты? Плагины-макросы и т.п.? 30 сек. поиска -тук

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

Цитата(DarkMaster @ 6.4.2017, 20:06) *

вообще по вашим вопросам ответ findwindow. Он даст возможность опеределить какое окно сейчас открыто/на переднем плане, есть ли окно ожидания и т.д.

спасибо, успокоили - пойду грызть гранит науки
Если есть желание помочь - накидайте ссылок, что ещё можно по изучать для начала (IMG:style_emoticons/default/wink.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Yuran
сообщение 7.4.2017, 9:24
Сообщение #7


*

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



Вот, немного нашкреб на форуме, спасибо EL-GReeN
введение в скриптинг

Это небольшое обучение расчитано на тех кто не знаком со скриптами и программированием.
Итак как работает скрипт и что в нем есть:
Код состоит из текста(=команд) выполнение которого происходит построчно начиная с первой и до последней строки, но для
обеспечения ветвления логики (=условных переходов) возможно как пропустить строки так и перейти в конкретное место.
Команды состоят из групп переменных, операторов и функции, переменные это контейнеры в которые можно помещать числа или
строки(буквы+цифры), переменные бывают трех типов, это числовые начинающиеся с #, строковые $, и массивы % представляющие
собой переменные сгрупированные под одним именем:
set #a 1
set $b "asd"
set %c[1] 1
set %c[2] "asd"
set %c[3] "asd 1"
Таким образом мы можем думать о переменных как о данных с которыми можно делать много чего интересного.

Функции и команды позволяют производить разнообразные действия с переменными и не только, некоторые функции могут возвращать
значения, например "set #a 1" вместо 1 может быть функция которая вернет что то, set поместит это в #a, так же для работы
функций им нужны параметры(переменные-данные), это можно написать так "Функция1(параметр1 параметр2 3.. 4.. и тд.)", можно
сравнить с соковыжималкой(функция) и яблоком(данные), на выходе имеем сок(результат работы) и мякоть(возврашенные данные),
притом и функции и соковыжималки требуют для работы электричество(выполнение)
Дальше приводится описание самых необходимых команд и функций для начала скриптописания:

// коментарий, все что после "//" в этой строке не выполняется

set обьявление переменной и или присваивание значения
set #a 1 //создание переменной #a и присваивание ей числа 1
set #a #a + 2 // присваивание #a ее же значение но +2, после выполнения #a будет содержать 3

wait ожидание, можно указать с точностью до 1 милисекунды:
wait 1s // ждать 1 секунду
wait 2823 // ждать 2 секунды и 823 милисекунды

if условный оператор, в результате вычисления выражения, тело "ифа" либо выполняется либо нет, выражения идут после if и
должны быть в формате больше(>), меньше(<), равно(=), не(!), то есть приводить условие к однозначному результату ДА(true)
или НЕТ(false), можно использовать несколько выражений соединенных and(и), or(и или), xor(или):
if (#a > 0) and (#a < 10) // если #a больше чем ноль и меньше 10 тогда выполнится тело условия
set #a 11 // это тело условия
set $string asd11 // это тело условия
end_if // конец условия

while условный цикл "пока истенно", тоже самое что и if только после выполнения тела, перехода к следующей строчке после
конца условия не будет, вместо этого опять вычислится выражение и если оно НЕТ(false) тогда будет выход из цикла, если
ДА(true) тогда сново выполнится тело:
while (#a > 0) and (#a < 10) // если #a больше чем ноль и меньше 10 тогда выполнится тело условного цикла
set #a #a + 1 // это тело условного цикла
set $string asd11 // это тело условного цикла
end_while // конец условного цикла

left нажать левой кнопкой мышки по координатам(=курсором), сначала пишется горизонтальная затем вертикальная:
left 353, 338 // кликнуть

send нажать кнопку, в разных ОС что бы работало как надо, кнопку необходимо заключаться в {}:
send N // нажать кнопку N
send {N} // нажать кнопку N
send F1 // нажать кнопку F1

findcolor поиск точки по цвету в квадратной области, возвращает сколько точек найдено и где, параметры:
FindColor (левыйКрайОбласти верхнийКрайОбласти правыйКрайОбласти нижнийКрайОбласти шагПоискаГоризонталь шагПоискаВертикать
цвет массивДляКоординат типПоиска), пример:
set $a findcolor (154, 80 318, 260 1 1 2366701 %arr 2) // вернёт в $a сколько нашлось, вернёт в %arr координаты каждой найденной точки

end_script завершение работы скрипта, можно не использовать и тогда в конце скрипта выполнение перейдет на первую строчку

Теперь можно использовать полученные знания и написать пару простейших ботов, сперва нужно привязать скрипт к целевому окну,
что бы это сделать поместите пилот поверх окна, разместите курсор мыши над окном и нажмите ctrl+A:
1)
send F1 // нажать F1
wait 3000 // ждать 3сек
send G // нажать G
wait 15s // ждать 15сек, по завершинии ожидания сного выполнится "send F1"
//end_script // завершиние работы скрипта закоментированно, поэтому работать код будет до ручного выключения
2)
set $a 0 // для старта условного цикла нужна переменная $a с значением 0
while $a < 1 // пока $a меньше 1, то есть тело будет выполнятся пока функция findcolor не вернет в $a по крайней мере 1 (количество найденных точек)
set $a findcolor (154, 80 318, 260 1 1 2366701 %arr 2) // когда функция найдет точку она поместит ее координаты в %arr
wait 10 // ждать 10мс
end_while // конец цикла, переход к следующей строчке будет только тогда когда findcolor что то найдет и в $a будет уже не 0
left %arr [1 1], %arr [1 2] // кликнуть мышкой по первой найденной точке,горизонтальная координата=%arr[1 1] вертикальная=%arr[1 2]
wait 3s // ждать 3сек
send F7 // нажать F7
wait 7s // ждать 7сек, после ожидания выполнение перейдет на первую строчку где $a будет присвоено 0, благодаря чему цикл while сможет опять запустится

Это только маленькая часть функций, полное описание можно найти тут:
UOPilot Wiki http://uopilot.tati.pro
UOPilot->?->Помощь по языку скриптов
UOPilot->?->История развития программы
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 7.4.2017, 10:03
Сообщение #8


***********

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



я уже говорил, но теперь ссылкой (IMG:style_emoticons/default/smile.gif)
http://uopilot.tati.pro/index.php?title=Findwindow
а вообще пишите, спрашивайте. Проще по коду разбираться, чем вслепую.


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


**********

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



Список_функций
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Yuran
сообщение 12.4.2017, 10:40
Сообщение #10


*

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



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

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

 

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