Injection 2014 !

General Injection issues

Moderators: Murderator+, Murderator

Rodion
Posts: 7
Joined: 2014-06-19 22:47:35

Re: Injection 2014 !

Post by Rodion »

я скачал в Yandex программу Restorator и расшифровал ДЛЛ с помощью неё... правда не могу из этой программы ничего достать...
RL_ka
Posts: 149
Joined: 2013-05-28 13:13:02
Contact:

Re: Injection 2014 !

Post by RL_ka »

Rodion wrote:я скачал в Yandex программу Restorator и расшифровал ДЛЛ с помощью неё... правда не могу из этой программы ничего достать...


Там не одна ДЛЛ.
Одна расшифровывается легко, но не содержит нужного кода. Другая не расшифровывается так просто.
Русский Сервер Ultima Online High Seas Adventures
Legendary
grundick
Posts: 258
Joined: 2006-11-25 17:44:44

Re: Injection 2014 !

Post by grundick »

Парни, поюзал ходилку pmove. У меня такое впечатление создалось, что стоимость диагонального шага вы считаете выше ( в 1.41) стоимости ортогонального шага.
Ходит как-то угловато...
Juicy Fruit
Posts: 820
Joined: 2011-06-11 19:54:23

Re: Injection 2014 !

Post by Juicy Fruit »

Вполне возможно, что сейчас стоймость для всех направлений одинаковая.
Нормальную ходилку так и не запилил(
VeL
Posts: 44
Joined: 2013-08-09 00:13:57

Re: Injection 2014 !

Post by VeL »

Есть одна очень неприятная бага с UO.Ignore()

Например: находим моба через UO.FindType(), игнорим его UO.Ignore(), убегаем за несколько экранов, снимаем игнор UO.IgnoreReset(), возвращаемся обратно к мобу, снова поиск UO.FindType() и глюк в 'finditem' значение 0xFFFFFFFF

Еще пример: находим руну, игнорим, марчим, снимаем игнор, снова поиск и опять в 'finditem' значение 0xFFFFFFFF,
даже вроде если перед марком снять игнор, опять результат испорчен

Наверное если объект в игноре, данные по нему перестают обновляться, может дело в этом...

Еще бывает, что находит чаров, которые рядом сделали рекол или логаут...
Venushja
Posts: 6
Joined: 2014-07-20 22:43:29

Re: Injection 2014 !

Post by Venushja »

Hello, coul you anybody post source code this new injection please? I try repair czech external program to UO but I absolutely don't know how fix program for new clients (> 6.0.1.7?) For client which sending login packet 0xEF (program is make for clients 2.xx but 6.0.1.1 works too) sending me error ... Program show me this error

Code: Select all

Phoenix.Communication.SocketException: Part predefined messages are not supported.
  at Phoenix.Communication.UltimaSocket.Send(Int64 socket, Byte[] buff, Int32 len, Int32 flags) in e:\Phoenix_Source\src\Phoenix\Communication\UltimaSocket.cs:line 316
  at Phoenix.Communication.CommunicationManager.OnSend(Int64 s, Byte[] buff, Int32 len, Int32 flags) in e:\Phoenix_Source\src\Phoenix\Communication\CommunicationManager.cs:line 186
  at ComInterop.ComObject.ComInterop.IComObject.OnSend(Int64 socket, Byte[] buff, Int32 len, Int32 flags) in e:\Phoenix_Source\src\Phoenix\ComInterop\ComObject.cs:line 142
Phoenix.Communication.LoginSocket dump:
Socket: 1816 Address: 217.11.225.196,2593
Seed: 0
Predefined messages pending: True
Client encryption: UOEncryption.Encryption object using No encryption for encryption and No encryption for decryption.
Server encryption: UOEncryption.Encryption object using No encryption for encryption and No encryption for decryption.
 
 
Phoenix->Client: No messages pending.
Phoenix->Server: No messages pending.
 
Current data:
Packet id: 0xEF; 1 bytes:
EF                                                                        ï


But with old clients working fine (as yoko injection before because program is build on old injection core (native, etc...)) I think that problem is in native something with buffer but I don't know. Where is problem? Please help me I am desperate.
Juicy Fruit
Posts: 820
Joined: 2011-06-11 19:54:23

Re: Injection 2014 !

Post by Juicy Fruit »

See injection_log.txt (with Verbose Logging checked checkbox on main tab and select ClientVersion >6.0.5 on connection tab) after connect to auth server.
First BYTE 0xEF - greeting
BYTE[4] - IP (Seed for login crypt)
BYTE[16] - I don't remember what is it, looking on the Internet.
tyca7
Posts: 125
Joined: 2012-12-22 19:14:29
Contact:

Re: Injection 2014 !

Post by tyca7 »

У Меня проблема, каждый раз когда второе, третье, окно пытаюсь открыть оно не успевает открыться, сразу закрывается, пишет прекращена работа клиента.. И так раз 10 потом открывается, что может быть?

еше вопрос кто то DualCore Launcher переделал под новый инжект?
Last edited by tyca7 on 2014-07-22 16:04:20, edited 1 time in total.
Venushja
Posts: 6
Joined: 2014-07-20 22:43:29

Re: Injection 2014 !

Post by Venushja »

Juicy Fruit wrote:See injection_log.txt (with Verbose Logging checked checkbox on main tab and select ClientVersion >6.0.5 on connection tab) after connect to auth server.
First BYTE 0xEF - greeting
BYTE[4] - IP (Seed for login crypt)
BYTE[16] - I don't remember what is it, looking on the Internet.


I know but I problem elsewhere. Program with old client normaly working, but new clients send me only 1 byte (no more) if normaly send 21bytes I don't deal with it ...
Problem is that sending me only 1byte (0xEF) no more :( And this problem maybe is in native (winsocks maybe) I really don't know but as old Injection (with client 6.0.1 working fine but with 6.0.7 no)
CxC
Posts: 93
Joined: 2012-12-31 00:17:09

Re: Injection 2014 !

Post by CxC »

:?: :|
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Injection 2014 !

Post by Mirage »

Недоумеваю по поводу недоумения :)
Если ты про предшествующий пост то у него проблемы с запуском редкоземельного клиента.
CxC
Posts: 93
Joined: 2012-12-31 00:17:09

Re: Injection 2014 !

Post by CxC »

Mirage wrote:Недоумеваю по поводу недоумения :)
Если ты про предшествующий пост то у него проблемы с запуском редкоземельного клиента.

я по поводу того, что "хватит работать налево" :?
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Injection 2014 !

Post by Mirage »

я вот жду когда Джусси допилит заплатку на массивы чтобы не надо было для 10 предметов прописывать dim item[100500]. А в остальном вроде нормально все.
CxC
Posts: 93
Joined: 2012-12-31 00:17:09

Re: Injection 2014 !

Post by CxC »

Mirage wrote:я вот жду когда Джусси допилит заплатку на массивы чтобы не надо было для 10 предметов прописывать dim item[100500]. А в остальном вроде нормально все.

попробуй вручную поработать с добавлением\ренеймом объектов, типов. Попробуй побегать на скрипте лута, в котором в конце есть игнор, побегать с полчасика-часик. Ну и баг с отрисовкой дисплея, из-за которого инжа летит к чертям.

Еще заметил, что мессаги из Пати инжект не видит )
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Injection 2014 !

Post by Mirage »

ну хз, может я просто чем то не пользуюсь. У меня инжект по типам лутит трупы, за 2-3 часа охоты и оттаскивания мусора в сундук вроде не падает. Игноры естественно есть куда без них. Крафт скрипт работает на указании объекта. Тоесть тыкаешь в инструменты, сырье, контейнеры...
Вот конкретно регулярный краш ловишь когда оттаскиваешь на курсоре в сумке кучу предметов (руинки на бесте положим). Набиваешь 200 штук, из каждых 10 НПС делает 1 более высокого класса. Естественно сыпятся под ноги. Когда подбираешь упавшие - клиент складывается. Но это редко происходит. Иногда перестает искать типы предметов и зверьков вокруг - можно визуально различить когда в меню наверху все реги в 0 переходят. Закономерности не поймал. может за 10 минут 2 раза вальнуться, а можно 5 часов проиграть и ни разу не поймать. Я такие косяки к багам не отношу :) Баг для меня это то что регулярно и можно поймать. А так - воля бога и вспышки на солнце.
CxC
Posts: 93
Joined: 2012-12-31 00:17:09

Re: Injection 2014 !

Post by CxC »

Mirage wrote:ну хз, может я просто чем то не пользуюсь. У меня инжект по типам лутит трупы, за 2-3 часа охоты и оттаскивания мусора в сундук вроде не падает. Игноры естественно есть куда без них.

хз, вроде как скрипт при резке трупа пытается кинуть таргет на несуществующий (возможно давно заигноренный) ид, естественно выскакивает "кант си"
Mirage wrote:Вот конкретно регулярный краш ловишь когда оттаскиваешь на курсоре в сумке кучу предметов (руинки на бесте положим). Набиваешь 200 штук, из каждых 10 НПС делает 1 более высокого класса. Естественно сыпятся под ноги. Когда подбираешь упавшие - клиент складывается. Но это редко происходит.

вот это тоже было, вроде как исправили :)
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Injection 2014 !

Post by Mirage »

На прошлой неделе делал 3 штуки форсы. Не исправили ;)
Резка моя или твой скрипт? Я свой чутка подкорректировал, все лень обновить пост. Надо перезаписать будет.

Досадно что все эти свистелки перделки с перемещением предметов с динамической паузой в определенный контейнер в определенную координату сводятся к банальному грабу на паузе 500 всех предметов.
CxC
Posts: 93
Joined: 2012-12-31 00:17:09

Re: Injection 2014 !

Post by CxC »

Mirage wrote:На прошлой неделе делал 3 штуки форсы. Не исправили ;)
Резка моя или твой скрипт? Я свой чутка подкорректировал, все лень обновить пост. Надо перезаписать будет.

Досадно что все эти свистелки перделки с перемещением предметов с динамической паузой в определенный контейнер в определенную координату сводятся к банальному грабу на паузе 500 всех предметов.

но это старая версия, скину новую с домашнего компа

Code: Select all

   UO.Set('finddistance', '2')
   
   UO.FindType(body,'-1','ground')
   if UO.FindCount()>0 and Uo.GetDistance('finditem')<=2 then 
      uo.useobject('finditem')
      wait(200)
      corpse = uo.getSerial("finditem")
      uo.waittargetobject(corpse)
      uo.usetype(nozh)
      wait(600)
      uo.warmode(1)
      for a=1 to 38
         repeat
            uo.findtype(R[a],"-1",corpse)
            if UO.FindCount()>0 then
               if Uo.GetDistance(corpse)<=2 then
                  UO.Grab("0","finditem") 
                  wait(300)
               else
                  waitfowcorpsedistance(corpse)
               end if
            end if
         until UO.FindCount()<1
      next
      PUTLoot(-1,  '0x0991', corpse, 'backpack') ; руин цвет
      uo.forget(corpse)
      UO.Ignore(corpse)
   else
      UO.Exec('terminate all')
   end if
   uo.print ('Готово')
end sub


заворот с фогет - игнор немного исправляет описанный ранее косяк, но с фогетом неудобно )
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Injection 2014 !

Post by Mirage »

Ну вон у тебя там for a=1 to 38 - на нем бывают как раз косяки. какой нито 10 символ выбивает - после ничего уже не будет работать.

А так не работает? Зачем фогет, терминат...

Code: Select all

  UO.Set('finddistance', '2')
   
   UO.FindType(body,'-1','ground')
   if UO.FindCount()>0 and Uo.GetDistance('finditem')<=2 then 
      uo.useobject('finditem')
      wait(300)
      corpse = uo.getSerial("finditem")
      uo.waittargetobject(corpse)
      uo.usetype(nozh)
      wait(500)
      uo.warmode(1)
      for a=1 to 38
         repeat
            uo.findtype(R[a],"-1",corpse)
            if UO.FindCount()>0 then
               if Uo.GetDistance(corpse)<=2 then
                  UO.Grab("0","finditem") 
                  wait(350) ; тут чуть дольше надо а лучше проверку на перемещение поставить
               else
                  waitfowcorpsedistance(corpse)  ; хм  :roll:
               end if
            end if
         until UO.FindCount()<1
      next
      PUTLoot(-1,  '0x0991', corpse, 'backpack') ; руин цвет
 ;     uo.forget(corpse)
      UO.Ignore(corpse)
;   else
;      UO.Exec('terminate all')
   end if
;   uo.print ('Готово')
end sub


я щаз пользуюсь чем то типо такого:


Code: Select all

#### в автозапуск запихать###
sub Lootrunning()
   uo.setGlobal("running",1)
end sub
################
Sub REZ()  ; запускаемый скрипт
   UO.Set('quiet','1')
   if val(uo.getGlobal('running'))==1 then
      uo.setGlobal('running',2)
      uo.findtype(body, -1, 'ground', 2) ; новая фикша - ищет на указанном растоянии
      if uo.findcount() then
         corpse = uo.getSerial("finditem")
         UO.WaitTargetObject(corpse)
         ;UO.UseType(NCleaver, '0x0483')
         UO.UseType(Cleaver)
         wait(400)
         uo.setGlobal('running',1)
         Loot(corpse)
      endif
   endif
   uo.setGlobal('running',1)
   UO.Set('quiet','0')
end sub
Sub Loot(corpse)
   ;uo.ignorereset()
   UO.Set('quiet','1')
   if val(uo.getGlobal('running'))==1 then
      uo.setGlobal('running',2)
      IF Uo.GetDistance(corpse) <= 3 then
         uo.useobject(corpse)
         wait(300)
         IgnorHair(corpse) ; игнорим волосы - внешняя процедура, тут нет в примере.
         PUTLoot('-1', '-1', corpse, 'backpack','','','')   ; щаз все пригождается.
         ;  PUTLoot('0x1869', '-1', corpse, 'backpack','','','')
         ;  PUTLoot(hides, '-1', corpse, 'backpack','','','')
         ;  PUTLoot('0x09F1', '-1', corpse, 'backpack','','','')
      endif
      UO.Hide(corpse) ; спрятали с глаз долой
      UO.Ignore(corpse) ; забыли
      uo.setGlobal("running",1)
   endif
   UO.Set('quiet','0')
end sub

На хоаткеях терминатор, игнорересенд, автолоад (установка глобалок на начальное значение) для повторного облута.
CxC
Posts: 93
Joined: 2012-12-31 00:17:09

Re: Injection 2014 !

Post by CxC »

Mirage wrote:Ну вон у тебя там for a=1 to 38 - на нем бывают как раз косяки. какой нито 10 символ выбивает - после ничего уже не будет работать.

старая версия скрипта, всё перебито по принципу

PUTLoot(-1, '0x0991', corpse, 'backpack') ; руин цвет


Проблема вот в чем:
Захожу в уо, иду на пвм. Бегаю нормально примерно 30 минут (200-300 мобов). Т.е. убил, порезал, полутил, заигнорил. Через некоторое время скрипт начинает тупить, а именно: находит тип трупа на земле, но таргет от ножа кидает не на какой-то левый ид, получается "кант си таргет". Постоишь так возле трупа, потыкаешь скрипт, с 4-5 раза порежет и полутит. Вариант тот, что рядом еще есть несколько трупов и не дотягивается - отвергается сразу ) Решается это перезаходом в игру и опять некоторым временем на ПвМе )


Mirage wrote:А так не работает? Зачем фогет, терминат...

терминат мне нужен
фогет - извращались с Фруктом )))) с такой конструкцией не проявляется этот глюк больше времени (а может просто так кажется) :mrgreen:

Mirage wrote:waitcorpsedistance(corpse) ; хм :roll:

разгружаем инжу :P немного изменил название, недосмотрел )))))

Code: Select all

sub waitcorpsedistance(corpse)
   var j
   for j=0 to 500
      if Uo.GetDistance(corpse)<=2 then
         return
      endif
      wait(500)
   next
end sub


твой скрипт написан по моему принципу, только у меня нет глобалок )
Post Reply