Page 1 of 3

Как перезаписать последний труп ?

Posted: 2014-03-07 22:01:46
by some
Имею такой скрипт на лут :

Code: Select all

sub sLootTest()
   var lastbody
   var i
   var NumberOfItems = 7
   
   DIM Loot[7]
   ###VALUABLES###
   Loot[1] = '0x204E' ;Shroud
   Loot[2] = '0x1549' ;OpticalMask
   Loot[3] = '0x1515' ;Elven/Denying/Incognito-Cloak
   Loot[4] = '0x13FE' ;Katana
   Loot[5] = '0x108A' ;Ring
   Loot[6] = '0x1B78' ;White/BlackWood-Kite
   Loot[7] = '0x1B7A' ;WhiteWoodShield
   
   
   UO.Set('quiet','1')
   uo.set('finddistance','3')
   uo.findtype('0x2006','-1','ground')
   UO.UseObject('finditem')
   wait (100)
   lastbody = uo.getSerial('finditem')
   for i = 1 to NumberOfItems
      wait(100)
      uo.findtype(Loot[i],'-1',lastbody)
      if UO.GetQuantity('finditem') then
         uo.moveitem( 'finditem', 'all', 'my' )
         wait(100) ;
      endif
   next
   UO.Set('quiet','0')
   uo.hide(lastbody)
   UO.Resend()
   uo.ignore(lastbody)
endsub

До того как я прикрутил сюда хайд и игнор чар пытался вылутить последний труп .
Правильно ли я реализовал игнор последнего вылученного трупа ?

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 00:51:28
by Incorrect User
А в чем проблема собственно? Вроде все номрально. И не проще ли делать лут всех вещей и указать чтобы не брал только то что не нужно?

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:16:26
by some
Собственно лутит как то странно - не быстро чтоли . Просто сейчас такая тема пошла - что при зажиме сразу лутают веп и щит , тупо даже не режут .
Я хочу сделать также , чтобы максимально быстро лутал . В какую сторону смотреть ?

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:20:31
by Incorrect User
Вот и я тебе о чем говорю, не нужно искать определенные предметы, ты его ищешь а его там нет, а на все это уходит время это все время, нужно брать все подряд что нашел исключив предварительно ненужные вещи типа регов бутылок пустых и тд. Задержки уменьшить никак.

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:25:16
by some
есть пример скрипта ? я помню что писал похожий, там вроде еще волосы надо исключать и какие то невидимые штуки =)))

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:32:28
by Incorrect User
Исключить нужно только волосы. Дам свой лут, там исключены волосы + не берет реги и некоторые шлак бутылки.

Code: Select all

sub Loot()
   var box, find = 1, notake = "0x203B 0x203C 0x203D 0x203E 0x203F 0x204A 0x204B 0x204C 0x204D 0x2040 0x2041 0x2042 0x2043 0x2044 0x2045 0x2046 0x2047 0x2048 0x2049 0x09F1 0x09B9 0x0F0E 0x0F85 0x0F7B 0x0F8C 0x0F8D 0x0F84 0x0F86 0x0F88 0x0F7A 0x0F0B 0x0F07"
   repeat
      uo.findtype("0x2006", -1, "ground", 2)
      if uo.findcount() then
         box = uo.getserial("finditem")
         uo.useobject(box)
         wait(100)
         repeat
            uo.findtype(-1, -1, box)
            if uo.findcount() and not Instring(uo.getgraphic("finditem"), notake) then
               uo.moveitem("finditem", 0, "backpack")
               wait(100)
            else
               if uo.findcount() then
                  uo.ignore("finditem")
               end if
               if not uo.findcount() then
                  find = 0
               end if
               wait(100)
            end if
         until find == 0
         uo.ignore(box)
      else
         box = 0
      end if
   until box == 0
   uo.print("Закончил!")
end sub

И отдельно вставь куда-то Instring, нужна для работы скрипта

Code: Select all

sub Instring(substr, string)
   var str, i
   for i = 0 to len(string) - 1
      str = mid(string, i, len(substr))
      if str == substr then
         return 1
      end if
   next
   return 0
end sub

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:36:57
by Incorrect User
Да, и он будет искать еще труп после того как полутает тот что нашел и будет пытаться лутать и его, если не найдет больше скрипт офается.

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:39:40
by some
Спасибо , прямо сейчас и протестирую !
а какая версия инжекта ? а то у меня даже труп не открывает , пишет ЗАКОНЧИЛ! и все

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:49:06
by Incorrect User
Свежую инжу всегда смотрим тут viewtopic.php?f=1&t=17391 А если пишет закончил значит труп заигнорен уже.

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:50:50
by some
1403.02 кинул в пак тестового чара шруду - не слутал . галки : лайт и ТВИ включены.

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:52:32
by Incorrect User
Труп открыл?

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:53:47
by some
я сейчас перепроверил на мобах человекоподобных - лутает оче быстро , труп не открывает

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 02:55:03
by Incorrect User

Code: Select all

uo.useobject(box)
         wait(100)

wait(100) измени на 500 например.

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 13:29:49
by some
Вести с тестовых полей :
сколько я не мучился - трупы персов ( людей ) он не лутает .
трупы нпс гуманоидов - лутает очень достойно , но иногда клиент зависает . из -за чего ? задержка на перемещения вещей ?
в чем может быть проблема что не лутает именно трупы игроков ?

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 14:39:31
by Incorrect User
У всех трупов тип 0х2006 будь то моб поэтому разници нет, человек или еще кто. У меня лутает всех, все в порядке. Крашей при луте ни разу не было.

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 15:53:46
by some
а у меня иногда виснет клиент , помогает перезаход , может в галках дело ?

Re: Как перезаписать последний труп ?

Posted: 2014-03-08 16:10:33
by Incorrect User
Ну галки все нормально работают, но не включай Clear Memory и Status Bars Fix. Еще может из за интернета... поставь после moveitem не 100 а 200 задержку, остальное не трогай. Вообще, если логи инжекта не сохраняешь то галки поставь: Undead, Premit Vars Loopback, Light, Autostart, Track World Items и всё.

Re: Как перезаписать последний труп ?

Posted: 2014-03-14 02:02:20
by some
Перепроверил уже раз 100 - лутает только человекоподобных мобов :D
могу видео записать
в чем может быть дело , если трупы везде одинаковые?

Re: Как перезаписать последний труп ?

Posted: 2014-03-14 03:33:45
by Incorrect User
Я же тебе говорю, у меня лутает и людей и все подряд.

Re: Как перезаписать последний труп ?

Posted: 2014-03-15 01:00:06
by Incorrect User
А видео замути, я хоть посмотрю что ты и как делаешь, может поможет. Момент убийства и начала лута желательно чтобы был.