Готовые скрипты Injection, Просьба воздержаться от флейма

Старший Лейтенант (5006416)15 лет
Администратор
Сообщений: 19675
Рег. 31.07.2009
13 октября 2012 04:19
Сообщение #1
В этой теме прошу без обсуждений, без комментариев, без вопросов и любого иного оффтопа выкладывать рабочие макросы для инжекта, проверенные на нашем шарде, которыми вам не жалко поделиться. Учитывайте, что скрипты, содержащие команду UO.Moveitem, не могут считаться рабочими, так как эта команда некорректно работает на нашем сервере. Заменяйте её на UO.Grab. Сообщения должны быть должным образом оформлены:

Название скрипта
Примечания, если необходимо
Код скрипта


Скачать Injection_09_08_2015.rar
Популярный набор скриптов от Zombie

--------------------
Генерал Майор (23663900)12 летИнквизитор
Inquisitor
Сообщений: 2468
Рег. 12.08.2012
13 октября 2012 12:25
Сообщение #2
Скрипт на лут
Вместо дагера использует нож бутчера, что значительно экономит время

sub loot()
DIM R[15]
var a
R[1] = '0x0EED';gold
R[2] = '0x0F82';drag blood
R[3] = '0x09B5';EKO
R[4] = '0x1E89';drag meat
R[5] = '0x1078';skin
R[6] = '0x0F87';eye
R[7] = '0x0F83';Crossbow Bolt
R[8] = '0x0F3F';Arrow
R[9] = '0x0F90'; dedwood
R[10] = '0x1869'; enchant
R[11] = '0x0F78'; batwings
R[12] = '0x0F7E'; bones
R[13] = '0x1CED'; heart
R[14] = '0x0E34'; fertil dirt
R[15] = '0x1BD1'; periy
UO.UseObject('lastcorpse')
uo.waittargetobject('lastcorpse')
uo.usetype(0x13F6)
wait(500)
for a=1 to 15
uo.findtype(R[a],"-1","lastcorpse")
if UO.FindCount()>0 and Uo.GetDistance("lastcorpse")<=2 then
UO.Grab("0","finditem")
wait(1100)
end if
wait(10)
next
wait(300)
if uo.count('0x1078') then
uo.waittargettype('0x1078')
wait(100)
endif
wait(300)
end sub
Генерал Майор (23663900)12 летИнквизитор
Inquisitor
Сообщений: 2468
Рег. 12.08.2012
13 октября 2012 12:26
Сообщение #3
Скрипт на сбор регов (хлопка и прочего)

sub Sbor()
UO.AddType('food')
wait(500)
while UO.Targeting()
wait(200)
wend
UO.Set('finddistance','3')
UO.FindType('food','-1','ground')
while UO.FindCount()
UO.UseObject('finditem')
UO.FindType('food','-1','ground')
UO.Ignore('finditem')
wend
UO.Ignorereset()
end sub
Генерал Майор (23663900)12 летИнквизитор
Inquisitor
Сообщений: 2468
Рег. 12.08.2012
13 октября 2012 12:26
Сообщение #4
Трекинг игроков

sub tracking()
uo.useskill('Tracking')
UO.WaitMenu('Tracking','Players')
end sub
Генерал Майор (23663900)12 летИнквизитор
Inquisitor
Сообщений: 2468
Рег. 12.08.2012
13 октября 2012 12:27
Сообщение #5
Тинкер-Бутылки
Делает из того, что есть в паке

sub Tinkering()
  uo.cancelmenu()
  uo.automenu('Tinkering','Miscellaneous')
  uo.automenu('Miscellaneous','Empty Bottle')
  while UO.Count('0x1BEF')>3
  UO.DeleteJournal()
  UO.UseType('0x1EBC')
  while NOT UO.InJournal("You put") AND NOT UO.InJournal("failed")
  wait(300)
  wend
wend
end sub
Генерал Майор (23663900)12 летИнквизитор
Inquisitor
Сообщений: 2468
Рег. 12.08.2012
31 октября 2012 17:04
Сообщение #6
Спаринг. Запускать скрипт на обоих чарах участвующих в спаринге.


sub Sparring()
var oppHpThreshold = 50/100 #????? ?? ?????????, ??? ??????? ????????
var selfHpThreshold = 50/100 #????? ?????? ??, ??? ??????? ????????

uo.AddObject('opponent')
while uo.targeting()
wait(100)
wend

var done = 0
var oppHpLow = 0
var selfHpLow = 0
var selfX = uo.GetX()
var selfY = uo.GetY()
var oppX = uo.GetX('opponent')
var oppY = uo.GetY('opponent')
var dx = oppX - selfX
var dy = oppY - selfY

var Rhand = uo.GetGraphic(uo.ObjAtLayer('Rhand')) #??? ??????? ? ?????? ???? (0x0000 ???? ?????)
var Lhand = uo.GetGraphic(uo.ObjAtLayer('Lhand')) #??? ??????? ? ????? ???? (0x0000 ???? ?????)

uo.WarMode(1)
uo.Attack('opponent')

repeat

if (uo.GetHP('opponent') < uo.GetMaxHP('opponent') * oppHpThreshold) then
oppHpLow = 1
end if

if (uo.Life < uo.str * selfHpThreshold) then
selfHpLow = 1
end if

#???? ? ????-?? ???? ??, ?????? ? ???????
if (oppHpLow or selfHpLow) then
Step(-dx, -dy)
uo.WarMode(0)

if (oppHpLow) then
HealOpponent()
oppHpLow = 0
end if

if (selfHpLow) then
HealSelf()
selfHpLow = 0
end if

Step(dx, dy)
uo.WarMode(1)
uo.Attack('opponent')
end if

wait(500)

#?????? ?? ?????? ??????? ???
if (not uo.WarMode()) then
uo.WarMode(1)
uo.Attack('opponent')
end if

#???? ? ?????? ???? ?? ??, ??? ???? ? ????? ??????,
#? ???? ? ????? ?????? ??? ???-?? ????, ???????? ????? ???? ?????
#???? ????-?? ?????? ???, ?????? ???? ??????????

if (uo.GetGraphic(uo.ObjAtLayer('Rhand')) <> Rhand and Rhand <> '0x0000') then
uo.FindType(Rhand)
if (uo.FindCount()) then
uo.Equipt('Rhand', Rhand)
uo.print('Equip Rhand device')
else
done = 1
uo.print('no more Rhand devices')
end if
end if

#?????????? ?????? ????
if (uo.GetGraphic(uo.ObjAtLayer('Lhand')) <> Lhand and Lhand <> '0x0000') then
uo.FindType(Lhand)
if (uo.FindCount()) then
uo.Equipt('Lhand', Lhand)
uo.print('Equip Lhand device')
else
done = 1
uo.print('no more Lhand devices')
end if
end if

#???????? ?? ????????
if (uo.GetHP('opponent') == 0 or uo.Life == 0) then
done = 1
uo.print('somebody is dead')
end if
#???? ????? ?????????, ???????????
if (uo.B == 0) then
done = 1
uo.print('no more bandages')
end if

until done

Step(-dx, -dy)
uo.WarMode(0)
uo.print('Done traning')

end sub

#---------------------------------------------
#??????????????? ???????

Sub HealOpponent()
uo.print('heal opponent')
repeat
uo.waittargetobject('opponent')
uo.usetype('0x0E21') #?????
wait(5000)
until uo.getHP('opponent') == uo.getMaxHP('opponent')
uo.print('opponent heal complete')
end Sub

Sub HealSelf()
uo.print('heal self')
repeat
uo.bandageself()
wait(5100)
until uo.Life == uo.STR
uo.print('self heal complete')
uo.usetype(0x097B)
wait(100)
end Sub

Sub Step(dx, dy)
var direction
dim directions[9]
directions[1] = 8
directions[2] = 7
directions[3] = 4
directions[4] = 9
directions[5] = 5
directions[6] = 1
directions[7] = 6
directions[8] = 3
directions[9] = 2
var idx = (sign(dx) + 1) * 3 + (sign(dy) + 1) + 1

uo.AddStep(directions[idx])
end Sub

Sub sign(n)
if (n < 0) then
n = -1
end if

if (n > 0) then
n = 1
end if

return n
end Sub
Генерал Майор (23663900)12 летИнквизитор
Inquisitor
Сообщений: 2468
Рег. 12.08.2012
31 октября 2012 17:05
Сообщение #7
Прокачка магии с медитацией.

sub MA()
While UO.WEIGHT < 30000
if UO.Mana >10 then
UO.Cast('Poison', 'self')
wait(4500);
else
while UO.Mana<UO.Int
UO.UseSkill("Meditation");
wait(3000);
wend
endif
wend
end sub
Генерал Майор (23663900)12 летИнквизитор
Inquisitor
Сообщений: 2468
Рег. 12.08.2012
31 октября 2012 17:06
Сообщение #8
Кастует пойзон филд перед собой. Рассчитано для прокачки хилинга для 2го чара.

sub Poison()
var k,z
z=UO.GetZ("self")
repeat
UO.WaitTargetTile("1341",STR(UO.GetX()+0),STR(UO.GetY()-2),str(z))
uo.Cast('Poison Field')
  Wait(6000)
   UO.UseSkill("Meditation")
   k=0
   repeat
     Wait(200)
     k=k+1
   until uo.mana==100 or k==50
  Wait(180000)
until uo.dead()
end sub
Старший Лейтенант (6395350)12 лет
Necromancer
Сообщений: 5530
Рег. 27.08.2012
27 ноября 2012 17:58
Сообщение #9
Скрипт на открытие сундуков Исиды, отмычки должны быть в паке
ps: делал на скорую руку, не стал мудрить

sub sunduk()
   UO.Set('finddistance','2')
   UO.FindType('0x0E43','-1','ground')
   if UO.FindCount() > 0 then
      uo.waittargetobject('finditem')
      uo.usetype('0x14FB')
      wait(300)
   end if
end sub
Старший Лейтенант (6395350)12 лет
Necromancer
Сообщений: 5530
Рег. 27.08.2012
27 ноября 2012 22:35
Сообщение #10
прокачка медитации, если взять щит в руки - качает парринг )

sub ProMed()
repeat
    UO.Cast('Magic Arrow', 'self')
    wait (2000)
       while UO.Mana<UO.Int
          UO.UseSkill('Meditation')
          wait(2000)
       wend
until uo.dead()
end sub
Старший Лейтенант (6395350)12 лет
Necromancer
Сообщений: 5530
Рег. 27.08.2012
28 ноября 2012 23:49
Сообщение #11
рисует заданные свитки при наличии бланк скроллов и регов, если не хватает заданного количества маны - медитирует

sub Summon()
  repeat
     if UO.Mana<14 then
        mana()
     end if
     uo.usetype ('0x0E34')
     wait (1000)
     UO.WaitMenu ('Spell Circles', 'Fifth Circle', 'Spell Circle 5', 'Summon Creature')
        repeat
          wait(1000)
        until uo.injournal ("put") or uo.injournal ("fail")
     uo.deletejournal()
  until uo.dead()
end sub

Sub mana()
  while UO.Mana<UO.Int
     UO.UseSkill('Meditation')
     wait(5000);
  wend
end sub
12 лет
Ranger
Сообщений: 119
Рег. 29.10.2012
30 ноября 2012 07:45
Сообщение #12
Тинкер,берет из сундука инги крафтит бутылки,готовый продукт кидает обратно в сундук!

#####################################################################
; Tinker. v.1.00b (c) Edred
;
; Чар берет из сундука инготы, крафтит из них бутылки
; и складывает эти бутылки в этот же сундук.
; Если инги закончились - выход.
;
sub tinker()
   VAR Sunduk = '0x402D047A'      ; Сериал сундука
   VAR Ingi = '0x1BEF'        ; Тип ингов
   VAR Instrum = '0x1EBC'        ; Тип инструмента тинкера
   VAR Bottle = '0x0F0E'        ; Тип бутылки
   VAR Kolvo = 300        ; Брать ингов
   VAR k = 0
   WHILE NOT UO.Dead()
      UO.FindType( Ingi, -1, Sunduk )  ; Ищем инги в сундуке
      If UO.FindCount() == 0 Then
         UO.Print("Iron Ingots not found, script terminated")
         return
      Endif
      UO.Grab( Str( Kolvo ), 'finditem' )
      wait( 2000 )
      While UO.Count( Ingi ) > 0
        ; Пока в паке есть инги
         UO.Print('Ostalos ' + Str( UO.Count( Ingi ) ) + ' ingots' )
         UO.DeleteJournal()
         UO.CancelMenu()
         UO.WaitMenu ('Tinkering', 'Tools', 'Tools', 'empty bottle' )
         UO.UseType( Instrum )
         k = 0
         while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 30 )
            k = k + 1
            wait(500)
         wend
         if UO.Count( Bottle ) > 0 then
            UO.FindType( Bottle, -1, -1 )
            UO.MoveItem( 'finditem', 0, Sunduk )
            wait( 1000 )
            UO.Print( 'Bottle moved' )
         end if
      Wend
   Wend
end sub
Старший Лейтенант (6395350)12 лет
Necromancer
Сообщений: 5530
Рег. 27.08.2012
2 декабря 2012 21:05
Сообщение #13
Продает ВСЕ итемы дереву из мешка, указанного по таргету

sub derevo()

var printcolour = '1069'

UO.AddObject('bag')
uo.charprint(printcolour, 'Выбери сумку с хламом' )
wait(500)
  while UO.Targeting()
  wait(200)
  wend
uo.useobject('bag')
wait(1000)

repeat
  UO.FindType(-1,-1,'bag')
  if UO.FindCount() > 0 then
    UO.Grab("0","finditem")
    UO.WaitTargetObject('finditem')
    UO.UseFromGround('0x11C9')  
    wait(1000)
    else
    uo.charprint(printcolour, 'Все продано' )
    return
  end if
until UO.Dead()
end sub
Генерал Полковник (37807901)13 летИнквизитор
Inquisitor
Сообщений: 792
Рег. 27.06.2011
24 декабря 2012 16:11
Сообщение #14
в связи с ситацией лагов, рекомендую при переброске шмота (мов граб дроп и т.д.)
вставить в скрипты после паузы процедуру чеклаг (заодно и сэйвы ловит):

Sub CheckLag()
   uo.DeleteJournal()
   uo.Click('backpack')
   repeat
      wait(50)
   until uo.InJournal('ackpack')
end sub
Старший Лейтенант (6395350)12 лет
Necromancer
Сообщений: 5530
Рег. 27.08.2012
6 января 2013 19:19
Сообщение #15
В личке попросили скрипт. пришлось написать ) без добора, ибо - НЕФИГ
Скрипт на кукинг, без добора (жарит из пака)

sub Cook()

   var havka = '0x097A'; тип еды, которую будем жарить
   var printcolour = '1069'

   uo.charprint(printcolour, 'Выбери жаровню, на которой будешь жарить' )
   uo.exec('addobject Forge')
   while uo.targeting()
      wait(100)
   wend
   repeat
      UO.DeleteJournal()
      UO.FindType(havka,'0x0000','my')
      if UO.FindCount() > 0 then
         UO.WaitTargetObject('Forge')
         UO.UseObject('finditem')
         repeat
            wait (100)
         until UO.InJournal("You burn")  or UO.InJournal("You put")
         else
            uo.charprint(printcolour, 'Сырье закончилось' )
            return
      end if
   Until UO.Dead()
end sub
Полковник (15148384)12 летИнквизитор
Inquisitor
Сообщений: 658
Рег. 27.10.2012
14 января 2013 17:46
Сообщение #16
Боукрафт на кострах + кемпинг

sub bow_kindling()
var Chest = '0x40FEA9EA'; ID сундука где лежат логи
var Log   = '0x1BDD';тип логов
var Dag   = '0x0F51';тип даггера
var Kindl = '0x0DE1';тип костров
var Kolvo = 100; сколько логов будем перерабатывать до остановки
var Camp  = 1; качаем после нарубки и кемпинг?
var Hid   = 0; хайдимся?
while uo.count(Kindl) < Kolvo
    cheklag()
      UO.FindType( Log, '-1', Chest )
      if uo.findcount() < 1 then
          uo.exec('terminate bow_kindling')
      endif
      if uo.count(Log)==0 then
        uo.Grab(1,'finditem', 'backpack')
        wait(200)
    endif    
    while uo.count(Log)>0
        uo.usetype(Dag)
        uo.waittargettype(Log)
        UO.WaitMenu('What','Kindlings','Kindlings','Kindling')
        wait(4000)
    wend
    if Hid>0 then
        uo.useskill('Hiding')
        wait(1000)
    endif
wend
if Camp>0 then
    Camping()
endif    
end sub

sub Camping()
var mx=uo.getx(),my=uo.gety(),x,y
uo.set('finddistance',5)
wait(200)
uo.DeleteJournal()
while 1==1
    for x=mx-2 to mx+2
       for y=my-2 to my+2
          cheklag()          
          if (uo.count('0x0DE1','0x0000')==0) then
             bow_kindling()
          end if
          uo.findtype('0x0DE1','0x0000','ground')
          wait(200)
          if UO.FindCount()<>0 then
             uo.useobject('finditem')
             wait(1500)            
          else
             uo.findtype('0x0DE1','0x0000','backpack')
             wait(200)
             uo.drop('1',STR(x),STR(y),STR(uo.getz()),'finditem')
             wait(700)
             uo.findtype('0x0DE1','0x0000','ground')
             wait(200)            
             uo.useobject('finditem')
             wait(1500)            
          end if
       next    
    next
wend
end sub

sub cheklag()
uo.deletejournal()
uo.click('backpack')
Repeat
  wait(100)
Until UO.InJournal("Backpack")
end sub
Лейтенант (4008442)11 лет
Dragonstalker
Сообщений: 360
Рег. 5.01.2013
21 января 2013 14:26
Сообщение #17
Детект, а то никто не решился залить с топика про детект в базу скриптов. (на одном чаре запускаешь hidepara() на втором Detect())


sub hidepara()
repeat
UO.UseSkill("Stealth")
repeat
wait(1000)
until uo.injournal ("revealed") or uo.injournal ("seem")
uo.deletejournal()
until uo.dead ()
end sub


sub Detect()
repeat
uo.useskill ('Detect')
repeat
wait(2500)
until uo.injournal ("You find") or uo.injournal ("nothing")
until uo.dead ()
end sub
Генерал Полковник (31351072)15 лет
Dragonstalker
Сообщений: 4091
Рег. 6.09.2009
16 февраля 2013 20:55
Сообщение #18
Лут с резкой
добавляя [R] можно увеличить список лута


sub Loot_ml()
DIM R[31]
var c

R[1] = 0x0E26 #Cursed Flask of Blood
R[2] = 0x0F3F #ei?a
R[3] = 0x0EED #ei?a
R[4] = 0x14FB #ei?a
R[5] = 0x0F15 #ei?a
R[6] = 0x0F13 #ei?a
R[7] = 0x0F26 #Granates
R[8] = 0x0F8F #Volcanic Ash
R[9] = 0x0F11 #Sapphire
R[10] = 0x0F10 #Emerald
R[11] = 0x0F18 #Tourmaline
R[12] = 0x0F3F #Arrows#Bow
R[13] = 0x0F83 #Heart of Death
R[14] = 0x0F16 #Amethyst
R[15] = 0x0F78 #batwings
R[16] = 0x0E34 #Blank Scrolls
R[17] = 0x0F7F #Brimstone
R[18] = 0x0F7C #Bloodspawn
R[19] = 0x0F87 #Eye of Newt
R[20] = 0x09F1 #Meat Ribs
R[21] = 0x0F8A #pig
R[22] = 0x0F7E #bone
R[23] = 0x0F79 #Blackmore
R[24] = 0x0F25 #Amber
R[25] = 0x0F8B #Pumice
R[26] = 0x0F89 #Obsidian
R[27] = 0x1869 #Enchant
R[28] = 0x09B5 #Shardtooth Eko
R[29] = 0x1844 #Orcish Flask
R[30] = 0x0F81 #Fertile Dirt
R[31] = 0x186F #Snowball
;uo.exec("warmode '0'")
uo.waittargetobject('lastcorpse')
uo.usetype(0x0EC3); #тип кинжала, которым будем резать кожу, в данном случае тип buthcer knife, делается тинкером из айрон ингов, поскольку такой тип у нуби бутчер кнайфа для срезания орк масок
wait(180)
UO.UseObject('lastcorpse')
wait(80)
;UO.WarMode(1)
for c=1 to 31
repeat
uo.findtype(R[c],"-1","lastcorpse")
if UO.FindCount()>0 and Uo.GetDistance("lastcorpse")<=4 then
UO.Grab("0","finditem")
wait(80)
end if
until UO.FindCount()<1
wait(80)
next

end sub
Генерал Полковник (31351072)15 лет
Dragonstalker
Сообщений: 4091
Рег. 6.09.2009
16 февраля 2013 21:11
Сообщение #19
моя доброта не знает границ


sub Arms_Lore()
var f_timer
  uo.print('Click on object to train arms lore')
  uo.exec('addobject loreobject')
  while uo.targeting()
    wait(100)      
    repeat
      f_timer=UO.Timer()
     UO.DeleteJournal()
     UO.Useskill('Arms Lore', 'loreobject')
     repeat
       wait(100)
     until UO.InJournal("Attack") or UO.Timer()>f_timer+50
   until UO.Dead() or UO.SkillVal('Arms Lore', 1)>999
end sub

sub Peacemaking()
var sk = uo.SkillVal('Peacemaking',1)
uo.print('  = ' + str(sk))
while uo.skillval('Peacemaking',1)<1000
uo.useskill('Peacemaking')
wait(2500)
wend
end sub

sub Taste()
var count=0
uo.print('totem')
uo.exec('addobject TOT')
while uo.targeting()
wait(100)
wend
UO.DeleteJournal()
repeat
uo.waittargetobject('TOT')
UO.Useskill('Taste Identification')    
wait(2500)
until UO.Dead()
end sub

sub Herding()
var posoh = "0x0E81"
uo.print('  - ')
uo.addobject('Animal')
while uo.targeting()
wait(100)
wend
repeat
uo.waittargetobject('Animal','self')
uo.usetype(posoh)
Uo.DeleteJournal()
repeat
wait(500)
until uo.injournal('You can|You don| |animal')
until uo.dead()
endsub

sub Enticement()
uo.print('  - ')
uo.exec('addobject animal')
while uo.targeting()
  wait(100)
wend
while uo.skillval('Enticement',1)<1000
uo.DeleteJournal()
uo.useskill('Enticement','animal')
wait(2500)
wend
end sub

sub Prov()
VAR Raven = '0x00DC', Berd
var LastTimer
UO.Set('finddistance', 3)
UO.WarMode(0)
UO.findtype(Raven,'-1','ground')
    if UO.FindCount() then
        Berd=UO.GetSerial('finditem')
while not uo.dead()
   UO.DeleteJournal()
LastTimer=UO.Timer()
UO.WaitTargetObject(Berd,Berd)
UO.UseSkill( 'Provocation' )
repeat
wait(100)
until UO.InJournal("     |attacking you|looks furious|You can see|You must wait") or UO.Timer()>LastTimer+150
wend
endsub

sub Begging()
uo.print('Whom you want grovel to?')
uo.exec('addobject Beg')
while uo.targeting()
  wait(200)
wend
uo.DeleteJournal()
While not uo.Dead()
  uo.waittargetobject('Beg')
  uo.useskill('Begging')
  wait(4000)    
wend
end sub
Лейтенант (4086673)12 лет
Dragonstalker
Сообщений: 855
Рег. 16.11.2012
18 февраля 2013 12:20
Сообщение #20
Смена оружия кто-то из новеньких просил.

Sub Weap_Shield() ## Оружие 1
UO.UseType("0x1B76"); heater - 0x1B76 chaos - 0x1BC3
UO.UseType("0x143C"); pika - 0x1402 katana - 0x13FE claw - 0x13B5 maul - 0x143A hammer - 0x143C staff monk - 0x13F8 kryss - 0x1400 longsword - 0x0F60 war fork - 0x1404
uo.attack('lastattack')
end sub

Sub Weap_Shield2() ## Оружие 2
UO.UseType("0x1BC3"); heater - 0x1B76 chaos - 0x1BC3
UO.UseType("0x13FE"); pika - 0x1402 katana - 0x13FE claw - 0x13B5 viking - 0x13B9 hammer - 0x143C staff monk - 0x13F8 kryss - 0x1400 longsword - 0x0F60 war fork - 0x1404
uo.attack('lastattack')
end sub
Последние посетители (0):

 
Сейчас: 24 ноября 2024 17:21