помощь по минингу

Ask for scripts here

Moderators: Murderator+, Murderator

Post Reply
7ice_k7
Posts: 30
Joined: 2014-06-03 16:10:29

помощь по минингу

Post by 7ice_k7 »

[code][/code]
один чар практически нормально на этом скрипте работает, бывает после возвращения из шахты и выгрузки руды, берет все необходимое и начинает реколится в шахту, но реколится непонятно куда, так как постоянно происходит физл, и так пока не закончится мана, после медитации опять физлы
а запускаю данный скрипт в другом окне так чар даходит до "берем инвиз" и все!!! дальше тупо стоит, месяца два назад все нормально работало
вот сам скрипт
# 23.11.2009
# 1# Mining Elemental hunter by Nmy a.k.a. Dark Enemy
# Ñóòü ñêðèïòà - ìèíèíã ïî ðóíêàì. Çàïóñêàòü íàäî òîëüêî sub main(). Íå÷åãî äðóãîãî.
# Åñëè ÷àð æèâ, ïðè çàïóñêå íàäî èìåòü â áåêïàêå ðóíó ê ñóíäóêó,
# åñëè ÷àð ìåðòâ, òîãäà ïðîñòî çàïóñêàéòå ñêðèïò.
# Ïîñëå çàïóñêà ñêðèïò èùåò êèðêó èëè ëîïàòó - àâòîìàòè÷åñêè.
# Òðåáîâàíèÿ ïåðåä çàïóñêîì - ðåãè bp bm mr ns ga â ñóíäóêå,
# áëàíê ðóíû â ìåøêå BlankRunebag,
# çàìàð÷åíûå ðóíû â Runebag (×åì áîëüøå, òåì ëó÷øå. Ó ìåíÿ ãäå òî 59 ñïîòîâ),
# ðóíà äîìîé Runehome, ïðÿìî ó ñóíäóêà,
# èíâèçêè â ñóíäóêå äëÿ ðåêîëà îò ïê è ôàðìà åëåìîâ,
# ñêðîëû íà Energy Vortex äëÿ ôàðìà åëåìîâ,
# êó÷à êèðîê â ñóíäóêå.
# Ïðè çàïóñêå ÷àð äîëæåí èìåòü ãîòîâóþ ðóíó äîìîé â áåêïàêå. Äðóãèõ ðóí â áåêïàêå íå äîëæíî áûòü.
##
# Çàïóñêàåòñÿ ñêðèïò ó ñóíäóêà è çàïèñûâàåòñÿ ðóíà äîìîé.
# Ñêðèïò áåðåò ðåãè, 2 èíâèçêè, ñêðîë âîðòåêñà, åñëè íàäî, êèðêó è óëåòàåò.
# Íà÷èíàåòñÿ êîïêà. ×åðåç êàæäûé òàéë èäåò ïðîâåðêà íà åëåìà,
# åñëè åëåì âûõà, ïëóò èëè îáñèä - óáèâàåò åëåìà, Vas An Ort, ëóòàåò ðóäó, óëåòàåò, âûãðóæàåòñÿ, áåðåò ðóíó â ñëåäóþùåþ øàõòó,
# Òùàòåëüíî ïðîâåðÿåòñÿ æóðíàë íà ïê, èñêëþ÷àÿ ('Elemental|Scorpion King|Giant Spider|Energy Vortex').
# Óëåòàåò îò ïê - ïüåò èíâèçêó è äåëàåò ðåêîë ïî ðóíáóêå èëè ðóíå,
# îòêðûâàåòcÿ îêíî òåêñòà TextOpen è ïèøåòñÿ Nick @ âðåìÿ @ äàòà, íàïðèìåð:
# Roland @ 15:59:20 @ 9.09.18
##
# Track World Items äîëæåí áûòü âêëþ÷åí.
# Reconnector - âêëþ÷àåòñÿ, îí ïðîñòî çàõîäèò îáðàòíî, íåò ãàðàíòèè ÷òî ñêðèïò áóäåò äàëüøå ðàáîòàòü,
# íî øàíñ íà óñïåõ âñå òàêè åñòü.
##
# Äîáàâëåí ðåññ â Ìèíîêå. ×àð ðåñàåòñÿ, ëåòèò äîìîé, ìàðêàåò ðóíó äîìîé, èùåò êèðêó â ñóíäóêå, çàïóñêàåò ìåéí ñêðèïò.
# Äîáàâëåíû ïåðåìåííûå äëÿ õåëï êíîïêè, ò.ê. ïàïåðäîëë ó êàæäîãî ìîæåò áûòü â ðàçíûõ ìåñòàõ.
# Undead íàäî âêëþ÷èòü.
##
# ×àð ìåäèòèðóåò ôóëë ìàíó ïåðåä ðåêîëîì â øàõòó.
var Pickaxe, Runehome, Blankrune, Runinetu, Nrune, flagpk
var Runebook='0x400D87C3' # Äëÿ ðåêîëà äîìîé.
var Runenr='46' # Íîìåð ðóíû.
var Chest='0x40084BDB' # ß ëè÷íî ïîñòàâèë 2 ñåéôà ðÿäîì - 1 äëÿ ðåñóðñîâ, 2é äëÿ ðóäû.
var Orechest='0x40084BDB' # Ñþäà êèäàþò ðóäó.
var Dropbag='0x4052B078' # Ïóñòîé ìåøîê êóäà êèäàþò ðóíû ïîñëå îáêîïà.
var Runebag='0x40169A26' # Ðóíû êóäà ëåòåòü.
var Blankrunebag='0x40169AE0' # Ìåøîê ñ áëàíê ðóíàìè.
var rune='0x1F14' # Òèï ðóíû.
var homeX=1029 # Êîîðäèíàòû ãäå ñòîèò ÷àð ó ñóíäóêà.
var homeY=393 # Êîîðäèíàòû ãäå ñòîèò ÷àð ó ñóíäóêà.
var helpX=1398 # Ïåðåìåííûå áåç êàâû÷åê!
var helpY=53 # Ïåðåìåííûå áåç êàâû÷åê!
var recallrunebook=0 # Óëåòàåò îò ïê ïî ðóíáóêå èëè ïî ðóíå. 1-ðóíáóê, 0-ðóíà.
var food='0x09BB' # Òèï åäû. Áóäåò áðàòü ïî 2 è êóøàòü.
sub main()
var markflag
uo.exec('exec Reconnector')
if not uo.getglobal('flagRes')=='1' then
uo.exec('exec Resurrector')
uo.setglobal('flagRes','1')
endif
wait(1000)
uo.print('Dont forget track world items!')
uo.findtype(rune,-1,'backpack')
if uo.findcount() then
Runehome=uo.getserial('finditem')
else
uo.print('Runehome not found! Terminate.')
uo.exec('terminate all')
endif
Open(Chest)
GrabBlankRune()
while not uo.dead()
Open(Runebag)
uo.findtype(rune,-1,Runebag)
while uo.findcount()
uo.print('Ìåäèòèðóåì')
meditation(uo.int)
Nrune=uo.getserial('finditem')
uo.moveitem(Nrune,0,Dropbag)
checklag()
wait(700)
RegCheck()
RegCheck()
grabinvis()
GetPickaxe()
grabvortex()
toeat()
RecallRune(Nrune)
uo.ignorereset()
markflag=0
flagpk=0
checkifelem()
if uo.injournal('is attacking you') then
uo.warmode(0)
invis()
endif
if uo.injournal('The recall rune fades completely.') then
markflag=1
Mark(Blankrune,0)
Runinetu=1
endif
mining()
checkifelem()
if not flagpk==1 then
repeat
RecallRune(Runehome)
until uo.getx('self')==homeX && uo.getY('self')==homeY
endif
if uo.injournal('The recall rune fades completely.') then
Open(Chest)
if Runinetu==1 then
GrabBlankRune()
endif
Mark(Blankrune,1)
GrabBlankRune()
endif
Open(Chest)
if Runinetu==1 then
GrabBlankRune()
endif
if markflag==1 then
uo.moveitem(Nrune,0,Dropbag)
checklag()
wait(700)
endif
Dropore()
if flagpk==1 then
uo.print(' æäåì 100 ñåêóíä ')
wait(100000)
endif
Open(Runebag)
uo.findtype(rune,-1,Runebag)
wend
DropbagCheck()
wend
endsub
sub Resurrector()
var oldX,oldY
while 1
if uo.dead() then
uo.exec('terminate main')
uo.exec('terminate Reconnector')
uo.TextOpen()
uo.TextPrint('- dead - @ '+MakeTime())
wait(5000)
oldX = Uo.GetX()
oldY = Uo.GetY()
uo.useobject('self')
checklag()
wait(700)
repeat
uo.lclick(helpX,helpY)
checklag()
wait(700)
uo.lclick(264,308)
checklag()
wait(700)
uo.lclick(175,203)
checklag()
wait(5000)
until oldX<>UO.GetX() OR oldY<>UO.GetY()
repeat
uo.press(39)
wait(2000)
until UO.GetY()<534
repeat
uo.useobject('0x4001BDF0')
wait(3000)
until uo.life>0
Open(uo.getserial('backpack'))
wait(100000)
oldX = Uo.GetX()
oldY = Uo.GetY()
uo.recall(Runebook,Runenr)
repeat
wait(700)
until oldX<>uo.getx('self') && oldY<>uo.gety('self')
Open(Chest)
RegCheck()
GrabBlankRune()
Mark(Blankrune,1)
if uo.waiting() then
uo.canceltarget()
endif
uo.exec('exec main')
endif
wait(5000)
wend
endsub
sub checkifelem()
uo.ignorereset()
uo.findtype('0x0010',-1,'ground')
if uo.findcount() then
invis()
endif
endsub
sub GetPickaxe()
var n
dim instrument[4]
instrument[1]='0x0F39'
instrument[2]='0x0F3A'
instrument[3]='0x0E86'
instrument[4]='0x0E85'
if uo.count('0x0F39')==0 and uo.count('0x0F3A')==0 and uo.count('0x0E86')==0 and uo.count('0x0E85')==0 then
for n=1 to 4
uo.findtype(instrument[n],-1,Chest)
if uo.findcount() then
pickaxe=uo.getserial('finditem')
uo.moveitem('finditem',0,'backpack')
checklag()
wait(700)
return
endif
next
else
for n=1 to 4
uo.findtype(instrument[n],-1,'my')
if uo.findcount() then
pickaxe=uo.getserial('finditem')
return
endif
next
endif
while 1
uo.print(' pickaxe not found ')
wait(3000)
wend
endsub
sub Tohide()
while not uo.Hidden()
uo.warmode(0)
uo.Print('Ïûòàåìñÿ óéòè â õàéä...')
uo.UseSkill('Hiding')
wait(4000)
wend
end sub
sub checkelem()
var n
var flagvortex, Elemental, flaginvis
Dim ore[2]
ore[1]='0x19B8'
ore[2]='0x19B9'
uo.set('finddistance','3')
uo.findtype('0x0010',-1,'ground')
while uo.findcount()
Elemental=uo.getserial('finditem')
if checkcolor(Elemental)==1 then
flagvortex=1
if not flaginvis==1 then
invis()
flaginvis=1
endif
castvortex()
uo.textopen()
uo.textprint(uo.getname(Elemental)+' @ '+MakeTime())
for n=0 to 15
wait(1000)
checkpk()
if flagpk==1 then
return
endif
next
else
uo.ignore(Elemental)
endif
uo.findtype('0x0010',-1,'ground')
wend
if flagvortex==1 then
repeat
checklag()
while uo.mana<22
wait(500)
wend
uo.waittargetobject('self')
uo.cast('Mass Dispel')
WaitForMana()
wait(1000)
until not uo.injournal('The spell fizzles')
for n=1 to 2
uo.findtype(ore[n],-1,'ground')
while uo.findcount()
uo.moveitem('finditem',-1,'backpack')
checklag()
wait(700)
uo.findtype(ore[n],-1,'ground')
wend
next
return 1
endif
endsub
sub checkcolor(obj)
var n, c
Dim color[14]
color[1]='0x09DA' ; vulcan
color[2]='0x0060' ; aqua
color[3]='0x0BA7' ; eldar
color[4]='0x09E6' ; elvin
color[5]='0x09B9' ; acid
color[6]='0x09D3' ; steel
color[7]='0x008F' ; sand rock
color[8]='0x09EC' ; blood crest
color[9]='0x09F0' ; gorgan
color[10]='0x010F' ; krynite
color[11]='0x09A4' ; crystaline
color[12]='0x0085' ; dragon
color[13]='0x08AF' ; plutonium
color[14]='0x0028' ; obsidian
c=uo.getcolor(obj)
for n=1 to 14
if c == color[n] then
return 1
endif
next
endsub
sub castvortex()
repeat
checklag()
uo.waittargettile('1341',str(uo.getx()),str(uo.gety()),str(uo.getz()))
uo.resend()
uo.findtype('0x1F66',-1,'backpack')
if uo.findcount() then
while uo.mana<13
wait(500)
wend
uo.useobject('finditem')
else
while uo.mana<27
wait(500)
wend
uo.cast('Energy Vortex')
endif
WaitForMana()
until not uo.injournal('The spell fizzles')
endsub
sub WaitForMana()
VAR w,m
m=uo.mana
for w=0 to 100
if uo.mana<m then
return
endif
if uo.injournal('is attacking you') then
checklag()
invis()
endif
wait(200)
next
endsub
sub grabvortex()
var kol=1, q
uo.findtype('0x1F66',-1,'backpack')
if uo.getquantity('finditem')<kol then
q=kol-uo.getquantity('finditem')
uo.print('Èùåì âîðòåêñ')
uo.findtype('0x1F66',-1,Chest)
if uo.findcount() then
uo.moveitem('finditem',STR(q),'backpack')
checklag()
wait(700)
endif
endif
endsub
sub toeat()
repeat
uo.findtype(food,-1,Chest)
if uo.findcount() then
uo.moveitem('finditem','2','backpack')
checklag()
wait(600)
repeat
uo.usetype(food)
wait(500)
until uo.injournal('full to eat') or uo.count(food)==0
endif
until uo.injournal('full to eat')
uo.findtype(food,-1,'backpack')
if uo.findcount() then
uo.moveitem('finditem',0,Chest)
checklag()
wait(600)
endif
endsub
sub Open(what)
uo.useobject(what)
checklag()
wait(700)
endsub
sub Dropore()
var n
Dim ore[5]
ore[0]='0x19BA'
ore[1]='0x19B7'
ore[2]='0x19B8'
ore[3]='0x19B9'
ore[4]='0x0F10'
uo.warmode(0)
uo.useskill('Hiding')
for n=0 to 4
uo.findtype(ore[n],-1,'backpack')
while uo.findcount()
uo.moveitem('finditem',0,Orechest)
checklag()
wait(700)
uo.findtype(ore[n],-1,'backpack')
wend
next
uo.print('Dropore done.')
endsub
sub Mark(RuneID,Place)
repeat
meditation(33)
checklag()
Uo.Cast('Mark',RuneID)
WaitForMana()
wait(300)
until not uo.injournal('The spell fizzles')
if Place==0 then
Nrune=uo.getserial(RuneID)
else
Runehome=uo.getserial(RuneID)
endif
endsub
sub meditation(mn)
uo.warmode(0)
while uo.mana < mn
if uo.mana==uo.int then
return
endif
checklag()
uo.Useskill('Meditation')
waitformed(mn)
wait(1000)
wend
endsub
sub waitformed(mn)
var n
for n=0 to 100
if uo.injournal('You lose|You are at peace') or uo.mana>=mn then
return
endif
wait(500)
next
endsub
sub RecallRune(nowrune)
uo.Print('óëåòàåì ïî ðóíå')
var oldX,oldY
oldX = Uo.GetX()
oldY = Uo.GetY()
repeat
meditation(20)
checklag()
Uo.Cast('Recall',nowrune)
WaitForMana()
wait(1000)
Until oldX<>UO.GetX() AND oldY<>UO.GetY()
endsub
sub grabinvis()
uo.findtype('0x0F0E',-1,'backpack')
while uo.findcount()
uo.moveitem('finditem',0,Chest)
checklag()
wait(700)
uo.findtype('0x0F0E',-1,'backpack')
wend
uo.findtype('0x0F0E','0x0631',Chest)
if uo.findcount() then
uo.print('Èùåì èíâèçêó')
uo.moveitem('finditem','2','backpack')
checklag()
wait(700)
endif
endsub
sub RegCheck()
VAR i,q
VAR kol=9
Dim Regs[6]
Regs[0]='0x0F7A' ; Black Pearl
Regs[1]='0x0F7B' ; Bood Moss
Regs[2]='0x0F86' ; Mandrake Root
Regs[3]='0x0F88' ; Nightshade
Regs[4]='0x0F8C' ; Sulfurous Ash
Regs[5]='0x0F84' ; Garlic

for i=0 to 5
if uo.count(Regs[i])<>kol then
q=kol-uo.count(Regs[i])
if q<>0 then
if q>0 then
uo.findtype(Regs[i],-1,Chest)
if uo.findcount() then
uo.moveitem('finditem',STR(q),'backpack')
checklag()
wait(700)
uo.print('Áåðåì ðåãè äëÿ ðåêîëà...')
else
uo.print('No regs')
return
endif
else
q=q*-1
uo.findtype(Regs[i],-1,'my')
if uo.findcount() then
uo.moveitem('finditem',STR(q),Chest)
checklag()
wait(700)
uo.print('Ðåãîâ áîëüøå ÷åì íàäî. Êèäàåì ëèøíåå â ñóíäóê')
endif
endif
endif
endif
next
endsub
sub GrabBlankRune()
Open(BlankRunebag)
uo.findtype(rune,-1,BlankRunebag)
if uo.findcount() then
Blankrune=uo.getserial('finditem')
uo.moveitem('finditem',0,'backpack')
checklag()
wait(700)
uo.print('Âçÿëè áëàíê ðóíó')
Runinetu=0
else
uo.print('Áëàíê ðóí áîëüøå íåòó! Ñêðèïò îñòàíîâëåí.')
uo.exec('terminate all')
endif
endsub
sub DropbagCheck()
uo.print('Ïðîâåðÿåì ìåøîê Dropbag')
Open(Dropbag)
uo.findtype(rune,-1,Dropbag)
while uo.findcount()
uo.moveitem('finditem',0,Runebag)
checklag()
wait(700)
uo.print('Íàøëè ðóíó. Êëàäåì èõ â ñóìêó Runebag.')
uo.findtype(Rune,-1,Dropbag)
wend
endsub
sub mining()
var mx, my, mz, i, j, f
mx = UO.GetX('self')
my = UO.GetY('self')
mz = UO.GetZ('self')
for i = mx-4 to mx+4
for j = my -4 to my+4
repeat
if uo.count('0x0F39')==0 and uo.count('0x0F3A')==0 and uo.count('0x0E86')==0 and uo.count('0x0E85')==0 then
return
endif
if uo.injournal('You loosen some rocks but fail') then
wait(10000)
endif
Tohide()
UO.Print('Êîïàåì â êîîðäèíàòàõ: '+str(mx-i)+' '+str(my-j))
DigAhole(i,j,mz)
if uo.injournal('You have been revealed') then
uo.warmode(0)
invis()
return
endif
if flagpk==1 then
return
endif
until not uo.injournal('You loosen some rocks but fail')
if checkelem()==1 then
return
endif
next
next
endsub
sub DigAhole(i,j,mz)
var f
for f=0 to 10
checklag()
uo.waittargettile('1341',i,j,mz)
uo.useobject(pickaxe)
if waitforore()==1 then
return
endif
next
endsub
sub waitforore()
var n
for n=0 to 50
checkpk()
if uo.injournal('no ore here|location|far away|in rock|You have been revealed') or flagpk==1 then
return 1
endif
if uo.injournal('You put|heavy|but fail') then
return
endif
wait(500)
next
endsub
sub checkpk()
var n
var ser
var noto
var me=uo.getserial('self')
for n=0 to 9
ser=uo.journalserial(n)
noto=uo.getnotoriety(ser)
if not ser==me then
if noto<>0 and noto<>1 and noto<>3 and not uo.injournal('Elemental|Scorpion King|Giant Spider|Energy Vortex') then
uo.TextOpen()
uo.TextPrint(uo.getname(ser)+' @ '+MakeTime())
invis()
if recallrunebook==1 then
gohome()
else
RecallRune(Runehome)
endif
flagpk=1
return
endif
endif
next
endsub
sub gohome()
var oldX=uo.getx('self')
var oldY=uo.gety('self')
uo.recall(Runebook,Runenr)
repeat
wait(700)
if uo.injournal('You have been revealed') then
checklag()
invis()
endif
until oldX<>uo.getx('self') && oldY<>uo.gety('self')
endsub
sub invis()
uo.usetype('0x0F0E','0x0631')
endsub
sub CheckLag()
repeat
UO.DeleteJournal()
UO.Click('backpack')
until backpack()==1
endsub
sub backpack()
var n
for n=0 to 200
if uo.injournal('a backpack') then
return 1
endif
wait(200)
next
endsub
sub Reconnector()
var ReconnectTime, RFlag
ReconnectTime = '0'
RFlag = 1
Repeat
While (UO.ObjAtLayer('Bpack') == '')
if RFlag Then
ReconnectTime = MakeTime()
RFlag = 0
endif
Wait(1000)
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 all')
;UO.Exec('exec autoload')
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


кто может помогите!!!
зарание спс!!!
7ice_k7
Posts: 30
Joined: 2014-06-03 16:10:29

Re: помощь по минингу

Post by 7ice_k7 »

и еще есть прозьба нельзяли данный скрипт переделать под рунбук???
Post Reply