Скрипт на мининг, добавьте инвизибл?

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
shaman52
Posts: 9
Joined: 2004-09-12 23:20:49

Скрипт на мининг, добавьте инвизибл?

Post by shaman52 »

Есть такой вот замечательный скрипт на мининг, который меня очень устраивает, но вот хотелось бы, чтобы когда появляется ПК и происходит экстренный рекал по рунке, перед этим бы чар выпивал бутылочку инвизибилити, и уже после этого реколился домой (как вариант, можно ещё чтобы он отходил на пару шагов с этого места). Вот собственно сам скрипт, помогите кто знает:

Code: Select all

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

uo.print('!!Viberi Lopatu!! ') 
uo.exec('addobject Shovel') 
while uo.targeting() 
wait(100) 
wend 
  
uo.print('!!Viberi Runebook!! ') 
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("Hiding...") 
UO.UseSkill("Hiding") 
wait(4000) 
wend 
UO.Print("Kopaem v koordinatah: "+str(mx-i)+" "+str(my-j)) 
while not UO.InJournal("no ore here") and not UO.InJournal("location") and not UO.InJournal("Copper Ore") and not UO.InJournal("Dull Copper Ore") and not UO.InJournal("Old Copper Ore") and not UO.InJournal("Rusty Ore") and not UO.InJournal("Iron Ore") and not UO.InJournal("far away") and not UO.InJournal("in rock")
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()
var Time 
Time=Time()
uo.TextOpen() 
uo.TextPrint("Вроде ушли, ждем пока уйдёт ПК "+time)  
wait(180000) ; время в секундах при ожидании пока уйдет ПК 
loot() 
wait(3000) 
goto reccal 
endif 
next    
wend 
if uo.weight > 250 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(15000) 
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(15000) 
if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then 
goto reccal 
endif 
goto na4alo 
end sub 

sub loot()    ; перекладка руды в сундук 
var Time 
Time=Time()
uo.TextOpen() 
uo.TextPrint("Выкладываем оры в сундук "+time) 
if uo.waiting() then 
uo.canceltarget() 
endif 
VAR a,Exit 
VAR UnloadCont='0x401f219d' ; АЙДИ сундука для руды  
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 Time 
Time=Time()
uo.TextOpen() 
uo.TextPrint("Нас атаковали, смываемся " +time) 
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:\Games\UO\inject\alarm.wav") 
endsub 

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

sub Pause() ; Пауза скрипта если выкопали Элема (продолжить сказав GO ) 
UO.DeleteJournal() 
REPEAT 
WAIT(3000) 
UO.Print("!!!Skript na pauze, napishi GO!!!!") 
UNTIL UO.InJournal('GO') 
UO.Print("!!!Skript prodoljen!!!!") 
endif 
end sub

sub Time() 
var hh,mm,ss,hms,t=str(uo.Time()) 
if len(t)<=2 then 
hh="0" 
mm="0" 
ss=t 
endif 
if len(t)==3 then 
hh="0" 
mm=left(t,len(t)-2) 
ss=right(t,len(t)-1) 
endif 
if len(t)==4 then 
hh="0" 
mm=left(t,len(t)-2) 
ss=right(t,len(t)-2) 
endif 
if len(t)==5 then 
hh=left(t,len(t)-4) 
hms=left(t,len(t)-2) 
mm=right(hms,len(hms)-1) 
ss=right(t,len(t)-3) 
endif 
if len(t)==6 then 
hh=left(t,len(t)-4) 
hms=left(t,len(t)-2) 
mm=right(hms,len(hms)-2) 
ss=right(t,len(t)-4) 
endif 
return hh+":"+mm+":"+ss 
end sub 
Видимо добавлять нужно в этом куске:

Code: Select all

sub Save() ; Реколл от ПК при их появлении (в паке рунка в безопасное место и реги) 
var Time 
Time=Time()
uo.TextOpen() 
uo.TextPrint("Нас атаковали, смываемся " +time) 
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 
shaman52
Posts: 9
Joined: 2004-09-12 23:20:49

Post by shaman52 »

Да, и ещё, если удачно свалил от ПК или просто когда выкладывает оры в сундук (дома), то проверял, есть ли бутылочка инвиза в паке и если нет, то пытался взять её из сундука с орами (в который выкладывает их).

Заранее спасибо всем кто поможет.
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

shaman52 wrote:Да, и ещё, если удачно свалил от ПК или просто когда выкладывает оры в сундук (дома), то проверял, есть ли бутылочка инвиза в паке и если нет, то пытался взять её из сундука с орами (в который выкладывает их).

Заранее спасибо всем кто поможет.
Не помогает это !!! Пробовали уже и так и сяк !!! Те ПК которые успевали мочить они и с инвизом успевают, а остальные не успевают те чар сматывается !!! Проблему просто решили !!! Сча тестируется скрипт для копания не в шахте , а вдоль скалы !!! Мой сосед пока за 3 недели 1 раз всего помер !!! Процентов на 30 поднял мининг !!!

А так в принципе вот так !!!

Code: Select all

sub Save() ; Реколл от ПК при их появлении (в паке рунка в безопасное место и реги) 
var Time 
Time=Time() 
uo.TextOpen() 
uo.TextPrint("Нас атаковали, смываемся " +time) 
var mx, my 
reccal: 
uo.deletejournal() 
if uo.waiting() then 
uo.canceltarget() 
endif 
mx = UO.GetX("self") 
my = UO.GetY("self") 
UO.UseType('XXXXXX') ; Сдеся тип пойла инвизы !!!
wait(200) 
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 
Сделал дело - флуди смело !!!
shaman52
Posts: 9
Joined: 2004-09-12 23:20:49

Post by shaman52 »

А скиньте этот чудесный скрипт на копание вдоль скалы?
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

shaman52 wrote:А скиньте этот чудесный скрипт на копание вдоль скалы?
ISQ 348-978-237
Сделал дело - флуди смело !!!
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Askaneli wrote:Сча тестируется скрипт для копания не в шахте , а вдоль скалы !!! Мой сосед пока за 3 недели 1 раз всего помер !!! Процентов на 30 поднял мининг !!!
а меня ни разу :D правда к этому куску скалы никто кроме меня подойти не может :D
Askaneli wrote:А так в принципе вот так !!!
я бы вот так сделал:

Code: Select all

sub Save() ; Реколл от ПК при их появлении (в паке рунка в безопасное место и реги) 
var Time 
if uo.waiting() then 
uo.canceltarget() 
endif 
UO.UseType('XXXXXX') 
...
end sub 
чуток, но быстрее.
основная трабла в обнаружении противника и прерывании копания, а не в скорости улёта, ИМХО.
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

Sfagnum wrote:
Askaneli wrote:Сча тестируется скрипт для копания не в шахте , а вдоль скалы !!! Мой сосед пока за 3 недели 1 раз всего помер !!! Процентов на 30 поднял мининг !!!
а меня ни разу :D правда к этому куску скалы никто кроме меня подойти не может :D
Askaneli wrote:А так в принципе вот так !!!
я бы вот так сделал:

Code: Select all

sub Save() ; Реколл от ПК при их появлении (в паке рунка в безопасное место и реги) 
var Time 
if uo.waiting() then 
uo.canceltarget() 
endif 
UO.UseType('XXXXXX') 
...
end sub 
чуток, но быстрее.
основная трабла в обнаружении противника и прерывании копания, а не в скорости улёта, ИМХО.
Я сказал что не помогает инвиз !!! Толку от него нету !!!
Сделал дело - флуди смело !!!
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Askaneli wrote:Я сказал что не помогает инвиз !!! Толку от него нету !!!
а я сказал почему.
тем более если юзается процедурка мониторинга челов аналогичная используемой в скрипте на ламбер.
Post Reply