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

> Новая Версия Uopilot v.2.39 (09.03.2017), Официальный сайт. Скачать. Последняя версия.
WKnight
сообщение 9.3.2017, 23:31
Сообщение #41


********

Разработчик 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Отправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Сообщений в этой теме
WKnight   Новая Версия Uopilot v.2.39 (09.03.2017)   9.3.2017, 23:31
DarkMaster   Ура! Дождались! Кнайт... только сейчас бою...   10.3.2017, 0:01
Cockney   Чудо Добавить возможность комментить блок кода пу...   10.3.2017, 0:21
cirus   move_smooth 100 100 move_smooth 101 100 end_script...   10.3.2017, 3:23
DarkMaster   Потому что кнайт приколист. lua.dll скачайте сами...   10.3.2017, 6:04
WKnight   Там в принципе много фиксов надо, так что особой р...   10.3.2017, 9:07
FREEON   Ого новую версию запилили, так-то еще старую до ко...   10.3.2017, 11:00
cirus   Напишите что lua.dll должен быть рядом с exe пилот...   10.3.2017, 11:58
Cockney   Теперь результат каждой функции нужно проверять. П...   10.3.2017, 12:16
DarkMaster   os.clock() не ресетится после остановки скрипта. Я...   11.3.2017, 1:02
DarkMaster   Ты пытаешься получить доступ к несуществующему эл...   11.3.2017, 1:39
cirus   exec wscript C:\Users\abc\Deskt...   14.3.2017, 11:38
cirus   Запуск макроса из скрипта грузит ядро на 100%. mac...   18.3.2017, 3:26
DarkMaster   log size(%tmp2) set %tmp %tmp2 log size...   18.3.2017, 16:28
WKnight   Ну как бы изначально ее небыло, в процессе использ...   18.3.2017, 20:25
WKnight   night version, 20.03.2017 Build 001 Исправил прис...   20.3.2017, 19:51
Cockney   night version, 20.03.2017 Build 001 Добавил возмо...   20.3.2017, 22:44
WKnight   Когда кликаешь по полю с номерами строк, выделение...   20.3.2017, 22:56
Cockney   А горячую клавишу можно ? Желательно настраиваемую...   20.3.2017, 22:57
WKnight   Сам хочу. В ближайших планах.   20.3.2017, 23:00
Cockney   Как вариант, может доп., клик пкм -> комментиро...   20.3.2017, 23:26
cirus   Ещё бы как-то сделать комментирование для lua. Ош...   21.3.2017, 3:21
DarkMaster   а что с финдами то? как их использовать?   21.3.2017, 7:03
cirus   Вообще они работают, только массив не создаётся: ...   21.3.2017, 11:27
DarkMaster   под луа я бы вообще возвращал это чудо в 2 перемен...   21.3.2017, 13:40
WKnight   Так ты из скрипта не вышел, оно и продолжает пыта...   21.3.2017, 20:07
DarkMaster   Почему не грохать машину?   21.3.2017, 20:09
WKnight   Не помню, там что-то про нестабильность было.   21.3.2017, 20:33
WKnight   Нашел способ как прервать не прибивая. В следующей...   21.3.2017, 21:19
cirus   Горячую клавишу разблокировки мыши/клавы поставь в...   22.3.2017, 2:49
DarkMaster   сделать поле/столбец/формочку между номером строки...   25.3.2017, 23:47
cirus   И заодно какую-нибудь галку, отвечающую за тип ком...   26.3.2017, 1:48
WKnight   Сейчас оно ищет "--lua" в первой строке ...   26.3.2017, 18:38
cirus   --lua //a = 1 Это вызывает ошибку. Если можно буде...   26.3.2017, 19:13
WKnight   Недопонял, зачем в луа скрипте коментарии в стиле ...   26.3.2017, 19:30
cirus   Для этого и предлагал сделать галку или ещё что-то...   26.3.2017, 19:42
WKnight   Имелось ввиду, что в следующей бете уже сделано та...   26.3.2017, 20:03
cirus   Понял. Нормально.   26.3.2017, 20:12
cirus   log DateNow TimeNow // так работают set #time ...   8.4.2017, 19:34
Cockney   Где бетки то ?   17.5.2017, 14:04
WKnight   Заработался маленько. Целый день возле какого-нить...   18.5.2017, 18:10
dron4938   Заработался маленько. Целый день возле какого-нит...   21.5.2017, 22:55
WKnight   Пасиб, освежает ;)   22.5.2017, 20:20
WKnight   build 2 Добавил возможность комментировать блок ко...   22.5.2017, 22:31
cirus   Примерчик бы увидеть, как оно теперь выглядит.   23.5.2017, 2:18
WKnight   Примерно так --lua a = findcolor("0 0 1920 1...   23.5.2017, 20:41
DarkMaster   Есть мнение, что этого достаточно. В частности чи...   23.5.2017, 20:48
cirus   set %arr [1 1] set %arr [1 2] 11 s...   24.5.2017, 11:04
Cockney   Что за костыль ? a = findcolor("0 0 1920 ...   28.5.2017, 0:24
cirus   Исправить тип данных, которые возвращают функции п...   29.5.2017, 0:36
DarkMaster   По факту это приводит к излишнему парсингу и прив...   29.5.2017, 2:45
Рудауда   Прошу помощи! написал простенький скриптик для...   29.5.2017, 21:29
dron4938   ArcheAge лог выдает ошибку (Клиент мертв) Правил...   29.5.2017, 21:37
Рудауда   Правильно выдает :lol: Так то оно так, но хоте...   29.5.2017, 22:34
dron4938   Так то оно так, но хотелось бы, что бы заработало...   29.5.2017, 22:53
Рудауда   Так ты сначала проверь простой скрипт какой-нить,...   29.5.2017, 23:09
dron4938   проверял на других программах, ок, только в АА не...   29.5.2017, 23:14
Cockney   А миксинг луа кода с пилотовским будет ? Если --l...   3.6.2017, 13:56
DarkMaster   А смысл? Я бы настоятельно рекомендовал переходит...   5.6.2017, 19:01
Cockney   Если планируется вообще отказаться от пилотного яз...   5.6.2017, 21:21
DarkMaster   А какие проблемы чтобы полностью отказаться от не...   5.6.2017, 23:25
Cockney   Проблемы с натяжкой : 1)--lua 2)качать длл 3)если ...   6.6.2017, 0:44
cirus   a = findimage("0 0 1920 1080 (C:...   6.6.2017, 2:38
veiron   есть где хэлп как пользоваться луа почитать? А то ...   6.6.2017, 9:51
cirus   Должно быть в 0 строке скрипта. Версия пилота 2....   6.6.2017, 12:17
veiron   Должно быть в 0 строке скрипта. Версия пилота 2....   6.6.2017, 12:28
cirus   Вопрос конечно идиотский, но всякое бывает. Надеюс...   6.6.2017, 12:34
veiron   Вопрос конечно идиотский, но всякое бывает. Надею...   6.6.2017, 12:51
cirus   Скрипты пишутся также. Просто синтаксис другой. [...   6.6.2017, 13:56
veiron   спасибо. а что луа лучше и быстрее чем пилот?   6.6.2017, 14:54
cirus   В луа значительно быстрее обработка данных и норм...   6.6.2017, 15:29
veiron   В луа значительно быстрее обработка данных и норм...   6.6.2017, 16:58
pet   Координаты предметов возвращаются относительно бэ...   27.6.2017, 23:33
WKnight   build 5 Подправил запуск скриптов при зажатии горя...   28.6.2017, 19:42
pet   С удовольствием проверю:) Где взять последний бил...   29.6.2017, 19:20
Cockney   Где взять последний билд? Build 005   29.6.2017, 21:32
pet   Build 005 Спасибо. Проверил - не работает. Возв...   29.6.2017, 22:31
WKnight   А можно этот набор в студию?   30.6.2017, 0:23
pet   Наборы поменялись. Вчера другие цифры были. back...   30.6.2017, 8:54
pet   Скажите, а сборщика мусора во встроенном Lua нет? ...   4.7.2017, 23:50
Cockney   Могу лишь предположить, что скрипт завершился, не ...   5.7.2017, 11:55
cirus   Комментарии поставленные таким способом не сохран...   16.7.2017, 12:09
WKnight   Fixed. Бетку попозже выложу.   16.7.2017, 18:09
cirus   Что на счёт команд clipboard, windpos, т. е. тех ч...   16.7.2017, 18:41
WKnight   Пилить надо... Но сейчас со временем напряг, как о...   16.7.2017, 21:31
cirus   На счёт синтаксиса findimage и findcolor в луа. Ск...   18.7.2017, 12:31
WKnight   Сейчас синтаксис в луа максимально приближен к пил...   19.7.2017, 18:52
DarkMaster   Есть. Работает самостоятельно. Можно вызвать вруч...   15.8.2017, 10:32
cirus   log clear log current_script active_script // всё...   3.9.2017, 15:39
WKnight   build 6 Исправил сохранение скриптов при комменти...   6.9.2017, 12:36
DarkMaster   Для каждой вкладки свой экземпляр машины?   6.9.2017, 12:46
WKnight   Да, так вроде изначально было.   6.9.2017, 12:56
WKnight   build 7 При вызове из Lua, команды 'getimage...   6.9.2017, 13:12
cirus   В 2.39 (не бета). set %get [1] LoadImage ...   6.9.2017, 15:45
DarkMaster   Там еще костыль, который блокирует нахождение карт...   6.9.2017, 18:25
cirus   А где оно? По ссылке обычная 2.39.   7.9.2017, 3:37
pet   http://uopilot.uokit.com/dlnight.php   7.9.2017, 10:20
DarkMaster   return вызванный из for приводит к ошибке при попы...   11.9.2017, 2:07
WKnight   Это типа "ночная" сборка. Ссылка на пар...   11.9.2017, 20:41
WKnight   build 10 Исправил ошибку, возникающую при прерыва...   11.9.2017, 21:19
2 страниц V  1 2 >


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

 

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