Yoko

All sides of Injection
It is currently 2024-03-29 13:17:41

All times are UTC+02:00




Post new topic  Reply to topic  [ 12 posts ] 
Author Message
 Post subject: Ламбер,Хелп
PostPosted: 2013-07-17 09:13:48 
Offline

Joined: 2013-01-07 10:31:07
Posts: 15
Доброе утро всем) Ребят вот такая проблема с скриптом, вот записываешь деревья в режиме записи. Допустим 5 штук записал, все нажал киркой на себя он начел рубить. Потходит к дереву рубит, потом повтор жмет по дереву пишется It appears immune to your blow и стоит и не рубит дальше. Если нажимаешь ручками на тапор и по дереву он рубит! Вот такая проблема.

Есть еше одна проблема, когда записываешь деревья потом переключаешь скрипт в режим чтения блакнота с кординатами деревьев он выдает ошибку Unhandled exception in parser.

Шард оском фрее

Помогите ребятки плизики









###################
var f=file("Ñ:\trees3") ## - Ïóòü ê ôàéëó â êîòîðîì áóäóò õðàíèòñÿ êîîðäèíàòû äåðåâüåâ.
###
var TryHiding=1 ## 1 - Ïåðåä òåì êàê ðóáèòü äåðåâî, áóäåò ïûòàòüñÿ óéòè â õàéä, 0 - íå áóäåò .
###
var LogsQty=400000000 ## - Êîëè÷åñòâî ëîãîâ, äîáûâ êîòîðîå íàäî ðåêîëèòüñÿ äîìîé.
###
var GetFromFile=1 ## 1 - Êîîðäèíàòû äåðåâüåâ áóäóò ñ÷èòûâàòñÿ èç ôàéëà, 0 - ñîáèðàòñÿ èç êëèåíòà
### (ñíà÷àëà ñîáåðèòå à ïîòîì ñ÷èòûâàéòå èç ôàéëà).
###
var EatingFood=0 ## 1 - Áóäåì åñòü, 0 - íåò.
###
var SSpeak=0 ## 1 - Áóäåì êà÷àòü è ñïèðèò ñïèê, 0 - íå áóäåì.
###
var TypeFood='0x097B' ## - Òèï åäû êîòîðóþ áóäåì êóøàòü.(ñåé÷àñ ôèøòåéêè)
###
var Chest='0x401A442D' ## - ID ñóíäóêà êóäà áóäóò âûãðóæàòüñÿ ëîãè.
###
var Trytodrop=0 ## Áóäåì ïûòàòñÿ ïîäõîäèòü ê ñóíäóêó èëè íåò.
###
var ContX=1234 ##Êîîðäèíàòû X ó ñóíäóêà
###
var ContY=1234 ##Êîîðäèíàòû Y ó ñóíäóêà
###
var oldX,oldY,time ## - Äëÿ ðåêîëà.
###
###########
### Êîä ###
###########
sub Lumberjacking()
var i=0,j=0,k=0,r=0,q=0,ii,jj
var TopX=324,TopY=65
dim TreeX[5000], TreeY[5000],TreeT[5000]
dim TreeTile[29]
var flag=0,treeCount=0,clicks=0,flag2=0
########################
### Ãðàôèêà äåðåâüåâ ###
########################
TreeTile[0]=3277
TreeTile[1]=3280
TreeTile[2]=3283
TreeTile[3]=3286
TreeTile[4]=3289
TreeTile[5]=3291
TreeTile[6]=3294
TreeTile[7]=3296
TreeTile[8]=3299
TreeTile[9]=3302
TreeTile[10]=3393
TreeTile[11]=3394
TreeTile[12]=3395
TreeTile[13]=3396
TreeTile[14]=3415
TreeTile[15]=3416
TreeTile[16]=3417
TreeTile[17]=3418
TreeTile[18]=3419
TreeTile[19]=3438
TreeTile[20]=3439
TreeTile[21]=3440
TreeTile[22]=3441
TreeTile[23]=3442
TreeTile[24]=3460
TreeTile[25]=3461
TreeTile[26]=3462
TreeTile[27]=3290
TreeTile[28]=3288

uo.Exec("filterspeech on")
uo.Exec("filterspeech add 'Where do you want to use the pickaxe?'")

uo.Print('Âûáåðè Òîïîð: ')
uo.Exec('addtype Axe')
while uo.Targeting()
wait(100)
wend

#####################################
### Çàãðóæàåì êîîðäèíàòû èç ôàéëà ###
#####################################
if GetFromFile==1 then
uo.Print('Çàãðóæàåì êîîðäèíàòû èç ôàéëà...')
f.open()
treeCount=safe call f.ReadNumber()
for i=1 to treeCount
TreeT[i]=safe call f.ReadNumber()
TreeX[i]=safe call f.ReadNumber()
TreeY[i]=safe call f.ReadNumber()
next
f.close()
else
######################################
### Ñîáèðàåì êîîðäèíàòû èç êëèåíòà ###
######################################
uo.Print('Âûáåðè Êèðêó: ')
uo.Exec('addobject Pickaxe')
while uo.Targeting()
wait(100)
wend
uo.Print('Ñîáèðàåì êîîðäèíàòû äåðåâüåâ â îêðóãå...')
repeat
clicks=0
flag=0
uo.DeleteJournal()
#######################
### Êëèêàåì íà òàéë ###
#######################
uo.UseObject('Pickaxe')
waitForTarget()
uo.DeleteJournal()
WaitForTryRock()
###############################
### Ïðîâåðÿåì äåðåâî ëè ýòî ###
###############################
flag=0
for k=0 to 28
if uo.LastTile(0)==TreeTile[k]+1 then
flag=2
end if
next
if flag==0 then
for k=0 to 28
if uo.LastTile(0)==TreeTile[k] then
flag=1
end if
next
end if
if uo.Lasttile(1)==uo.getX() and uo.Lasttile(2)==uo.gety() then
flag=3
end if
#########################
### Êëèêíóëè íà ñòâîë ###
#########################
if flag==1 then
flag2=0
if treeCount>0 then
for ii=1 to treeCount
if TreeX[ii]==uo.LastTile(1) and TreeY[ii]==uo.LastTile(2) then
flag2=1
end if
next
end if
if flag2==0 then
treeCount=treeCount+1
TreeX[treeCount]=uo.LastTile(1)
TreeY[treeCount]=uo.LastTile(2)
TreeT[treeCount]=uo.LastTile(0)
uo.Print('Íàéäåíî äåðåâî '+str(treeCount)+' : x='+str(uo.Lasttile(1))+' y='+str(uo.LastTile(2))+' '+str(treeCount))
end if
end if
##########################
### Êëèêíóëè ïî ëèñòâå ###
##########################
if flag==2 then
flag2=0
if treeCount>0 then
for ii=1 to treeCount
if TreeX[ii]==uo.LastTile(1) and TreeY[ii]==uo.LastTile(2) then
flag2=1
end if
next
end if
if flag2==0 then
treeCount=treeCount+1
TreeX[treeCount]=uo.LastTile(1)
TreeY[treeCount]=uo.LastTile(2)
TreeT[treeCount]=uo.LastTile(0)-1
uo.print('Íàéäåíî äåðåâî '+str(treeCount)+' : x='+str(uo.Lasttile(1))+' y='+str(uo.LastTile(2)))
end if
end if
until (Flag==3) or (treeCount==500)
uo.Exec("filterspeech off")
uo.Print('Àíàëèç çàêîí÷åí, êîîðäèíàòû äåðåâüåâ çàïèñàíû â ôàéë C:\trees3.dat')
SaveToFile(treeCount,TreeX,TreeY,TreeT)
end if
uo.Print('Äåðåâüåâ íàéäåíî: '+str(treeCount))
wait(2000)
######################################
### Õîäèì ïî ñîáðàííûì êîîðäèíàòàì ###
######################################
while 1==1
if treeCount>0 then
for i=1 to treeCount
end if
if Trytodrop==1 and uo.Count('ZLK')>=LogsQty then
GotoXY(uo.getx(Chest),uo.gety(Chest))
DropLogs()
end if
uo.Print('Èäåì ê äåðåâó '+str(i)+': x='+str(TreeX[i])+' y='+str(TreeY[i]))
InfoLogs()
flag=GotoXY(TreeX[i],TreeY[i])
if flag==1 then
if TryHiding==1 then
ToHide()
end if
GetTree(str(TreeT[i]),str(TreeX[i]),str(TreeY[i]),str(uo.GetZ()))
end if
next
end if
wend
end sub

Sub GetTree(Type,X,Y,Z)
var i
uo.Print('Íà÷èíàåì ðóáêó äåðåâà...')
for i=0 to 8
if uo.Warmode()==1 then
return 0
end if
wait(200)
uo.DeleteJournal()
uo.WaitTargetTile(Type,X,Y,Z)
uo.Usetype('Axe')
if WaitForChange()==1 then
return 1
end if
next
return 0
end sub

Sub ToHide()
if SSpeak==1 then
UO.Useskill('Spirit Speak')
wait(3000)
endif
while not uo.Hidden()
uo.Print('Ïûòàåìñÿ óéòè â õàéä...')
uo.DeleteJournal()
uo.UseSkill('Stealth')
wait(3000)
wend
wait(100)
end sub


Sub WaitForHide()
var Text1=uo.GetName()+": You have hidden yourself well"
var Text2=uo.GetName()+": You can't seem to hide here."
var mess
for var i=0 to 200
mess=uo.Journal(0)
if uo.Journal(0)==Text1 then
return 1
end if
if uo.Journal(0)==Text2 then
return 0
end if
wait(50)
next
return 0
end sub

Sub WaitForChange()
var Text1=uo.GetName()+': You hack at the tree for a while, but fail to produce any useable wood.'
var Text2='There are no logs here to chop.'
var Text3="You can't reach this."
var Text4="That is too far away."
var Text5="You can't do much in your current state."
var mess
for var i=0 to 200
mess=uo.Journal(0)
if uo.Journal(0)==Text2 or uo.Journal(0)==Text3 or uo.Journal(0)==Text4 then
return 1
end if
if uo.Journal(0)==Text1 then
return 0
end if
if mess[0]=='Y' and mess[1]=='o' and mess[2]=='u' and mess[4]=='p' and mess[5]=='u' and mess[6]=='t' then
return 0
end if
wait(50)
next
return 0
end sub

Sub WaitForTryRock()
var Text1="That is too far away."
var Text2="Try mining in rock."
var Text3="There is no ore here to mine."
var Text4="You have no line of sight to that location"
var Text5="You can't see the target"
for var i=0 to 50
if uo.Journal(0)==Text1 or uo.Journal(0)==Text2 or uo.Journal(0)==Text3 or uo.Journal(0)==Text4 or uo.Journal(0)==Text5 then
return 1
end if
wait(200)
next
return 0
end sub

Sub WaitForTarget()
for var i=0 to 50
if uo.Targeting()==1 then
return 1
end if
wait(200)
next
return 0
end sub

Sub WaitForChangeXY(myX,myY,lastX,lastY)
for var i=1 to 50
if lastX<>myX or lastY<>myY then
return 1
end if
wait(200)
next
return 0
end sub

Sub GotoXY(x,y)
var myX,myY,lastX=0,lastY=0,i,halt=0,z,r=0
for i=1 to 60
myX=uo.getX();
myY=uo.getY();
if LastX==myX and LastY==myY then
halt=halt+1
else
halt=0
end if
if halt>=10 then
if uo.GetDir()==1 then
for z=0 to 8
uo.Press(40)
next
end if
if uo.GetDir()==3 then
for z=0 to 8
uo.Press(37)
next
end if
if uo.GetDir()==5 then
for z=0 to 8
uo.Press(38)
next
end if
if uo.GetDir()==7 then
for z=0 to 8
uo.Press(39)
next
end if
halt=15
end if
if Numb(x-myX)<=1 and Numb(y-myY)<=2 then
return 1
end if
if x<=myX then
if y<=myY then
for z=0 to 3
uo.Press(38)
next
else
for z=0 to 3
uo.Press(37)
next
end if
else
if y<=myY then
for z=0 to 3
uo.Press(39)
next
else
for z=0 to 3
uo.Press(40)
next
end if
end if
lastX=myX
lastY=myY
wait(200)
next
return 0
end sub

Sub Numb(num)
if num>=0 then
return num
else
return num*(-1)
end if
end sub

Sub SaveToFile(treeCount,TreeX,TreeY,TreeT)
var f=file("C:\trees3.dat")
var s=0,i=0
f.open()
f.create()
s=safe call f.writeln(treeCount)
for i=1 to treeCount
s=safe call f.writeln(str(TreeT[i])+' '+str(TreeX[i])+' '+str(TreeY[i]))
next
f.close()
end sub

sub DropLogs()
uo.say("Âûêëàäûâàþ ëîãè !!! Íå áåñïîêîèòü !!!")
if uo.Waiting() then
uo.CancelTarget()
end if
var a,Exit
dim Logs[1]
Logs[0]=0x1BDD
uo.Print('Âûêëàäûâàåì Ëîãè.')
uo.SetReceivingContainer(Chest)
wait(500)
for a=0 to 0
Exit=0
repeat
uo.FindType(Logs[a])
if uo.GetQuantity('finditem')>0 then
uo.Grab('0','finditem')
wait(1500)
GotoXY(ContX,ContY)
else
Exit=1
end if
until Exit==1
next
if EatingFood==1 then
EatingFood()
end if
uo.UnSetReceivingContainer(Chest)
uo.Print('Ëîãè Âûëîæåíû.')
end sub


Sub InfoLogs()
uo.Print('Ó âàñ âñåãî '+str(uo.Count('0x1BDD'))+' ëîãîâ â ñóìêå')
uo.Print('Èç íèõ '+str(uo.Count('0x1BDD','0x0000'))+' ïðîñòûõ è ' +str(uo.Count('0x1BDD')-uo.Count('0x1BDD','0x0000'))+' öâåòíûõ')
end sub

Sub Open(Container)
uo.DeleteJournal()
uo.UseObject(Container)
repeat
wait(500)
until uo.InJournal('Contains')
end sub


Sub EatingFood()
ToEat()
DropFood()
end sub

Sub ToEat()
uo.SetReceivingContainer('backpack')
Open(Chest)
uo.FindType(TypeFood,'-1',Chest)
uo.Grab('50','finditem')
wait(500)
repeat
Checklag()
uo.UseType(TypeFood)
wait(1000)
until uo.InJournal('You are simply too full to eat any more!')
uo.UnsetReceivingContainer()
end sub

Sub DropFood()
if uo.Waiting() then
uo.CancelTarget()
end if
var f,Exit
dim Food[1]
Food[0]=TypeFood
uo.SetReceivingContainer(Chest)
wait(500)
for f=0 to 0
Exit=0
repeat
uo.FindType(Food[f])
if uo.GetQuantity('finditem')>0 then
uo.Grab('0','finditem')
wait(1500)
else
Exit=1
end if
until Exit==1
next
uo.UnSetReceivingContainer(Chest)
end sub

Sub CheckLag()
if uo.Waiting()>0 then
uo.Exec('canceltarget')
end if
uo.DeleteJournal()
uo.Click('backpack')
repeat
wait(50)
until uo.InJournal('backpack')
end sub


Top
   
PostPosted: 2013-07-17 10:31:52 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
надо добавить строку It appears immune to your blow

в кусок:
Code:
Sub WaitForChange() 
var Text1=uo.GetName()+': You hack at the tree for a while, but fail to produce any useable wood.'
var Text2='There are no logs here to chop.'
var Text3="You can't reach this."
var Text4="That is too far away."
var Text5="You can't do much in your current state."
var Text6="It appears immune to your blow"
var mess
for var i=0 to 200
mess=uo.Journal(0)
if uo.Journal(0)==Text2 or uo.Journal(0)==Text3 or uo.Journal(0)==Text4 then
return 1
end if
if uo.Journal(0)==Text1 or uo.Journal(0)==Text6 then
return 0
end if
if mess[0]=='Y' and mess[1]=='o' and mess[2]=='u' and mess[4]=='p' and mess[5]=='u' and mess[6]=='t' then
return 0
end if
wait(50)
next
return 0
end sub

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2013-07-17 12:09:35 
Offline

Joined: 2013-01-07 10:31:07
Posts: 15
Мираж я вставил все. А теперь такой прикол тварится он нажимает много раз дерево тапориком и пишет вот этот текст который вставили 5 раз и бежит к другому и так по кругу... У мня вердата стоит с пеньками на пеньках тапорики нарисованы. Когда руками тыкаешь по ним тапориком все рубит... А скриптом тыкаешь вот такую шнягу пишет...

В чем может быть прикол?


Top
   
PostPosted: 2013-07-17 14:40:29 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Code:
if uo.Journal(0)==Text2 or uo.Journal(0)==Text3 or uo.Journal(0)==Text4 or uo.Journal(0)==Text6 then 
return 1
end if
if uo.Journal(0)==Text1 then

Вот так перепиши. Будет сразу переходить к другому дереву.
Я не помню это сообщение о не удаче или не возможности считается.

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2013-07-17 15:53:15 
Offline

Joined: 2013-01-07 10:31:07
Posts: 15
Во работает спасибо! Ну теперь еще одна проблема! Мираж вот такой расклад, я собираю кординаты\айдишники деревьев ну вот потом начинает рубить бегать все хорошо! Ну вот только я переставлю кнопку в настройках скрипта на то что бы он считывал эти кординаты\айдишники деревьев ставлю - 1, запускаю его и он пишет ошибку -> Unhandled exception in parser.
Вотс такой расклад, он вроде запускается просит показать тапор показываю и он кидает такую ошибку.. А когда начинаешь записывать кординаты деревьев, записал дапустим штук 10 он ходит рубить без проблем.. а только ставишь на считывание старых кординат которых собрал он дает такую ошибку...


Top
   
PostPosted: 2013-07-17 16:14:29 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
У тебя путь до файла прописал русской буквой.
var f=file("Ñ:\trees3")
По этому и не видит файла -> ошибка.

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2013-07-17 16:20:30 
Offline

Joined: 2013-01-07 10:31:07
Posts: 15
var f=file("С:\trees3")

Нет у меня стоит C:\trees3!
Просто когда на форум КОпиравать делаешь так показывает....
Все правильно в скрипте стоит я проверял еще до этого! Что еше может быть?
Я вроде помню что-то такое когда мне вообще другой скрипт на ламбер давно настраивали я давал типу доступ на комп через прогу он какой то для скрипта на ламбер создавал блокнот на работчем столе...

Может это не и не это... просто в голову пришло.. блин помоги разобрался Мираж плизики постоянно просто галимо шёлкать деревья(((


Top
   
PostPosted: 2013-07-17 16:29:17 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Буква Ñ вылезла потому что это русская буква "C" стоит вместо английской буквы "C". Если бы там была английская то она бы и осталась.
Либо пунтосвичер стоит либо не внимательность.
Когда копируешь на форум надо копировать с блокнота а не с инжекта. Либо обновить скриптовую dll - в новой версии вроде нет проблемы с копированием.

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2013-07-17 17:16:58 
Offline

Joined: 2013-01-07 10:31:07
Posts: 15
Мираж я поменял :C все равно не работает выдает туже ошибку... в чем может быть проблема?


Top
   
PostPosted: 2013-07-17 18:03:59 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Последняя строчка моей подписи. Там про твою ошибку подробно расписано. :roll:

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2013-07-24 23:20:17 
Offline
User avatar

Joined: 2012-12-22 19:14:29
Posts: 125
Code:
sub WaitForChange() 
   var Text1=uo.GetName()+': You hack at the tree for a while, but fail to produce any useable wood.'
   var Text2='There are no logs here to chop.'
   var Text3="You can't reach this."
   var Text4='That is too far away.'
   var Text5="You can't do much in your current state."
   var Text6="What do you want to use this on?"
   var Text7="Тут не осталось пригодной древесины. Нечего рубить."
   var mess
   for var i=0 to 200
      mess=uo.Journal(0)
      if uo.Journal(0)==Text2 or uo.Journal(0)==Text3 or uo.Journal(0)==Text4 then
         return 0
      end if
      if uo.Journal(0)==Text1 then
         return 0
      end if
      if mess[0]=='Y' and mess[1]=='o' and mess[2]=='u' and mess[4]=='p' and mess[5]=='u' and mess[6]=='t' then
         return 0
      end if
      wait(200)
   next
   return 0
end sub



У меня тоже долго ждет но если вставляю ваши строки то он быстро проверяет и обрывает рубку..


Top
   
PostPosted: 2013-07-25 06:42:52 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
1) в чем заключается вопрос?
2) дописал 3 сообщения и не используешь их в скрипте.
3) 7 сообщение = перевод 1 сообщения.
Если на шарде все соообщения переведены то надо менять все сообщения в проверке. Если нет - использовать только необходимые.
Проще использовать более новую проверку где не нужны все сообщения целиком.
Например как тут - 2 строки и не над ломать голову. Если сообщения не хватает - достаточно вписать 1-2 слова

Code:
   var end = "appears immune|nothing here|reach this"
   var try = "You put|fail"

В моем скрипте сообщения расписаны на 3-4 разных шарда - и на сферу и на рануо.

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 12 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 14 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited