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

6 страниц V  1 2 3 > »   
Ответить в эту темуОткрыть новую тему
> Новая Версия Uopilot v.2.39 (09.03.2017), Официальный сайт. Скачать. Последняя версия.
WKnight
сообщение 9.3.2017, 23:31
Сообщение #1


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Пожертвовать на дальнейшее развитие:
(IMG:http://uopilot.uokit.com/wm_forum.png)
Рубли: R849464451336
Гривны: U145931779718
Доллары: Z353114408274

(IMG:http://uopilot.uokit.com/ya_forum.png)
410011422550405


--v.2.39--

Исправил установку размеров в команде 'log open', при первом открытии окна лога.

Исправил зависание пилота при выходе с работающими скриптами.

Добавил команду перезапуска скриптов 'restart_script [number | filename | all | allex]'. Сначала останавливает все указанные, потом запускает все указанные, и потом перезапускает свой скрипт, если нужно.

Исправил команду 'log close', открывавшую закрытый лог.

Исправил ошибку, возникающую, при указании комментария в описании процедуры. "proc test // comment".

Исправил показ хелпа с Wiki для составных команд типа 'set clipboard'.

При открытии Wiki страницы по ПКМ на команде в скрипте, фокус устанавливается на саму статью, а не на выпадающий список.

Исправил копирование примеров с Wiki в пилот.

Исправил ошибку в команде 'set windowpos' с параметрами TOP и BOTTOM.

Добавил возможность перезагрузки указанного плагина. 'pluginload [filename]', 'pluginreload [filename]', 'pluginunload [filename]'.

Добавил функцию плавного перемещения курсора, синтаксис как у команды 'move'. 'move_smooth <х> <у> [+х +у [-х -у]] [abs|handle]'.

В форматирование добавил форматирование подпрограмм от ":метки" до "return" находящихся на одном уровне вложенности.

Команда 'repeat'. Исправил вход в цикл при указанном количестве повторов <= 0.

Исправил ошибку "-4" в команде 'findimage', возникающую, если координата и путь к файлу не разделены пробелом.

Подправил функцию чтения памяти клиента.

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

Добавил ключ командной строки, изменяющий рабочую папку пилота. "UoPilot.exe /hC:\Temp\".

Добавил функцию запоминания части экранной области 'GetImage (StartX StartY EndX EndY [type|handle] [abs])'. Возвращает строку в виде "Адрес в памяти|Ширина|Высота|Длина строки в байтах/", либо код ошибки.

Добавил функцию удаления запомненной части экранной области 'DeleteImage (address)'. Возвращает "0" или "1", либо код ошибки.

Переделал функцию 'findimage'. В качестве типа поиска принимает адрес из функции 'GetImage'. Координаты в функции 'findimage' указываются относительно части экрана, сохраненной в функции 'GetImage', но возвращаются относительно привязанного окна\экрана.
set %a GetImage ( 100 100 1000 1000 )
set #v %a [1 1]
set $a findimage ( 51 51 1403 1403 (C:\test.bmp) %arr #v 80 1)
set $b DeleteImage ( %a [1 1] )

Отключил по-умолчанию галочку "Возвращать курсор мыши после кликов".

Вынес 'findcolor' из потока пилота, теперь оно меньше подтормаживает сам пилот.

Исправил функцию 'findwindow'. Ничего не находила при нажатых клавишах "Alt+Tab".

Команду 'Exec' переделал по типу 'ExecAndWait'. Теперь переменная 'errorlevel' содержит PID запущенного процесса.

Добавил возможность задавать зарезервированные переменные, читаемые из памяти клиента. Имя переменной и цепочка адресов задается в файле конфигурации, в секции "[CustomVariables]" в формате "имя=адрес,тип читаемых данных;прибавляемое значение,тип читаемых данных;".
Пример: wow=0xB4B2BC,d;0x65B8,d;0x40,f;
Скрипт: set wow wow + 1

Добавил описание изменений "ночной сборки" во встроенную справу в пилоте.

Добавил функцию загрузки изображения из файла 'LoadImage (filename)'. Возвращает строку в виде "Адрес в памяти|Ширина|Высота|Длина строки в байтах/", либо код ошибки.

Добавил в функцию 'findimage' поиск изображений загруженных в память, при указании адреса в памяти вместо пути к файлу.

Добавил присваивание строке массива строки вида '3|7/3|8/4|7/4|8/'.

Добавил функцию сохранения изображения в файл 'SaveImage (Address filename)'. Поддерживаются форматы ".bmp", ".jpg", ".png" (определяется по расширению).

Исправил ошибку в разборе строки диапазонов цветов, указанных в 'findcolor', когда лишние пробелы вокруг "-" приводили к недопониманию.

Исправил вычисления с отрицательными числами.

Исправил присваивание строковых переменных в параллельных скриптах, при указании индекса скрипта переменной.

Исправил команду 'sort_array', сломанную после 2.38.

После выполнения команды 'Exec' переменная 'errorlevel' содержит PID запущенного процесса либо код ошибки.

Добавил команды блокировки функций клавиатуры и мыши: 'keyboard <enable|disable>', 'mouse <enable|disable>'. Команды эмуляции 'sendex' и 'kleft' также блокируются, 'send' и 'left' работают.

Добавил функцию 'GetFocus', возвращает хэндл окна, имеющего фокус ввода.

Добавил горячую клавишу для разблокировки функций клавиатуры и мыши, заблокированных командами 'keyboard disable', 'mouse disable'. По-умолчанию "Alt+Home".

Добавил поддержку '.lnk' в команды 'Exec' и 'ExecAndWait'.

Исправил команды 'Exec' и 'ExecAndWait' на предмет ошибки 267. Актуально для файлов '.com', '.exe', '.cmd', '.bat', '.lnk'.

Исправил ошибку в команде 'set %arr findwindow (caption)', возникающую при наличии в найденных "caption" символов '|' и '/'.

Исправил 'break' при использовании вложенных 'switch'.

Прикрутил корявенький поиск на форму Wiki.

Исправил ошибку, возникающую при отсутствии пробела перед скобкой в команде 'prompt'.

Добавил возможность переходить по ссылкам с Wiki справки. Открываются в браузере.

Исправил ошибку, возникающую при отсутствии пробела перед скобкой после имени команды.

Исправил параметр '#result' в команде 'get windowpos'.

Исправил размер и цвет шрифта "по-умолчанию" в команде 'hint'.

Если в команде 'writemem' значение для записи заключено в кавычки, то кавычки удаляются.

Добавил возможность "Сохранить настройки как..." и "Загрузить настройки...".

Добавил чтение содержимого бакпака для клиента UO версии 2.0.3, с помощью функции 'set %arr backpack'. Сохраняет в массив по столбцам "ID", "itemType", "count", "color", "posX", "posY".

Поменял местами 'lengthdir_x' и 'lengthdir_y', были перепутаны.

Исправил задание адресов для "War\Hidden", "AlwaysRun", "ConsoleUnicodeText" при выборе "Custom Client".

Добавил "Backpack" в "Custom Client".

Добавил возможность выполнения скриптов "Lua". Пока только версии 5.1, 5.2.
Признаком того, что скрипт на языке луа, является "--lua" в первой строке скрипта.
Скрипт пилотом не обрабатывается, а передается сразу интерпретатору Lua.
По завершении выполнения скрипт не перезапускается сначала, т.е. выполняется однократно.
Для многократного выполнения используйте циклы\операторы перехода.
В Lua отсутствует нормальная возможность прервать выполнения скрипта из вне.
Поэтому, при остановке скрипта пилотом, глобальная переменная "terminate" устанавливается в "true".
И ее необходимо проверять с вкрипте Lua.
Кроме того, после установки "terminate" в "true", все вызываемые функции пилота игнорируюся.
Из скрипта Lua доступны некоторые переменные пилота, доступные для изменения: 'workwindow', 'delimiter', 'clickoffsetx', 'clickoffsety', 'findoffsetx', 'findoffsety', 'sendexdelay', 'mouseclickdelay', 'promptpos_x', 'promptpos_y'.
И несколько доступных только для чтения: 'errorlevel', 'terminated', 'current_script', 'workwindowpid', 'homepath', 'exefilename'.
Остальные переменные вызываются как функции 'windowhandle()'. Т.е. наличие скобок обязательно.
Параметры всех функций заключаются в скобки, даже если в синтаксисе пилота они скобок не имеют.
Все текстовые строки заключаются в двойные кавычки 'sendex ("test")'.
Возвращаемые значения некоторых функций слегка изменены, например 'findwindow' всегда возвращает массив.
--lua
while terminated ~= true do
as3 = findwindow ("Блокнот")
log (as3[1][1], as3[1][2])
wait (1500)
end

Добавил возможность закомментировать строку нажатием ЛКМ по её номеру, и раскомментировать повторным нажатием ЛКМ по номеру.

Подправил вычисления с большими числами.

Добавил функции для работы с датой и временем. "Date", "Date1", "Date2" может быть датой и\или временем, или таймштампом. Дату или время следует указывать полностью. "Years", "Months", "Days", "Hours", "Minutes", "Seconds" обычное число. Все функции сложения и вычитания возвращают таймштамп.
AddDate(Date1 Date2) : складывает даты;
AddYears(Date Years) : добавляет несколько лет;
AddMonths(Date Months) : добавляет несколько месяцев;
AddDays(Date Days) : добавляет несколько дней;
AddHours(Date Hours) : добавляет несколько часов;
AddMinutes(Date Minutes) : добавляет несколько минут;
AddSeconds(Date Seconds) : добавляет несколько секунд;
SubDate(Date1 Date2) : вычитает даты;
SubYears(Date Years) : вычитает несколько лет;
SubMonths(Date Months) : вычитает несколько месяцев;
SubDays(Date Days) : вычитает несколько дней;
SubHours(Date Hours) : вычитает несколько часов;
SubMinutes(Date Minutes) : вычитает несколько минут;
SubSeconds(Date Seconds) : вычитает несколько секунд;
YearFromDate(Date) : Возвращает год;
MonthFromDate(Date) : Возвращает месяц;
DayFromDate(Date) : Возвращает день;
HourFromDate(Date) : Возвращает часы;
MinuteFromDate(Date) : Возвращает минуты;
SecondFromDate(Date) : Возвращает секунды;
DateNow: возвращает текущую дату 29.11.2016;
TimeNow: возвращает текущее время 10:30:25;
TimeStamp (Date): преобразует таймштамп в человеческий вид и обратно.

В форматирование добавил форматирование цикла 'repeat'.

Исправил ошибку в функциях 'minx' и 'maxx', возникающую, если в имени массива есть заглавные не английские буквы.

Исправил ошибку в командах 'gosub' и 'goto', возникающую, если в названии метки используются заглавные не английские буквы.




скачать uopilot 2.39

скачать Lua 5.1

скачать AntiFrost
скачать AntiGate
пароль на архивы: uopilot.uokit.com

Сообщение отредактировал WKnight - 10.3.2017, 8:52
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 10.3.2017, 0:01
Сообщение #2


***********

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



Ура! Дождались! Кнайт... только сейчас боюсь надо будет много хотфиксов по луа...

Таймштамп текущего момента как получить?


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


********

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



Чудо

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


Эскизы прикрепленных изображений
Прикрепленное изображение
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 10.3.2017, 3:23
Сообщение #4


**********

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



Код
move_smooth 100 100
move_smooth 101 100
end_script

В меню ПКМ post не активно.
Прикрепленное изображение
Добавить в меню ПКМ:
GetImage и прочее.
GetFocus.
Функции для работы с датой и временем.
keyboard <enable|disable> и mouse <enable|disable>

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


***********

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



Цитата
Чудо

Потому что кнайт приколист. lua.dll скачайте сами. Ну собственно либо скачайте сами, либо "баааабушка"(ералаш).

Кстати к моему удивлению твой скрипт нормально отработал. Я думал log() тебя обматерит за то, что ты передаешь в него несколько параметров либо просто проигнорирует втрое значение, ан нет - сожрал. Я предполагал, что в данном случае будет правильной конструкция:
log(as3[1][1] .. as3[1][2])
Тем не менее форматирование различалось и в твоем варианте присутствовал пробел, что может быть, как удобно, так не очень.
Выводы:
528124 Безымянный — Блокнот // Твой
528124Безымянный — Блокнот // Мой


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


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Там в принципе много фиксов надо, так что особой разницы нет.

TimeStamp (DateNow TimeNow)

post сейчас временно отключена, можно конечно совсем убрать, просто надеялся быстро закончить.
Много надо и в меню добавлять и в подсветку. Както совсем забыл про это.
Впрочем как и про длл. Добавил ссылку.

log примет до 20 параметров. При слиянии разделяются пробелом.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
FREEON
сообщение 10.3.2017, 11:00
Сообщение #7


*****

Journeyman
Сообщений: 365
Регистрация: 14.2.2017
Группа: Пользователи
Наличность: 1320
Пользователь №: 18.346
Возраст: 25



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


**********

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



Напишите что lua.dll должен быть рядом с exe пилота, а то я по привычке как плагин закинул в папку плагины, а оно не работает (IMG:style_emoticons/default/smile.gif)
Пример с поиском блокнота не самый удачный. Если блокнот не открыт, то будет ошибка.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 10.3.2017, 12:16
Сообщение #9


********

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



Теперь результат каждой функции нужно проверять. Примерно так :

Код
while terminated ~= true do
as3 = findwindow ("Блокнот")
if (#as3 ~= 0) then
    log (as3[1][1], as3[1][2])
else
    log ("Не найдено")
end
wait (1500)
end
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 11.3.2017, 1:02
Сообщение #10


***********

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



os.clock() не ресетится после остановки скрипта. Я так понимаю там что-то не завершается до конца и продолжает работать.


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


***********

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



Цитата
Теперь результат каждой функции нужно проверять. Примерно так :

Ты пытаешься получить доступ к несуществующему элементу массива. На мой взгляд это вполне логично, что ты при этом получаешь вылет скрипта. Едва ли продолжение работы при этом привело к хоть сколько-то хорошим результатам. Да возможно отвалилась бы какая-то не очень существенная часть программы или было удобнее заниматься отладкой, но имхо это не так критично. В том же пилоте из-за его прозрачных проверок и обходов пустоты иногда приходилось вылавливать причину, которая оказывалась как раз в сглаживании углов. Мне пожалуй больше привычен все-таки пилотовский вариант, но едва ли он правильнее или лучше.


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


**********

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



Код
exec wscript C:\Users\abc\Desktop\123.vbs
end_script

В 2.38 работает. В этой версии нет.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 18.3.2017, 3:26
Сообщение #13


**********

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



Запуск макроса из скрипта грузит ядро на 100%.
Код
macro_play
end_script

При этом, тот же макрос, запущенный с горячей клавиши или Макрос --> Воспроизвести, вообще не грузит проц. В 2.38 тоже самое.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 18.3.2017, 16:28
Сообщение #14


***********

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



Код
log size(%tmp2)
set %tmp %tmp2
log size(%tmp)
end_script

(autosaved_0.txt, 0): 0
(autosaved_0.txt, 2): 1

ппц сколько я это ловил...


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


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Ну как бы изначально ее небыло, в процессе использования в математических операциях она создалась...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 20.3.2017, 19:51
Сообщение #16


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



night version, 20.03.2017 Build 001

Исправил присвоение переменной 'workwindow' при запуске скрипта Lua.

Исправил ошибку, возникающую при выполнении скрипта Lua, после остановки его пилотом.

Добавил возможность комментировать блок кода путем выделения строк, проводя мышкой по номерам строк.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 20.3.2017, 22:44
Сообщение #17


********

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



Цитата(WKnight @ 20.3.2017, 19:51) *

night version, 20.03.2017 Build 001
Добавил возможность комментировать блок кода путем выделения строк, проводя мышкой по номерам строк.



А если нужен коммент на 400 строк ? Просто бы кликнуть по полю с номерами строк, и весь выделенный блок или коммент или наоборот.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 20.3.2017, 22:56
Сообщение #18


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Когда кликаешь по полю с номерами строк, выделение с текста снимается.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 20.3.2017, 22:57
Сообщение #19


********

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



А горячую клавишу можно ? Желательно настраиваемую.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 20.3.2017, 23:00
Сообщение #20


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



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

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

 

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