Yoko

All sides of Injection
It is currently 2025-10-09 14:11:32

All times are UTC+02:00




Post new topic  This topic is locked, you cannot edit posts or make further replies.  [ 369 posts ]  Go to page Previous 13 4 5 6 719 Next
Author Message
PostPosted: 2013-09-28 13:28:22 
Offline
User avatar

Joined: 2007-05-23 19:51:18
Posts: 197
стелс-инжект получается прям


Top
   
 
PostPosted: 2013-09-28 15:51:53 
Offline

Joined: 2011-06-11 19:54:23
Posts: 820
VeL wrote:
Очень нужные две функции для работы с журналом, неплохо было бы добавить)))

Code:
function InJournalBetweenTimes(Str : String; TimeBegin,TimeEnd : TDateTime) : Integer
поиск последней строки в журнале по слову (или по словам) во временном интервале

Code:
function WaitJournalLine(StartTime : TDateTime; Str : String; MaxWaitTimeMS : Integer) : Boolean
ожидание появления строки в журнале

А надо ли оно вообще?
Всегда через
Code:
t=0
repeat
   wait(100)
   t=t+1
until uo.injournal(str) or t>=maxt
делали и не жаловались)


Top
   
 
PostPosted: 2013-09-28 17:01:01 
Offline

Joined: 2013-08-09 00:13:57
Posts: 44
Зря, очень удобные штуки, во первых - не надо затирать строки в журнале, во вторых - возвращают результат...
Темболее почти во всех скриптах используется работа с журналом, а эти функции упростят и сократят скрипты...

Тогда вместо:
Code:
var t
var maxt = ...
uo.deletejournal(str)
t=0
repeat
   wait(100)
   t=t+1
until uo.injournal(str) or t>=maxt
if uo.injournal(str) then
. . .
end if

будет:
Code:
  if UO.WaitJournalLine(Now, str, maxt) then
  . . .
  end if

и не испортит журнал, можно будет работать с этой строкой дальше


Top
   
 
PostPosted: 2013-09-28 17:09:24 
Offline

Joined: 2011-06-11 19:54:23
Posts: 820
Quote:
if UO.WaitJournalLine(Now, str, maxt) then
Есть сервера, на которых сэйвы длятся по минуте, ато и больше, эта конструкция сломается во время сэйва, если задать maxt меньше 60к.
Что сократят - не спорю.
Тебе не запрещают работать со строкой после ее появления, чистишь же ты ее до цикла, а не после (это по-хорошему), да и например, где тебе нужна эта строчка в дальнейшем? Пример любой)
В крайнем случае - скопировать в буффер при появлении и дальше с ним работать...


Top
   
 
PostPosted: 2013-09-28 17:50:54 
Offline

Joined: 2013-08-09 00:13:57
Posts: 44
Ну WaitJournalLine в основном будет использоваться без условия, просто чтобы убрать эти ненужные циклы со счетчиком...

Вот кусок из авто-стрелки, где бы пригодилась одна из функций:
Code:
  . . .
  while not UO.Dead()
 
    if InJournalBetweenTimes('Des Sanct|Por Ort Grav|Ort Rel|Kal Ort Por|An Ex Por|Corp Por|Vas Ort Flam|Vas Ort Grav|Kal Vas Flam|Ort Sanct|In Vas Por', OldTime, UO.Timer()) then
      if (UO.GetGlobal('Enemy') == JournalSerial()) and (JournalColor() == '0x03B2') then
        CastMagicArrow()
        WaitForCast()
      end if
      OldTime = UO.Timer()
    else
      Wait(300)
    end if

  wend

  . . .


Начал писать макросы для ПВП, в которых постоянно приходится обращаться к журналу, но в инжекте скудный набор функций по работе с ним, приходится прикручивать костыли...

PS: Если не сложно, можно и добавить пару этих функций, я думаю против никто не будет)))


Top
   
 
PostPosted: 2013-09-28 18:03:29 
Offline

Joined: 2013-08-09 00:13:57
Posts: 44
Если возможно, добавить проверку на парализ UO.Paralyzed()


Top
   
 
PostPosted: 2013-09-28 18:38:41 
Offline

Joined: 2011-06-11 19:54:23
Posts: 820
Code:
   uo.deletejournal()
   var pos=InJournal('Des Sanct|Por Ort Grav|Ort Rel|Kal Ort Por|An Ex Por|Corp Por|Vas Ort Flam|Vas Ort Grav|Kal Vas Flam|Ort Sanct|In Vas Por')
   while not UO.Dead()
      pos=InJournal('Des Sanct|Por Ort Grav|Ort Rel|Kal Ort Por|An Ex Por|Corp Por|Vas Ort Flam|Vas Ort Grav|Kal Vas Flam|Ort Sanct|In Vas Por')
      if pos then
         if (UO.GetGlobal('Enemy') == uo.JournalSerial(pos-1)) and (uo.JournalColor(pos-1) == '0x03B2') then
            CastMagicArrow()
            WaitForCast()
         end if
         uo.setjournalline(pos-1,'')
      else
         Wait(300)
      end if
   wend
Как-то так, на 2 строки больше получится, чем в инж-стелсовском варианте, добавятся uo.deletejournal() и uo.setjournalline(pos-1,'')
По-прежнему сомневаюсь в необходимости добавления этого)

UO.Paralyze() - либо скриптом костыль, либо в инжекте - тот же костыль. Сервер не шлет флаг парализа клиенту.


Top
   
 
PostPosted: 2013-09-29 13:32:24 
Offline
User avatar

Joined: 2013-05-28 13:13:02
Posts: 149
Я тоже любил эти функции стелса :lol: если когда-нибудь пойму что там написано в script.dll то добавлю их :D

_________________
Русский Сервер Ultima Online High Seas Adventures
Legendary


Top
   
 
PostPosted: 2013-10-01 13:18:11 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Попробуйте, если получится, следующее
1) работа с передвижением гамповых окон
2) открытие статуса персонажа.

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
 
PostPosted: 2013-10-01 13:33:23 
Offline

Joined: 2011-06-11 19:54:23
Posts: 820
А можешь в личку скрипт на изю скинуть с передвижением гампов?
Статус бар – только если тем же костылем, который вы обсуждали в соседней теме) куда он в память клиенту пишется не нашел(


Top
   
 
PostPosted: 2013-10-01 13:39:26 
Offline
User avatar

Joined: 2012-12-31 00:17:09
Posts: 93
Juicy Fruit wrote:
А можешь в личку скрипт на изю скинуть с передвижением гампов?
Статус бар – только если тем же костылем, который вы обсуждали в соседней теме) куда он в память клиенту пишется не нашел(

открытие гампа в определенных координатах
Code:
nextcpos 1420 50

:mrgreen:

Quote:
contPos Перемещает верхний активный гамп в указанные экранные координаты
Синтаксис:
contPos {X-Coordinate} {Y-Coordinate}

:roll: ©Mirage


Top
   
 
PostPosted: 2013-10-05 14:53:28 
Offline
User avatar

Joined: 2012-12-31 00:17:09
Posts: 93
надоело пить рефрешку в пвп каждые 30 сек :oops:


Top
   
 
PostPosted: 2013-10-05 19:08:57 
Offline

Joined: 2013-05-17 10:38:53
Posts: 62
Один раз попробовал побегать и такая фигня получилась. Через некоторое время инжект тупо не отвечает на хоткеи, только релогин помог.

Вот еще борода вылезла: в списке скриптов висит функция, но я ее использовал 10 минут назад. Выбираю ее и нажимаю кнопку стоп, вылетает такая ошибка.


Attachments:
error.jpg
error.jpg [ 58.86 KiB | Viewed 5530 times ]
Top
   
 
PostPosted: 2013-10-12 16:22:09 
Offline
User avatar

Joined: 2013-05-28 13:13:02
Posts: 149
Обновление (12.10.13):

  • Добавлена поддержка сервера Abyss (вкладка Connection -> Encryption -> пункты Abyss и Asmut)
  • Добавлена поддержка четвертого параметра Finddistance в функцию FindType. Использование UO.FindType(Graphic, [Color], [Container], [Finddistance])
  • Добавлена функция uo.Flying() для новых клиентов >7.0.0.0, для определения статуса Гаргульи
  • Добавлен чекбокс Stamina Patch, для включения/выключения патча на стамину (пробегание через других персонажей)
  • Добавлен чекбокс FPS Patch, для ускорения анимации и увеличения ФПС клиента, аналог PvP Hardcore Mod в абиссте. Внимание, тестовая версия, имеет определённые баги!
  • Исправлена работа ilaunch при запуске через DualCore Launcher
  • Исправлена работа функции uo.Poisoned() для новых клиентов
  • Исправлен краш при установке чекбоксов Colored+Icons
  • Исправлена отрисовка заголовка окна на Win7 (больше нет необходимости включать классическую тему оформления окон)
  • Перенесены чекбоксы Pass hotkeys -> вкладка Hotkeys, Desktop Fix -> вкладка Connection
  • Удалены неиспользуемые чекбоксы Flush Log, Target XYZ fix, Permit Vars Loopback, Unset before set

    Script.dll:
  • Добавлен чекбокс Select last script at run - если галочка установлена в списке запущенных скриптов будет автоматически выбираться последний запущенный скрипт
  • Добавлен чекбокс Large Buttons. Если установлен - кнопки запуска, остановки и паузы скриптов будут большого размера. Были пожелания :D
  • Добавлена поддержка многомерных массивов, использование:
    Объявление массива mdim array_name[dim1]...[dimN]
    Передача матрицы array_name в функцию c именем sub_name: sub_name(&mdim array_name)
    Получение матрицы в качестве параметра функции sub sub_name(mdim array_name)
  • Добавлена функция SetArrayLength (var_name, length, [copy:1/0])
    Используется для копирования или изменения размеров массивов
    dim new_array = SetArrayLength(old_array, length, 1) - скопирует количество length элементов массива old_array в новый массив new_array. Элементы, которые не влезают в размер length обрезаются
    old_array = SetArrayLength(old_array, length) - изменит длину массива old_array, в случае уменьшения размера лишние элементы будут обрезаны
  • Добавлена функция ArrayContains(Array, Value). Проверяет массив Array на наличие элемента Value в нём. В случае нахождения возвращает первую найденную позицию. В случае отсутствия возвращает "-1"
  • Добавлена функция GetArrayLength(Array). Возвращает длину массива Array
  • Добавлен метод Append в класс file.
    Использование:
    f = file(Path)
    f.append()

Скачать полный установщик
Скачать zip архив


Update (15.09.2013):
  • Added "Abyss" server support (Connection tab -> Encryption -> Abyss or Asmut)
  • Added support of fourth Finddistance parameter in FindType function. usage: UO.FindType(Graphic, [Color], [Container], [Finddistance])
  • Added function uo.Flying() for new clients >7.0.0.0, to identify flying status of Gargoyle
  • Added Stamina Patch checkbox to enable/disable patch for stamina (passing through players/monsters)
  • Added FPS Patch checkbox, increases animation speed and client FPS, analogue to PvP Hardcode Mod in abysst. Warning: test version, contains several bugs!
  • Fixed ilaunch when starting through DualCore Launcher
  • Fixed uo.Poisoned() function for new clients
  • Fixed crash on "Colored+Icons" checkbox check
  • Fixed drawing in title under Windows 7 (no longer requires classic theme in system)
  • Moved Pass hotkeys checkboxes to Hotkeys tab, Desktop Fix to Connection tab
  • Deleted unused checkboxes: Flush Log, Target XYZ fix, Permit Vars Loopback, Unset before set

    Script.dll:
  • Added Select last script at run checkbox - if set, last runned script will be selected automatically
  • Added Large Buttons checkbox - if set, Run, Stop and Pause buttons will be larger in size (Was requested)
  • Added multidimensional array (matrix) support, usage:
    Array initialization: mdim array_Name[dim1]...[dimN]
    Transfer of matrix named array_name into function named sub_name: sub_name(&mdim array_name)
    Receiving of matrix as argument in function named sub_name: sub_name(mdim array_name)
  • Added SetArrayLength (var_name, length, [copy:1/0]) function
    Used for copying or change of array size
    dim new_array = SetArrayLength(old_array, length, 1) - would copy "length" elements of old_array array into new new_array array. Elements outside of length would be removed.
    old_array = SetArrayLength(old_array, length) - would change the length of the old_array array, in case of array length decrease, elements outside of length would be removed.
  • Added ArrayContains(Array,Value) function - checkes if "Array" contains element "Value" in it. Returnes index of first found element, otherwise -1
  • Added GetArrayLength(Array) function, returns length of "Array"
  • Added Append method to file class. Usage:
    f = file(Path)
    f.append()

Download full installer
Download as ZIP

_________________
Русский Сервер Ultima Online High Seas Adventures
Legendary


Top
   
 
PostPosted: 2013-10-12 20:30:49 
Offline

Joined: 2013-07-30 19:52:11
Posts: 6
Крутяк ребята! Огромное уважение и спасибо всем кто потрудился на славу.


Top
   
 
PostPosted: 2013-10-12 21:29:51 
Offline

Joined: 2013-05-17 10:38:53
Posts: 62
RL_ka а возможно добавить, команду этой кнопке и этой кнопке тоже команду:

Quote:
Добавлен чекбокс Stamina Patch, для включения/выключения патча на стамину (пробегание через других персонажей)

Quote:
Кнопка Status bars fix


Чтобы можно было из скриптов включать их. По аналогии с кнопками паузы в скрипте.

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


Top
   
 
PostPosted: 2013-10-12 22:03:24 
Offline
User avatar

Joined: 2006-12-08 10:51:50
Posts: 718
Location: Москва
Gatard wrote:
Еще хотелось, чтобы можно было самим назначить в закладке дисплей, типы определенный реагентов, банок алхимии. Также добавить скролы итд. Т.е чтобы я сам мог выбрать, чтобы я хотел отображать в панели наверху.


прям как в стелсе :roll: очень будет удобно, если и инжект такое заимеет :)


Top
   
 
PostPosted: 2013-10-12 22:29:11 
Offline
User avatar

Joined: 2005-01-13 07:20:54
Posts: 528
ФПС помедленней надо , гуд обновление.

_________________
все для альфы , [url=http://newvlad.nm.ru/prog]здесь[/url]
модернизация ремонт продажа игровых консолей
Sky: admirka1 Москва


Top
   
 
PostPosted: 2013-10-13 01:22:02 
Offline
User avatar

Joined: 2013-05-28 13:13:02
Posts: 149
Gatard wrote:
Еще хотелось, чтобы можно было самим назначить в закладке дисплей, типы определенный реагентов, банок алхимии. Также добавить скролы итд. Т.е чтобы я сам мог выбрать, чтобы я хотел отображать в панели наверху.


вкладка дисплей будет переписываться полностью, и таким образом будут учтены ваши пожелания, в следующих версиях 8)

_________________
Русский Сервер Ultima Online High Seas Adventures
Legendary


Top
   
 
PostPosted: 2013-10-13 02:02:54 
Offline

Joined: 2013-10-13 01:58:15
Posts: 6
Спасибо большое за труды)


Top
   
 
Display posts from previous:  Sort by  
Post new topic  This topic is locked, you cannot edit posts or make further replies.  [ 369 posts ]  Go to page Previous 13 4 5 6 719 Next

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited