Page 1 of 2

Оскомовцв, собираемся тут.

Posted: 2011-11-13 23:29:00
by Max3dworld
Ответ на тему "Делимся скриптами" oskom оском
http://www.uoo.su/forum/showthread.php?t=73829
Там на форуме нельзя обсуждать эту программу. Поэтому вновь пришедшие с той темы, отписываемся тут.

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-14 00:05:26
by Sirocco
Я уже здесь... готов сажать вас за ваши скрипты :mrgreen:

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-14 01:26:39
by Mirage
Всех мальчишей Кибальчишей не пересажаете :twisted:


:mrgreen:

Тема улыбнула :lol: Могу даже поддержать революционеров. :roll:

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-14 03:25:43
by Weee

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-14 10:27:29
by Mirage

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-14 13:29:25
by TEHb o2
Sirocco wrote:Я уже здесь... готов сажать вас за ваши скрипты :mrgreen:

а что, тут их обсуждать нельзя чтоли?)) это не по правилам будет) ахахахах

Ну делиться так делиться!
начну первый....

sub Poison()
uo.exec("cast 'Poison' last")
end sub

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-14 13:58:53
by Mirage
всегда недогонял почему вместо хоткея в игре
say ,cast Poison last

использовать конструкцию из 3 строк?

PS можно сделать моднее:

Code: Select all

sub Poison()
 UO.Cast('Poison','last')
end sub


Кстати флудить флудите но постарайтесь соблюдать правила форума (хотя бы в оформлении) а то кара прилетит быстрее чем на сервере. :twisted:

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-14 14:26:21
by Baal Shem Tov
Перекладка одно типовых предметов, как кучкующихся так и не кучкующихся

Code: Select all

sub MoveFromTo() 
var qType = '200' #кол-во перекладываемых за раз item'ов
var tType, cType
UO.Print('otkuda pizdim veschi?')
uo.addobject('objFrom')
while uo.Targeting()
wait(200)
wend
UO.Print('kuda nykaem napizjennoe?')
uo.addobject('objResiv')
while uo.Targeting()
wait(200)
wend
uo.useobject('objFrom')
CheckLag()
UO.Print('Cto perekladivaem?')
uo.addobject('objType')
while uo.Targeting()
wait(200)
wend
tType = uo.GetGraphic('objType')
cType = uo.GetColor('objType')
UO.Findtype(tType,cType,'objFrom')
while UO.GetQuantity('finditem')>0
UO.MoveItem('finditem',qType,'objResiv')
wait(1000)
CheckLag()
UO.Findtype(tType,cType,'objFrom')
wend
UO.Print('Happe End! ^^')
end sub
sub CheckLag()
UO.DeleteJournal()
UO.Click('backpack')
repeat
wait(50)
until UO.InJournal('backpack')
end sub


Скрипт простой, пояснения думаю не требуются xD
___________________________

мешаем инвизки

Code: Select all

sub inviz() 

VAR Exit=0, LastTimer
   VAR Bag = '0x406060E9'         ; Сумка где лежат реги
  VAR BaGofKeG ='0x40606D33'   ; Сумка где лежат кеги
   VAR Bag2 = '0x406060E7'       ; Сумка куда кидать полные кеги
   VAR Reg = '0x0F91'                  ; Рег
uo.useobject( Bag )
uo.useobject( Bag2 )
uo.useobject( BaGofKeG )

while Exit<>1
UO.DeleteJournal()

UO.FindType( Reg ,-1, 'backpack' )       ; 
If UO.GetQuantity('finditem')<10 then
UO.FindType( Reg ,'0x0000', Bag )
wait(1000)
UO.Grab('770','finditem')
wait(1000)
Endif

LastTimer=UO.Timer()
UO.DeleteJournal()

UO.UseType(Reg) 
UO.WaitMenu('What','Invisibility') 
wait(1000)
If UO.InJournal("You have no") then
   UO.FindType('0x1940','0x0000', BaGofKeG )   
   wait(500)
   uo.grab('1','finditem') 
   wait(2000)
   UO.UseObject('finditem')
   UO.WaitTargetType('0x0F09')
   wait(1500)
   UO.UseObject('finditem')
   UO.WaitTargetObject('backpack')
   wait(1500)
   UO.FindType('0x1940','0x0000','backpack')
   wait(500)
   UO.MoveItem('finditem', '1', bag2 )
   wait(1500)
Endif
while NOT UO.InJournal("You put") AND NOT UO.InJournal("Вы смешали") AND NOT UO.InJournal("Fail") AND NOT UO.InJournal("неудача") AND NOT UO.InJournal("You toss the failed")
wait(50)
wend
If UO.InJournal("Вы смешали") then
   repeat
   wait(100)
until UO.Timer()>=LastTimer+100
Else
EndIf
wend   
end sub

На манки, рефрешки, экспы и прочие поты, выкидывать не буду, так как они однотипные, только надо заменить тип используемого рега, меню крафта и тип пота
____________________________________

Крафт проволоки

Code: Select all

sub provolka()
Var instrument = '0x1EBC' ; тинкертулс
Var metal = '0x048A' ; тип ингота
Var wire = '0x1876'  ; тип проволки
Var j,k,sum = 0

UO.CancelMenu()
UO.AutoMenu ('Tinkering', 'Tools' )
UO.AutoMenu ('Tools', 'orion wire' ) ; iron\titan\dragon\orion\silver\gold\mytheril wire
wait(1000)

UO.Usetype( Instrument )
k = 0
repeat
K = k + 1
wait(500)

If Uo.InJurnal('You put') then
sum = sum + 1
Uo.Print( 'crafted ' + str(sum) + ' wire' )
EndIf


end sub

аналогично с другими проволоки, комментарии излишне xD

_______________________________________
Лутолка

Code: Select all

sub Loot()
   VAR WaitTime=500
   VAR Exit=0, i
   DIM Loot[27]

 Loot[0]=0x1400 ; Крис
 Loot[1]=0x13FE ; Катана
 Loot[2]=0x13B5 ; Клава
 Loot[3]=0x1404 ; Вилка
 Loot[4]=0x143C ; Хаммер
 Loot[5]=0x13AF ; Клюха
 Loot[6]=0x0F60 ; Лонг Сворд
 Loot[7]=0x26BB ; Блуд клава
 Loot[8]=0x13B9 ; Викинг Сворд
 Loot[9]=0x0F5E ; Дирк
 Loot[10]=0x1B76 ; Квадратный Шит
 Loot[11]=0x1B78 ;  Титан
 Loot[12]=0x1413 ;  Горжетка
 Loot[13]=0x1414 ;  Перчатки
 Loot[14]=0x1415 ;  Тело
 Loot[15]=0x1410 ;  Плечи
 Loot[16]=0x1411 ;  Ноги
 Loot[17]=0x140E ; шлем
 Loot[18]=0x143C ; opk
 Loot[19]=0x1088 ; amul
 Loot[20]=0x0EFC ; trans
 Loot[21]=0x2DB2 ; kokti
 Loot[22]=0x2D02 ; bumer
 Loot[23]=0x2D18 ; rar
 Loot[24]=0x2DB8 ; silver
 Loot[25]=0x2BEE ; щит вамп
 Loot[26]=0x204E ; шруда
 Loot[27]=0x0F09 ; манка
   UO.UseObject('lastcorpse')

UO.SetReceivingContainer('0x400DC875') ; loot store bag

   For i=0 to 25
      UO.FindType(Loot[i],-1,'ground')
      if UO.GetQuantity('finditem') then
         UO.Grab(STR(0),'finditem')
         wait(WaitTime)
      endif

      if UO.GetQuantity('lastcorpse') then
         UO.FindType(Loot[i],-1,'lastcorpse')
         if UO.GetQuantity('finditem') then
            if Loot[i]==0x1078 then
               UO.WaitTargetObject('finditem')
               UO.UseType('0x0F9E')
            else
               UO.Grab(STR(0),'finditem')
            endif
            wait(WaitTime)
         endif
      endif
   next

;   UO.UnSetReceivingContainer()
end sub


тестил на о2, лутала хорошо и быстро, но! работала одноразово, приходилось пере заходить в инжу

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-14 18:15:52
by Sirocco
Последним скриптом крайне не советую пользоваться... может на о2 она и работает хорошо. А у нас еще лучше за это сажают. Кто не верит...
Зато сразу отсеивать можно инжектеров ;) © Mirage

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-15 17:21:30
by Baal Shem Tov
Классно тут делятся скриптами, особенно сам афтор порадовал, создал и в кусты (:

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-15 17:45:38
by Azazello1988
Скрипт на быструю прокачку мининга на О2 при наличии нужного кол-ва Ore качается до ГМа за час
sub smelting()
repeat
UO.Findtype('0x19B9', '-1','backpack')
If UO.Findcount() == 0 Then
UO.Findtype('0x19B8', '-1','backpack')
If UO.Findcount() == 0 Then
UO.Findtype('0x19BA', '-1','backpack')
If UO.Findcount() == 0 Then
UO.Findtype('0x19B7', '-1','backpack')
If UO.Findcount() == 0 Then
return
Endif
Endif
Endif
Endif
UO.moveitem('finditem','1','backpack',44,121,0 )
Wait(100)
UO.UseType('0x19B7')
Wait(100)
until uo.findcount()== 0
end sub

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-15 17:48:55
by Azazello1988
Старый скрипт на БС, пояснений не осталось, кто разберется тому будет счастье, смысл таков, крафтит то, что пропишите и потом плавит, при ГМ мининга на О2 хороший вариант добить БС до ГМа с минимальными затратами ресурсов, у самого уходило для гнома в районе 5-7тысяч айрона до 115
sub BlacksmithyIM()
var Exit=0, LastTimer
uo.Print('Vibery sunduk: ')
uo.Exec('addobject Chest')
while uo.Targeting()
wait(100)
wend
while Exit<>1
uo.DeleteJournal()
uo.FindType('0x13fe','0x0000','backpack')
if uo.GetQuantity('finditem')>0 then
plavka()
end if
uo.FindType('0x1BF2 ',-1,'backpack')
if uo.GetQuantity('finditem')<10 then
uo.FindType('0x1BF2 ','0x0000','Chest')
wait(500)
uo.Grab('300','finditem')
wait(500)
end if
LastTimer=uo.Timer()
uo.DeleteJournal()
UO.Exec("waitmenu 'Blacksmithing' 'Weapons' 'Weapons' 'Swords & Blades' 'Swords & Blades' 'katana'")
uo.usetype("0x13E3")
wait(500)
uo.UseType('0x1Bf2')
wait(7000)
wend
end sub

sub plavka()
uo.waittargetobject("^0x13fe")
uo.usefromground("0x199A")
wait(500)
end sub

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-15 18:17:36
by Azazello1988
Вопрос по скрипту на алхимию, сундуки открывает ничего не берет не переливает не перекладывает

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-15 22:43:39
by Baal Shem Tov
Azazello1988 wrote:Вопрос по скрипту на алхимию, сундуки открывает ничего не берет не переливает не перекладывает


без самого скрипта, я думаю никто не сможет сказать что не так (:

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-15 22:50:47
by Baal Shem Tov
Раскладка в линию некучкующихся вещей в паке

Code: Select all

sub raskladka()

var x,y,g,c
var s = 2

uo.print('Sumka Kuda Kladem itemi dly podgotovki?')
uo.AddObject('itemsbag')
while uo.Targeting()
wait(100)
wend

uo.print('sumka gde budem raskladivat itemi?')
uo.AddObject('itemsbag1')
while uo.Targeting()
wait(100)
wend

uo.print('Primer raskladivaemih itemov')
uo.AddObject('obraz')
while uo.Targeting()
wait(100)
wend


x=uo.GetX('obraz')
y=uo.GetY('obraz')
g=uo.GetGraphic('obraz')
c=uo.GetColor('obraz')

uo.FindType(g,c,'itemsbag1')
while uo.FindCount()
   uo.moveitem('finditem','0','itemsbag')
   CheckLagShort()
   uo.FindType(g,c,'itemsbag1')
wend
repeat
   uo.FindType(g,c,'itemsbag')
   if uo.FindCount() then
      uo.moveitem('finditem','0','itemsbag1',x,y,0)
      CheckLagShort()
      x=x+s
      else
      return
   end if
until false
end sub

Sub CheckLagShort()
DeleteJournal('backpack')
UO.Click('backpack')
repeat
   wait(50)
until UO.InJournal('backpack')
endsub

Sub DeleteJournal( string1 )
   VAR nom = uo.InJournal( string1 )
   if nom > 0 Then
      uo.SetJournalLine( Nom - 1, 'string replaced' )
      DeleteJournal( string1 )
   end if
end sub


Скрипт полностью автономный, самонастраивающийся.
1 таргет - указываем пак куда скидываем вещи
2 таргет - указываем пак, в котором будем раскладывать вещи
3 таргет - указываем пример вещи с которой будет проделывать раскладку

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-16 00:16:30
by TEHb o2
Sirocco wrote:Последним скриптом крайне не советую пользоваться... может на о2 она и работает хорошо. А у нас еще лучше за это сажают. Кто не верит...
Зато сразу отсеивать можно инжектеров ;) © Mirage

дак инжа же не запрещена) а вот отследить кто какие макросы выкладывает и потом оценить пользуется ли человек ими, намного проще) ну а вообще это не честно) так сюда фик кто выложит что то дельное)



БаалШемТов, макрос на крафт проволки не работает у тебя))) я его настроил, но он как бэ крафтит одну проволку и вырубается сразу)


Капает вокруг себя(для работы на фри нужно поменять некоторые русские сообщения(тут не осталось руды итд) на английские

Code: Select all


sub minround()
VAR Kirka = '0x0E85'   ; Тип Кирки
VAR MaxVes = 650   ; Максимальный вес, подымаемый чаром минус 10-15 стоунов
VAR TileNum = '1339'   ; Тайл пола пещеры (наиболее распространенный тип)
VAR x, y, t, k
VAR MaxTime = 100   ; измеряется в 1/10 сек.
VAR ms1 = "Тут не осталось руды"
VAR ms2 = "You can't use"
VAR ms3 = "You put the"
VAR ms4 = "You loosen some rocks"
VAR ms5 = "Туда вам не дотянуться"
VAR ms6 = "Попробуйте добывать"
VAR ms7 = "Это слишком далеко отсюда"
for y=-2 to 2
for x=-2 to 2
while not UO.Hidden()
UO.Warmode("0")
uo.print("Прячемся...")
UO.UseSkill("Hiding")
wait(4000)
wend
      k = 0
      repeat
         UO.DeleteJournal()
         t = UO.Timer()
         k = k + 1
         UO.CancelTarget()
         wait(300)
         UO.WaitTargetTile( TileNum, STR( UO.GetX() + x ), STR( UO.GetY() + y ), 0)
         UO.UseType( Kirka )
         repeat
            wait(300)
         until UO.InJournal(ms1) OR UO.InJournal(ms2) OR UO.InJournal(ms3) OR UO.InJournal(ms4) OR UO.InJournal(ms5) OR UO.InJournal(ms6) OR UO.InJournal(ms7) OR ((t + MaxTime) < UO.Timer())
         If UO.Weight > MaxVes Then
            UO.Print(" Overweight!" )
            return
         Endif
      until ( NOT UO.InJournal(ms4) AND NOT UO.InJournal(ms3) OR (k > 10) )
         next
next
endsub



Re: Оскомовцв, собираемся тут.

Posted: 2011-11-16 00:43:16
by ZeroDX
Крафт проволоки


Да это вообще непонятнокакработает

Code: Select all

sub provolka()
Var instrument = '0x1EBC' ; тинкертулс
Var metal = '0x048A' ; тип ингота
Var wire = '0x1876'  ; тип проволки
Var j,k,sum = 0

UO.CancelMenu()
UO.AutoMenu ('Tinkering', 'Tools' )
UO.AutoMenu ('Tools', 'orion wire' ) ; iron\titan\dragon\orion\silver\gold\mytheril wire
wait(1000)

UO.Usetype( Instrument )
k = 0
repeat
K = k + 1
wait(500)

If Uo.InJurnal('You put') then
sum = sum + 1
Uo.Print( 'crafted ' + str(sum) + ' wire' )
EndIf


end sub


1) репит, который ждал бы конца крафта, не закрытый. И ещё одного репита не хватает, который бы все зациклил. Видимо в закрывашке должно было быть условие:
sum == допустим 30 (сделать 30 проволоки)
endsub
2)If Uo.InJurnal('You put') then
должно вылетать функшен нот фаунд
3) Переменная j объявлена, но не используется. Как и metal и wire
Не критично, но думается, что скрипт изначально был больше и был обрезан(подогнан под шард... извините :roll:)

Вот как раз недостающие строки можно было бы разместить в пустых строках в скрипте
Но раз такое работает, то вот такое тоже должно

Code: Select all

sub WireCraft()
  While UO.Count('0x1876')
    UO.WaitMenu('Tinkering', 'Tools', 'Tools', 'wire')
    UO.UseType('0x1EBC')
    Wait(5000)         ; <= макс время крафта проволоки
  Wend
Endsub

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-16 04:24:26
by Azazello1988
Сделал под Гритстр
sub inviz()

VAR Exit=0, LastTimer
VAR Bag = '0x41d2cd13' ; Сумка где лежат реги
VAR BaGofKeG ='0x41D2CDA1' ; Сумка где лежат кеги
VAR Bag2 = '0x41d2cd3e' ; Сумка куда кидать полные кеги
VAR Reg = '0x0F86' ; Рег
uo.useobject( Bag )
uo.useobject( Bag2 )
uo.useobject( BaGofKeG )

while Exit<>1
UO.DeleteJournal()

UO.FindType( Reg ,-1, 'backpack' ) ;
If UO.GetQuantity('finditem')<10 then
UO.FindType( Reg ,'0x0000', Bag )
wait(1000)
UO.Grab('770','finditem')
wait(1000)
Endif

LastTimer=UO.Timer()
UO.DeleteJournal()

UO.UseType(Reg)
UO.WaitMenu('What','Greater')
wait(1000)
If UO.InJournal("You have no") then
UO.FindType('0x1940','0x0000', BaGofKeG )
wait(500)
uo.grab('1','finditem')
wait(2000)
UO.UseObject('finditem')
UO.WaitTargetType('0x0F09')
wait(1500)
UO.UseObject('finditem')
UO.WaitTargetObject('backpack')
wait(1500)
UO.FindType('0x1940','0x0000','backpack')
wait(500)
UO.MoveItem('finditem', '1', bag2 )
wait(1500)
Endif
while NOT UO.InJournal("You put") AND NOT UO.InJournal("Вы смешали") AND NOT UO.InJournal("Fail") AND NOT UO.InJournal("неудача") AND NOT UO.InJournal("You toss the failed")
wait(50)
wend
If UO.InJournal("Вы смешали") then
repeat
wait(100)
until UO.Timer()>=LastTimer+100
Else
EndIf
wend
end sub

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-16 10:52:44
by Mirage
Настоятельно рекомендую прочитать правила постования и привести скрипты в соответствие к ним (правилам). Я конечно очень рад оживлению и всячески его поддерживаю но читать скрипты без тега и отступов ломает глаза. :cry:

PS на всякий случай безобразникам вроде Азазелло напоминаю - я вижу IP адреса и могу проявить инициативу сообщив их кому следует :roll:
У нас как бы демократия и свобода но давайте уважительно друг к другу относиться.

Re: Оскомовцв, собираемся тут.

Posted: 2011-11-16 23:12:45
by TEHb o2
Да просто обьяснил бы подоступнее... я например правила не читал но сам разобрался как это все делать))

короче говоря сверху есть кнопки чтобы сделать жирный текст, курсив итд, там есть кнопка Code, и вот между этими [code!] [/code!] сообщениями пиши макрос)

//там высветится без восклицательных знаков)