Скрипты от Askaneli

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

Tergos wrote:

Code: Select all

while not UO.InJournal("You pull") and not UO.InJournal("location") and not UO.InJournal("no fish") and not UO.InJournal("but fail") and not UO.InJournal("far away") and not UO.InJournal("in water") 
wait (100)
.....
wend

Вот типа такой код (с форума взят и потом чуток обработан напильником для соответствия шарду). Т.е. этот цикл - это просто задержка. А в процессе ловли вылезает Sea Serpent, вместо "You pull out a fish!" пишут иероглифы, UO.InJournal их не видит и скрипт повисает.

Я тебе и говорю.
Если нельзя отловить по сабжу в журнале, надо банальный поиск элема организовать.
По крайней мере у меня в фишинге так и сделано.
Сделал дело - флуди смело !!!
Tergos
Posts: 52
Joined: 2005-06-12 09:14:09
Location: Moscow, Russia
Contact:

Post by Tergos »

ок. Пасибки. Приду домой - попробую...
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

Tergos wrote:ок. Пасибки. Приду домой - попробую...

Получилось ?
Сделал дело - флуди смело !!!
Tergos
Posts: 52
Joined: 2005-06-12 09:14:09
Location: Moscow, Russia
Contact:

Post by Tergos »

Решил не морочиться (поскольку не совсем понял как по тайлу отлавливать серпента если он двигается и куда вообще эту проверку вставлять :oops: ). Сделал просто по таймеру...

Code: Select all

sub fishing() 
var mx, my, mz, i, j , k, Lasttimer
DIM Ulov[6]
Ulov[0]='0x09CC' ;Fish
Ulov[1]='0x09CD' ;Fish
Ulov[2]='0x09CE' ;Fish
Ulov[3]='0x09CF' ;Fish
Ulov[4]='0x14EB' ;Map
Ulov[5]='0x0DD6' ;Truly rare fish
Ulov[6]='0x0DD6' ;Prize fish
uo.print('куда улов кладем?')
uo.exec('addobject Bag')
while uo.targeting()
  wait(100)
wend
mx=UO.GetX("self")
my=UO.GetY("self")
mz=UO.GetZ("self")
While not UO.Hidden()
  UO.Print('Прячемся...')
  UO.DeleteJournal()
  UO.UseSkill('Hiding')
  repeat
    wait(100)
  until UO.Injournal('hidden') or UO.InJournal('fail')
wend
For i=-4 to 4
  For j=-4 to 4
    UO.Print('ловим в: '+str(i)+" "+str(j))
    repeat
      Lasttimer=UO.Timer()
      UO.Waittargettile("1341", str(i), str(j), str(mz))
      Checklag()
      UO.Usetype("0x0DBF")
      repeat
        wait(100)
      until UO.InJournal('You pull') or UO.InJournal('elsewhere') or UO.InJournal('no fish') or UO.InJournal('but fail') or UO.InJournal('far away') or UO.InJournal('in water') or UO.Timer()>=(LastTimer+50)
      if UO.InJournal('You pull') then
        UO.SetReceivingContainer('Bag')
        For k=0 to 6
          UO.findtype(Ulov[k],'-1','ground')
          wait(100)
          If UO.Findcount() then
            UO.grab ('-1','finditem')
            wait(500)
          endif
        next
        UO.UnSetReceivingContainer()
      endif
      wait(100)
    until UO.Injournal('elsewhere') or UO.InJournal('no fish') or UO.InJournal('far away') or UO.InJournal('in water')
  next
next
endsub

Sub CheckLag()
uo.DeleteJournal()
uo.Click('backpack')
repeat
  wait(100)
until uo.InJournal('backpack')
end sub
kazava
Posts: 8
Joined: 2005-07-12 06:52:02

Post by kazava »

Многоуважаемые програмисты...Пожалуйста не могли бы вы выставить в этой теме скрипт на спаринг?

С лучшими пожеланиями Серега...
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

kazava wrote:Многоуважаемые програмисты...Пожалуйста не могли бы вы выставить в этой теме скрипт на спаринг?

С лучшими пожеланиями Серега...

http://yoko.netroof.net/forum/viewtopic ... 4846#14846
Сам качался некоторое время именно на нём.
Мод его пока не буду выкладывать ибо не проверял так как временно варки не растут.
Сделал дело - флуди смело !!!
kazava
Posts: 8
Joined: 2005-07-12 06:52:02

Post by kazava »

Нет не этого рода а допустим вошел в спаринг с игрком,когда мало
хп они или один чар оставливается(ются) и лечаться
(или один лечит себя и другого)БИНТАМИ...(На гх нужны реги и алхимия 8) ..

И стати у меня есть вот этот скрипт на мининг но для синего.Потомучто если запускаеш его пк-чаром то при невыкапывания руды чар улетает сам от себя*возможно можно добавить в него строку куда над ввести ID своего чара*в общем чтоб чар не улетал сам от себя).

Нужен рунбук в 1 слоте руна в дом в 8 руна в пещеру...

В общем вот скрипт...

sub maning()
#BETEP™#
var mx, my, mz, i, j, jor, ser, noto
Uo.exec("set norbcheck 1"); для рекола
uo.exec("set norbcalc 1"); тоже

uo.print('!!Выбери Лопату!! ')
uo.exec('addobject Shovel')
while uo.targeting()
wait(100)
wend

uo.print('!!Выбери Рунбук!! ')
uo.exec('addobject Runebook')
while uo.targeting()
wait(100)
wend

na4alo:
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
UO.DeleteJournal()
for i = mx-4 to mx+4
for j = my -4 to my+4
while not UO.Hidden()
UO.Warmode("0")
uo.print("Прячемся...")
UO.UseSkill("Hiding")
wait(4000)
wend
UO.Print("Копаем в координатах: "+str(mx-i)+" "+str(my-j))
while not UO.InJournal("no ore here") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("in rock") and not UO.InJournal("Iron Ore") and not UO.InJournal("Copper") and not UO.InJournal("Rusty Ore")
UO.DeleteJournal()
if uo.waiting() then
uo.canceltarget()
endif
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.Useobject("Shovel")
while not UO.InJournal("You put") and not UO.InJournal("heavy") and not UO.InJournal("location") and not UO.InJournal("no ore") and not UO.InJournal("but fail") and not UO.InJournal("far away") and not UO.InJournal("in rock")
wait (500)
if uo.injournal("heavy") or uo.dead() then
pwav()
Pause()
endif
for jor = 0 to 9
ser = uo.journalserial(jor)
noto = uo.getnotoriety(ser)
if noto <> 1 and noto <> 0 and not uo.injournal("elemental") then
if uo.waiting() then
uo.canceltarget()
endif
Save()
pwavw()
wait(180000) ; время в секундах при ожидании пока уйдет ПК
loot()
wait(3000)
goto reccal
endif
next
wend
if uo.weight > 400 then ; Максимальный вес при котором домой с рудой
goto end
endif
wend
UO.DeleteJournal()
next
next
goto na4alo
end:
if uo.waiting() then
uo.canceltarget()
endif
uo.exec("recall Runebook 21") ; домой ( в рунбуке слот 1 )
wait(10000)
loot()
wait(3000)
reccal:
uo.deletejournal()
if uo.waiting() then
uo.canceltarget()
endif
uo.exec("recall Runebook 94") ; в шахту ( в рунбуке слот 8 )
mx = UO.GetX("self")
my = UO.GetY("self")
wait(10000)
if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then
goto reccal
endif
goto na4alo
end sub

sub loot() ; перекладка руды в сундук
if uo.waiting() then
uo.canceltarget()
endif
VAR a,Exit
VAR UnloadCont='0x40343A81' ; АЙДИ сундука для руды
DIM Ore[5]
Ore[0]=0x19B9 ; 4 and more ore
Ore[1]=0x19B7 ; 1 ore
Ore[2]=0x19BA ; 2 ore
Ore[3]=0x19B8 ; 3 ore
UO.SetReceivingContainer(UnloadCont)
wait(500)
For a=0 to 3
Exit=0
repeat
UO.FindType(Ore[a])
if UO.GetQuantity('finditem')>0 then
UO.Grab('0','finditem')
wait(1500)
Else
Exit=1
endif
until Exit==1
Next
UO.UnSetReceivingContainer()
end sub

sub Save() ; Реколл от ПК при их появлении (в паке рунка в безопасное место и реги)
var mx, my
reccal:
uo.deletejournal()
if uo.waiting() then
uo.canceltarget()
endif
mx = UO.GetX("self")
my = UO.GetY("self")
UO.DeleteJournal()
UO.FindType('0x1F14',-1,'my')
wait(200)
UO.Cast('Recall','finditem')
wait(4000)
if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then
goto reccal
endif
end sub

sub pwav() ; звук при выкапывании ЭЛЕМЕНТАЛА
uo.playwav("C:\01.wav")
endsub

sub pwavw(); звук при появлении ПК
uo.playwav("C:\01.wav")
endsub

sub Pause() ; Пауза скрипта если выкопали Элема (продолжить сказав GO )
UO.DeleteJournal()
REPEAT
WAIT(3000)
UO.Print("!!!СКРИПТ НА ПАУЗЕ!!!!")
UNTIL UO.InJournal('GO')
UO.Print("!!!СКРИПТ ПРОДОЛЖЕН!!!!")
endif
end sub

Пожалуйста сделайте так чтоб чар(пк) не улетал сам отсебя или добавьте строку с ID!

С уважением Серега...
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

Code: Select all

if noto <> 1 and noto <> 0 and noto <> uo.getserial('self') and not uo.injournal("elemental") then 


так спробуй с минингом
а спаринг так и работает как ты говоришь (новый).

p/s: Научись тегами CODE пользоватся.
Сделал дело - флуди смело !!!
Night Wolf
Posts: 26
Joined: 2005-01-12 13:33:49

Post by Night Wolf »

Askaneli wrote:Снупинг и Стелинг. При стелинге левочару необходимо запустить процедуру Popolnit...


При включении скрипта вылазиет ошибка line4152 Variable undefined -BACKENY

Шард ДрВ
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

Night Wolf wrote:
Askaneli wrote:Снупинг и Стелинг. При стелинге левочару необходимо запустить процедуру Popolnit...


При включении скрипта вылазиет ошибка line4152 Variable undefined -BACKENY

Шард ДрВ


Code: Select all

Var BackEny='0x40041466' ; ИД бакпака левочара 


Первая строчка. Ты похоже её не скопировал.
Скопируй скрипт по новой и полностью.
Сделал дело - флуди смело !!!
kazava
Posts: 8
Joined: 2005-07-12 06:52:02

Post by kazava »

Покажи весь этот скрипт а он должен выглядеть плиз...
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

Кукинг вот со спиритом и реконектором. При ГМ Кукинг вырубается.
Жарит котлетки рыбные.

Code: Select all

Var Forge='0x401FD813'
Var Sunduk='0x402C6117'

sub Cooking()
Var LastTimer,p=0,f=0
uo.useobject('backpack')
wait(1000)
UO.Exec('terminate Reconnector')
wait(1000)
UO.Exec('exec Reconnector')
LastTimer=UO.Timer()
while not uo.dead()
   f=0
   ToHide()
   cheklag()
   if uo.skillval("Cooking",1)<1000 then
      uo.print("Cooking...")
      f=1
      if uo.count('0x097A','0x0000')<10 then
         uo.findtype('0x097B','0x0000','backpack')
         wait(50)
         uo.moveitem('finditem','-1',Sunduk)
         wait(1000)
         
         uo.findtype('0x097A','0x0000',Sunduk)
         wait(50)
         uo.moveitem('finditem','1000','backpack')
         wait(1000)
      end if
      uo.deletejournal()
      uo.waittargetobject(Forge)
      wait(50)
      uo.usetype('0x097A','0x0000')
      repeat
         wait(10)
      until uo.injournal("You put the") or uo.injournal("You burn the")
   end if   
   
   if UO.Timer()>(LastTimer+3000) then
      if uo.skillval("Spirit Speak",1)<1000 then
         uo.print("Spirit Speak...")
         f=1
         p=0
         repeat
            p=p+1
            uo.useskill ("Spirit Speak")
            uo.deletejournal()
            repeat
               wait(10)
            until UO.InJournal("netherworld") or UO.InJournal("You must wait to perform another action") or uo.dead()
         until (UO.InJournal("You establish a connection to the netherworld.")) or (p>=10) or uo.dead()
      end if
      uo.usetype('0x097B')
      wait(1000)
      LastTimer=UO.Timer()
   end if
   if f==0 then
      uo.closeuo()
   end if
wend
uo.closeuo()
end sub

sub cheklag()
uo.deletejournal()
uo.click('backpack')
repeat
wait(10)
until uo.InJournal("backpack")
end sub

sub Reconnector()
var ReconnectTime, RFlag
ReconnectTime = '0'
RFlag = 1
Repeat
While (UO.ObjAtLayer('Bpack') == '')
if RFlag Then
ReconnectTime = MakeTime()
RFlag = 0
endif
Wait(20000) # WorldSave Protection
UO.Say('')
Wait(3000)
UO.Say('')
Wait(3000)
UO.Say('')
Wait(3000)
UO.LDblClick(357,164)
UO.LClick(616,459)
Wait(3000)
WEnd
Wait(3000)
if (RFlag == 0) and (ReconnectTime <> '0') Then
UO.Exec('terminate Cooking')
wait(1000)
UO.Exec('exec Cooking')
UO.TextOpen()
UO.TextPrint('Disconnected & Reconnected @ '+ReconnectTime)
RFlag = 1
ReconnectTime = '0'
endif
Until false
end sub

sub MakeTime()
VAR D, T, Ret, i
Ret = STR(UO.Time())
T = ""
For i = 0 To Len(Ret)
T = Ret[Len(Ret)-i] + T
If (I == 2) OR (I == 4) Then
T = ":" + T
EndIf
Next
Ret = STR(UO.Date())
D = ""
For i = 0 To Len(Ret)
D = Ret[Len(Ret)-i] + D
If (I == 2) OR (I == 4) Then
D = "." + D
EndIf
Next
Ret = T + " @ " + D
RETURN Ret
end sub

Sub ToHide()
while not uo.hidden()
   UO.DeleteJournal()
   uo.useskill("Hiding")
   repeat
      wait(10)
   until UO.InJournal("You have hidden yourself well") or UO.InJournal("You can't seem to hide here.") or UO.InJournal("You are preoccupied with thoughts of battle.")
   if UO.InJournal("You are preoccupied with thoughts of battle.") then
      uo.exec("warmode 1")
      wait(100)
      uo.exec("warmode 0")
      wait(100)
   end if
wend
end sub
Сделал дело - флуди смело !!!
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

Анимал таминг вот. При ГМ вырубается. Реконектор. Хавает всё те же треклятые катлетки.

Code: Select all

sub animal_taming()
var animal='0x000D3C81'
var LastTimer
LastTimer=UO.Timer()

uo.Exec('terminate Reconnector')
wait(5000)
uo.Exec('exec Reconnector')
wait(5000)

uo.useobject('backpack')
wait(1000)

while not uo.dead()
   uo.sayu("all release")
   repeat
      uo.deletejournal()
      uo.waittargetobject(animal)
      wait(50)
      uo.usetype('0x13F8','0x07D5')
      repeat
         wait(10)
      until uo.injournal("You fail to tame the creature.") or uo.injournal("It seems to accept you as master.") or uo.injournal("You can't see the creature.") or uo.injournal("You can't see the target") or uo.dead()
      if uo.injournal("You can't see the target") then
         uo.closeuo()
      end if
      if UO.Timer()>(LastTimer+3000) then
         uo.usetype('0x097B','0x0000')
         wait(1000)
         LastTimer=UO.Timer()
      end if
   until uo.injournal("It seems to accept you as master.") or uo.dead()
   if uo.skillval("Animal Taming",1)>=1000 then
      uo.sayu("all come")
      while uo.GetDistance(animal)>1
         wait(100)
      wend
      uo.useobject(animal)
      wait(1000)
      uo.closeuo()
   end if
wend
uo.closeuo()
end sub
 
Sub Reconnector()
var ReconnectTime, RFlag
ReconnectTime = '0'
RFlag = 1
Repeat
   While (uo.ObjAtLayer('Bpack') == '')
      if RFlag Then
         ReconnectTime = MakeTime()
         RFlag = 0
      endif
      Wait(70000) # WorldSave Protection
      uo.Say('')
      Wait(5000)
      uo.Say('')
      Wait(5000)
      uo.Say('')
      Wait(5000)
      uo.LDblClick(357,164)
      uo.LClick(616,459)
      Wait(5000)
   WEnd
   Wait(3000)
   if (RFlag == 0) and (ReconnectTime <> '0') Then
      uo.TextOpen()
      uo.TextPrint('Disconnected & Reconnected @ '+ReconnectTime)
      uo.RClick(196,193)
      wait(2000)
      uo.RClick(196,193)
      wait(2000)
      uo.Exec('terminate animal_taming')
      wait(5000)
      uo.Exec('exec animal_taming')
      wait(5000)
      RFlag = 1
      ReconnectTime = '0'
   endif
Until false
end sub
 
Sub MakeTime()
VAR D, T, Ret, i
Ret = STR(uo.Time())
T = ""
For i = 0 To Len(Ret)
T = Ret[Len(Ret)-i] + T
If (I == 2) OR (I == 4) Then
T = ":" + T
EndIf
Next
Ret = STR(uo.Date())
D = ""
For i = 0 To Len(Ret)
D = Ret[Len(Ret)-i] + D
If (I == 2) OR (I == 4) Then
D = "." + D
EndIf
Next
Ret = T + " @ " + D
RETURN Ret
end sub
Сделал дело - флуди смело !!!
rebenok
Posts: 35
Joined: 2005-06-12 14:49:58

Post by rebenok »

ап
Leo
Expert!
Posts: 791
Joined: 2005-01-15 19:15:05
Location: Dragon World
Contact:

Post by Leo »

Топик Асканели апать не надо, он никогда не умирает, у меня он всегда в избранном :D
Qualis Eram
Posts: 104
Joined: 2005-04-16 23:33:13
Contact:

Post by Qualis Eram »

А скрипт на фишинг от Аскенали так и не увидил?
neokron111
Posts: 17
Joined: 2005-08-15 02:25:50

Post by neokron111 »

а есть у Авканели скрипт на мининг?
Leo
Expert!
Posts: 791
Joined: 2005-01-15 19:15:05
Location: Dragon World
Contact:

Post by Leo »

neokron111 wrote:а есть у Авканели скрипт на мининг?

Он не Авканели, а Асканели :wink:
neokron111
Posts: 17
Joined: 2005-08-15 02:25:50

Post by neokron111 »

Класс...прикрепите этот топик плизз Очень полезный :P
Hellios
Posts: 1
Joined: 2005-09-03 12:40:05

Post by Hellios »

АП =))
Post Reply