Хелп мининг

Anything and all.

Moderators: Murderator+, Murderator

Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

Ну я его завожу в шахту, и включаю скрипт, он пройдет немного, и встает :( Хотя самый первый раз все началось нормально на 3-ей точке только ошибку выдал инжект...Вечером в другой шахте проверю, отпишусь...
А может дело не в ходилке?Может что-то с копалкой?Вечером заодно и чисто ходилку проверю...Если смогу ее отдельно запустить...
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

может тут ты чудеса понастроил ?
Image
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

Нет, кроме закладки скриптов, ни одну закладку не юзал...
Вы этот скрипт запускали? Именно его, с копалкой? Все 6 точек обходит?
Sanch
Posts: 308
Joined: 2005-07-17 15:30:52
Location: www.drw.ru

Post by Sanch »

Какой смысл вообще копать без сгрузки руды в дом, я те могу конечно сделать что он будет просто ходить и копать, но так минут через сорок руда начнет на пол сыпаться + ты ходить не сможешь, тк у тебя будет перебор веса, могу сделать что он сразу будет выкидывать на пол как только что-то выкопает, все что те даст этот скрипт - ну мининг прокачаешь, опять таки не факт, забежит пк в шахту и усе, кач закончился :) .
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

Смысл такой-просто дома еще нет :) Хотя это конечно скоро решится надеюсь...
Так что если хотите помочь буду только рад :) Дом скоро будет.
Только вот две проблемы, во первых почему то тот скрипт с ходилкой наш не работает(тестирую сейчас его повторно)
Во вторых переплавка на нашем шарде неудобно сделана, по 1 нельзя плавит только по 3, но сортировку по 3 шт я исправил в одном скрипте, так что раскидывает мне кучки по 3 теперь, а вот с тем что у нас надо не на руду кликать для плавки а на форж, появляется прицел, и только потом на руду, не знаю как справиться...Ручками пока :(
Question_GimFlex
Posts: 188
Joined: 2007-03-24 08:12:51

Post by Question_GimFlex »

Vicont wrote:Смысл такой-просто дома еще нет :) Хотя это конечно скоро решится надеюсь...
Так что если хотите помочь буду только рад :) Дом скоро будет.
Только вот две проблемы, во первых почему то тот скрипт с ходилкой наш не работает(тестирую сейчас его повторно)
Во вторых переплавка на нашем шарде неудобно сделана, по 1 нельзя плавит только по 3, но сортировку по 3 шт я исправил в одном скрипте, так что раскидывает мне кучки по 3 теперь, а вот с тем что у нас надо не на руду кликать для плавки а на форж, появляется прицел, и только потом на руду, не знаю как справиться...Ручками пока :(


допустим в паке лежат много кучек оров по 3 штуки в кучке тогда запускаем скрипт плавим учки без проблем

Code: Select all

sub smelt()
var ore='0000'; ТИП КУЧКИ ДЛЯ 3 ОРОВ!
var forge='0000000'; ИД ПЛАВИЛЬНИ
uo.findtype(ore,'-1','backpack')
while uo.findcount()
 uo.waittargetobject('finditem')
 uo.usefromground(forge)
 wait(500)
 uo.findtype(ore,'-1','backpack')
wend
endsub
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

А не подскажете как его скомпоновать вот с этим:

sub pereplavka()

repeat
uo.findtype("0x19B9") #ore
uo.exec("moveitem finditem 3 backpack 150 50 0")
wait(300) #delay ms between grabs
#если руда плавится даблкликом
uo.useobject("finditem")
wait(300) #delay ms between smelts
until not uo.count("0x19B9")

end sub

Чтобы 1 скрипт и то и то делал?

И как узнать тип кучки и ID плавильни?
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

To Mr Nmy :
Переустановил игру и все патчи-все заработало!:)
Спасибо огромное!:)))

З.Ы. Если ктонибудь поможет оптимизировать скрип с ходилкой
( копает медленно, после удачного выкапывания 2-3 секунды стоит, главное после неудачного сразу роет, без перерыва... Координат можно добавить 6 маловато для некоторых пещер, и самое главное, возможность выгруза в дом) буду очень признателен...
Last edited by Vicont on 2007-05-12 07:32:32, edited 1 time in total.
Revik
Posts: 26
Joined: 2006-08-29 17:12:47

Post by Revik »

Vicont wrote:To Mr Nmy :
Переустановил игру и все патчи-все заработало!:)
Спасибо огромное!:)))

З.Ы. Если ктонибудь поможет оптимизировать скрип с ходилкой
( копает медленно, после удачного выкапывания 2-3 секунды стоит, координат можно добавить 6 маловато, и самое главное, возможность выгруза в дом) буду очень признателен...

В скрипте есть всё необходимое, изучи код, посмотри как что работает и клавитуру в зубы ;)
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

Чет в этой копалке не понял где задержка...wait(300) если уменьшать ничего не дает...А кроме wait знакомых букв нету :)
Question_GimFlex
Posts: 188
Joined: 2007-03-24 08:12:51

Post by Question_GimFlex »

узнать информацию об обьекте можно набрав ,info в окне клиента и кликнув на обьект

Code: Select all

sub pereplavka() 
var ore='0000'; type 3 ore!!!!!!!!
var forge='0000000'; plavilka
repeat
 uo.findtype("0x19B9") #ore
 uo.exec("moveitem finditem 3 backpack 150 50 0")
 wait(300) #delay ms between grabs
 uo.findtype(ore,'-1','backpack')
 while uo.findcount()
  uo.waittargetobject('finditem')
  uo.usefromground(forge)
  wait(500)
  uo.findtype(ore,'-1','backpack')
 wend
until not uo.count("0x19B9")
end sub
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

Спасибо:) Теперь не надо другой скрипт загружать, все 33 удовольствия в одном флаконе!:)

Копалку еще б оптимизировать...Подскажите, пожалуйста где задержку в ней уменьшить?
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

Хочу сказать спасибо всем участникам этого топика, думаю вы помогли не только мне, но и многим кто воспользуется им.Считаю вам ребята запросто программистами идти работать, 100% потянете.
Еще раз большой спасибо. :)
Question_GimFlex
Posts: 188
Joined: 2007-03-24 08:12:51

Post by Question_GimFlex »

Vicont wrote:Хочу сказать спасибо всем участникам этого топика, думаю вы помогли не только мне, но и многим кто воспользуется им.Считаю вам ребята запросто программистами идти работать, 100% потянете.
Еще раз большой спасибо. :)


сам бы попробывал прогить это несложно а в условиях инжекта еще и интересно потому что результат сразу на лицо :) :wink:
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

Надо бы по хорошему :) Да то работа, то поиграть хочется:)
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

Кстати не подскажете код -войти-выйти в\с боевого режима?Надо б один скриптик дополнить...

Все, похоже нашел...UO.Exec('warmode 1') это оно? UO.Exec('warmode 0') наверное выйти из режима...?
Rivory
Posts: 205
Joined: 2005-01-06 11:49:28

Post by Rivory »

Vicont wrote:UO.Exec('warmode 0') наверное выйти из режима...?
Так и есть
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

Подскажите пожалуйста как добавить точек-координат в скрипте, 6 маловато...


Code: Select all

sub minround() 
VAR Kirka = '0x0E85'   ; Тип Кирки
VAR MaxVes = 500   ; Максимальный вес, подымаемый чаром минус 10-15 стоунов
VAR TileNum = '1339'   ; Тайл пола пещеры (наиболее распространенный тип)
VAR x, y, t, k, i
VAR MaxTime = 100   ; измеряется в 1/10 сек.
VAR ms1 = "There is nothing here to mine for"
VAR ms2 = "You can't use"
VAR ms3 = "You put "
VAR ms4 = "You loosen some rocks"
VAR ms5 = "You are too far away"
VAR ms6 = "Try mining in rock"
VAR ms7 = "You can't see that"
Dim gox[6]
    gox[0] = 1234
    gox[1] = 1234
    gox[2] = 1234
    gox[3] = 1234
    gox[4] = 1234
    gox[5] = 1234
Dim goy[6]
    goy[0] = 1234
    goy[1] = 1234
    goy[2] = 1234
    goy[3] = 1234
    goy[4] = 1234
    goy[5] = 1234
while 1
for i = 0 to 5
WalkME(gox[i],goy[i],'')
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
next
wend
endsub


################# W A L K E R ######################

sub WalkME(x,y,Target)
   VAR i
   VAR dir,ldir,rdir,key,olddir
   VAR dx,dy,Exit=0
   VAR CacheLimit=9,CacheIndex="Text"
   DIM CacheX[10], CacheY[10]

   CacheX[0]="Test"
   While Exit<>1
      If Target<>"" Then
         dx=UO.GetX(Target)-UO.GetX()
         dy=UO.GetY(Target)-UO.GetY()
;         UO.Print("Target locked!")
         If UO.GetDistance(Target)<2 Then
            return
         Endif
      Else
         dx=x-UO.GetX()
         dy=y-UO.GetY()
         If dx==0 AND dy==0 Then
            return
         Endif

      Endif

      If dx<>0 AND dy<>0 Then
         If dx>0 AND dy>0 Then ; GoSE
            dir=3
            ldir=2
            rdir=4
            key=40 ; DownArrow
            olddir=UO.GetDir()
            If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
               If olddir==2 Then ; GoNE
                  dir=1
                  ldir=0
                  rdir=1
                  key=39 ; RightArrow
                  While UO.GetDir()<>1
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Else ; GoSW
                  dir=5
                  ldir=5
                  rdir=6
                  key=37 ; LeftArrow
                  While UO.GetDir()<>5
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Endif
            Endif
         Endif

         If dx>0 AND dy<0 Then ; GoNE
            dir=1
            ldir=0
            rdir=2
            key=39 ; RightArrow
            olddir=UO.GetDir()
            If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
               If olddir==0 Then ; GoWN
                  dir=7
                  ldir=6
                  rdir=7
                  key=38 ; UpArrow
                  While UO.GetDir()<>7
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Else ; GoSE
                  dir=3
                  ldir=3
                  rdir=4
                  key=40 ; DownArrow
                  While UO.GetDir()<>3
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Endif
            Endif
         Endif

         If dx<0 AND dy>0 Then ; GoSW
            dir=5
            ldir=4
            rdir=6
            key=37 ; LeftArrow
            olddir=UO.GetDir()
            If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
               If olddir==6 Then ; GoWN
                  dir=7
                  ldir=7
                  rdir=0
                  key=38 ; UpArrow
                  While UO.GetDir()<>7
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Else ; GoSE
                  dir=3
                  ldir=2
                  rdir=3
                  key=40 ; DownArrow
                  While UO.GetDir()<>3
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Endif
            Endif
         Endif

         If dx<0 AND dy<0 Then ; GoWN
            dir=7
            ldir=6
            rdir=0
            key=38 ; UpArrow
            olddir=UO.GetDir()
            If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
               If olddir==0 Then ; GoNE
                  dir=1
                  ldir=1
                  rdir=2
                  key=39 ; RightArrow
                  While UO.GetDir()<>1
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Else ; GoSW
                  dir=5
                  ldir=4
                  rdir=5
                  key=37 ; LeftArrow
                  While UO.GetDir()<>5
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Endif
            Endif
         Endif
      Endif

      If dx<>0 AND dy==0 Then
         If dx>0 Then ; GoE
            dir=2
            key=34 ; PgDown
            olddir=UO.GetDir()
            If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
               If olddir==2 Then ; GoSE
                  dir=3
                  ldir=3
                  rdir=4
                  key=40 ; DownArrow
                  While UO.GetDir()<>3
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Else ; GoNE
                  dir=1
                  ldir=1
                  rdir=0
                  key=39 ; RightArrow
                  While UO.GetDir()<>1
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Endif
            Endif
         Endif

         If dx<0 Then ; GoW
            dir=6
            key=36 ; Home key
            olddir=UO.GetDir()
            If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
               If olddir==0 Then ; GoWN
                  dir=7
                  ldir=7
                  rdir=0
                  key=38 ; UpArrow
                  While UO.GetDir()<>7
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Else ; GoSW
                  dir=5
                  ldir=4
                  rdir=5
                  key=37 ; LeftArrow
                  While UO.GetDir()<>5
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Endif
            Endif
         Endif
      Endif

      If dx==0 AND dy<>0 Then
         If dy>0 Then ; GoS
            dir=4
            key=35 ; End
            If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
               If olddir==2 Then ; GoSE
                  dir=3
                  ldir=2
                  rdir=3
                  key=40 ; DownArrow
                  While UO.GetDir()<>3
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Else ; GoSW
                  dir=5
                  ldir=6
                  rdir=5
                  key=37 ; LeftArrow
                  While UO.GetDir()<>5
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Endif
            Endif
         Endif

         If dy<0 Then ;GoN
            dir=0
            key=33 ; PgUp
            olddir=UO.GetDir()
            If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
               If olddir==2 Then ; GoNE
                  dir=1
                  ldir=1
                  rdir=2
                  key=39 ; RightArrow
                  While UO.GetDir()<>1
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Else ; GoWN
                  dir=7
                  ldir=7
                  rdir=6
                  key=38 ; UpArrow
                  While UO.GetDir()<>7
                     StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
                  Wend
               Endif
            Endif
         Endif
      Endif
   Wend
end sub


sub StepEdit(x,y,dir,key)
   VAR walkwait=300
   VAR ErrLevel=0
   If UO.GetDir()<>dir Then
         checkstam()
      UO.Press(key)
      wait(walkwait)
      If UO.GetDir()<>dir Then
         CheckLag()
      Endif
   Endif
         checkstam()
   UO.Press(key)
   wait(walkwait)
   If x==UO.GetX() AND y==UO.GetY() Then
      CheckLag()
      If x==UO.GetX() AND y==UO.GetY() Then
;zatik
         ErrLevel=1
      Endif
   Endif
   Return ErrLevel
end sub


sub StepArrow(x,y,dir,ldir,rdir,key)
   VAR walkwait=300
   VAR ErrLevel=0
   If UO.GetDir()<>dir Then
      checkstam()
      UO.Press(key)
      wait(walkwait)
      If UO.GetDir()<>dir AND UO.GetDir()<>ldir AND UO.GetDir()<>rdir Then
         CheckLag()
      Endif
   Endif

   If UO.GetX()==x AND UO.GetY()==y Then
      checkstam()
      UO.Press(key)
      wait(walkwait)
      If UO.GetDir()==dir AND UO.GetX()==x AND UO.GetY()==y Then
         CheckLag()
         If UO.GetDir()==dir AND UO.GetX()==x AND UO.GetY()==y Then
; zatik
            ErrLevel=1
         Endif
      Endif
   Endif
   Return ErrLevel
end sub

sub checkstam()
var refresh = '0x0F0B'
if uo.stamina < 10 then
   uo.findtype(refresh,-1,'backpack')
   if uo.findcount() then
      uo.usetype(refresh)
      wait(1000)
   else
      uo.print("Nety Refreshey! Stoim...")
   repeat
      wait(500)
   until uo.stamina >= 10
   endif
else
endif
endsub

Sub CHECKLAG()
   del('backpack')
   uo.click('backpack')
   repeat
   wait(200)
   until uo.injournal('backpack')
   del('backpack')
endsub

Sub DEL(msg)
   while uo.injournal(msg)
   uo.setJournalLine(uo.injournal(msg)-1,"Is Empty!")
   wend
endsub
Rivory
Posts: 205
Joined: 2005-01-06 11:49:28

Post by Rivory »

Code: Select all

Dim gox[p+1] 
    gox[0] = 1234
    gox[1] = 1234
    gox[2] = 1234
    gox[3] = 1234
    gox[4] = 1234
    gox[5] = 1234
    ....................
    ....................
    ....................
    ....................
    ....................
    gox[p] = 1234
Dim goy[p+1]
    goy[0] = 1234
    goy[1] = 1234
    goy[2] = 1234
    goy[3] = 1234
    goy[4] = 1234
    goy[5] = 1234
    ....................
    ....................
    ....................
    ....................
    ....................
    goy[p] = 1234
while 1
for i = 0 to p


Вместо p и p+1 поставь нужные тебе циферьки
Vicont
Posts: 22
Joined: 2007-05-10 07:03:52

Post by Vicont »

понял!Спасибо! Вечерком все попробую!:)
Post Reply