Yoko

All sides of Injection
It is currently 2024-03-28 13:33:46

All times are UTC+02:00




Post new topic  Reply to topic  [ 18 posts ] 
Author Message
PostPosted: 2009-02-12 21:18:38 
Offline

Joined: 2009-02-12 18:21:05
Posts: 9
Народ не мойму как зделать чтоб мой чар ходил на определённый тайл ...?какая команда? тайл допустим 2741 217 какой командой холдить? всякие там UO.Rclick не работают ... тайл от меня находиться в двух шагах по прямой.


Top
   
 Post subject:
PostPosted: 2009-02-12 21:27:27 
Offline
Expert!
User avatar

Joined: 2004-04-04 11:13:54
Posts: 1205
Location: Балаково, Саратовская обл.
Если бильярдный стол, то юзай UO.Press(код клавиши), клавиши стрелки и хом, енд, пэйч ап и пэйч даун. А если препядствия есть, то моя SuperWalk() вполне прилично ходит.


Top
   
 Post subject:
PostPosted: 2009-02-12 21:29:16 
Offline

Joined: 2009-02-12 18:21:05
Posts: 9
Savage wrote:
Если бильярдный стол, то юзай UO.Press(код клавиши), клавиши стрелки и хом, енд, пэйч ап и пэйч даун. А если препядствия есть, то моя SuperWalk() вполне прилично ходит.


можно по подробнее насчёт уо пресс дружище)))

и как SuperWalk() ползьзоваца?... ёмаё ... да я разбираюсь=( вспоминаю :(

... попробывал не получаетьсО


Top
   
 Post subject:
PostPosted: 2009-02-12 22:22:43 
Offline

Joined: 2009-02-12 18:21:05
Posts: 9
Prosto4en wrote:
Savage wrote:
Если бильярдный стол, то юзай UO.Press(код клавиши), клавиши стрелки и хом, енд, пэйч ап и пэйч даун. А если препядствия есть, то моя SuperWalk() вполне прилично ходит.


можно по подробнее насчёт уо пресс дружище)))

и как SuperWalk() ползьзоваца?... ёмаё ... да я разбираюсь=( вспоминаю :(

... попробывал не получаетьсО


uo.useobject("0x40154017")
wait(1000)
UO.press(34)
wait(1000)
UO.press(34)
wait(1000)
UO.press(34)
wait(1000)
uo.useobject("0x40154017")
if uo.waiting() then
uo.canceltarget()

вот вроде всё правельно ... у меня даже раз ходило ... а потом перестало ходить не пойму в чём проблема... в общем открывает калитку делает 3 шага вперёд закрывает калитку


Top
   
 Post subject:
PostPosted: 2009-02-12 22:32:44 
Offline
Expert!
User avatar

Joined: 2004-04-04 11:13:54
Posts: 1205
Location: Балаково, Саратовская обл.
Иногда, чтоб сделать шаг надо два раза пресс использовать. Имеет смысл перед повторным пресом проверить, не остались ли координаты чара прежними?


Top
   
 Post subject:
PostPosted: 2009-02-13 01:36:47 
Offline

Joined: 2009-02-12 18:21:05
Posts: 9
Savage wrote:
Иногда, чтоб сделать шаг надо два раза пресс использовать. Имеет смысл перед повторным пресом проверить, не остались ли координаты чара прежними?


попробывал повторно использовать пресс без проверки координат ... ибо тут ежё понятно что чар стоит на месте... вообще как работает комманда пресс от куда появляются эти цифры ?... эту команду взял со скрипта на стелс у меня чар ходил хотел приминить в моём скрипте ... тщетно ... в общем плиз обьясните по полочкам как в инжекте передвигаться ? искал на форуме не нашёл...


Top
   
 Post subject:
PostPosted: 2009-02-13 07:10:58 
Offline

Joined: 2009-02-10 10:18:14
Posts: 10
Вот... простая ходилка.. Обходит препятствия =)

Автор ходилки кажецо Сериус.
Code:
##########################################
#  Ходилка
##########################################
sub gotoxy(x,y,prec)
  dim turn[8]
  turn[0] = 39
  turn[1] = 34
  turn[2] = 40
  turn[3] = 35
  turn[4] = 37
  turn[5] = 36
  turn[6] = 38
  turn[7] = 33
  dim deltax[8]
  dim deltay[8]
  deltax[0] =  1
  deltax[1] =  1
  deltax[2] =  1
  deltax[3] =  0
  deltax[4] = -1
  deltax[5] = -1
  deltax[6] = -1
  deltax[7] =  0

  deltay[0] = -1
  deltay[1] =  0
  deltay[2] =  1
  deltay[3] =  1
  deltay[4] =  1
  deltay[5] =  0
  deltay[6] = -1
  deltay[7] = -1
var dx,dy

  var mx,my ; current coords
  var lx = 0, ly = 0, ld = -1 ; last move coords

var pathFind = 0 ; as logical 0 - norm, 1 - block
var ind
var recursInd = 0
var fout = 0

var stepdelay = 350  ; скорость нажатия клавишь

InitStack()
repeat
  mx=UO.GetX()
  my=UO.GetY()

  ; calculating for precision coming
  dx = mx - x
  If dx < 0 Then
    dx = 0 - dx
  EndIf ;get ABS diff

  dy = my - y
  If dy < 0 Then
    dy = 0 - dy
  EndIf
  If dy > dx Then
    dx = dy
  EndIf
  If dx <= prec Then
    Return
  EndIf

  if mx == x and my == y then
    return
  endif

  lx = mx
  ly = my
  ld = UO.GetDir() ; cause once pressing can only change the direcction

  if mx == x and my >  y then
    UO.Press(33)
  endif
  if mx == x and my  < y then
    UO.Press(35)
  endif
  if mx  < x and my == y then
    UO.Press(34)
  endif
  if mx  < x and my >  y then
    UO.Press(39)
  endif
  if mx  < x and my  < y then
    UO.Press(40)
  endif
  if mx >  x and my == y then
    UO.Press(36)
  endif
  if mx >  x and my >  y then
    UO.Press(38)
  endif
  if mx >  x and my  < y then
    UO.Press(37)
  endif
UO.Print('KeyPressed')
  wait( stepdelay )

  if lx == UO.GetX() and ly == UO.GetY() and ld == UO.GetDir() then
    ; now there is a stop situation
UO.Print('PathFind')
    recursInd = 0
    repeat
#################################################
      ind = ld
      UO.Print(str(ind))
      fout = 0
      repeat
UO.Print('Iteration')
        mx = UO.GetX()
        my = UO.GetY()
        ld = UO.GetDir()
        UO.Press( turn[ ind ] )
        wait( stepdelay )
        if (UO.GetX() == mx and UO.GetY() == my and ld == UO.GetDir()) then
          fout = 1
        else
          dx = UO.GetX() - mx
          dy = UO.GetY() - my
UO.Print('deltas  '+str(dx)+'  '+str(dy))
          if deltax[ ind ] == dx and deltay[ ind ] == dy then
            fout = 2
          endif
        endif
      until fout
UO.Print('fout   '+ str(fout))
      if fout == 1 then
        recursInd = recursInd + 1
        Push( str( ind ) )
        ;ld = ind
      else ; fout == 2

        UO.Print('Iter  '+ str(recursInd))
        pathFind = 0
        if recursInd then
          pathFind = 1
          recursInd = recursInd - 1
          ld = val(Pop()) - 1
          if ld == -1 then
            ld = 7
          endif
          UO.Press( turn[ld] )
          wait ( stepdelay )
        endif
      endif
#################################################
    until not recursInd and not pathFind
    UO.Print('PathFind END')
  endif


until 0
endsub

##########################################
#  Стэк ходилки. Лучше в него нелезть.
##########################################
sub InitStack()
  UO.SetGlobal('STACK', '0')
endsub
Sub Push( param )
  var chk = val(UO.GetGlobal('STACK'))
  UO.SetGlobal('STACK',str(chk + 1))
  UO.SetGlobal('STACK_'+str(chk), param)
endsub
Sub Pop ()
  var chk = val(UO.GetGlobal('STACK'))
  if chk then
    UO.SetGlobal('STACK',str(chk - 1))
    return UO.GetGlobal('STACK_'+str(chk - 1))
  else
    return ''
  endif
endsub


Вот... Чтоб пошла достаточно вбить команду...
Теперь где надо в скрипте чтоб шел пиши
Code:
gotoxy(координата х, координата y, точность подхождения)


Top
   
 Post subject:
PostPosted: 2009-02-13 07:22:45 
Offline
User avatar

Joined: 2008-09-12 05:07:34
Posts: 247
uo.press - команда "Нажать кнопку", 34 - код кнопки PgDn


Top
   
 Post subject:
PostPosted: 2009-02-13 16:45:36 
Offline

Joined: 2009-02-12 18:21:05
Posts: 9
Millerbeer wrote:
uo.press - команда "Нажать кнопку", 34 - код кнопки PgDn


так у меня эта кнопка PgDn не работает =( я на неё просто нажимаю чар как стоял так и стоит


Top
   
 Post subject:
PostPosted: 2009-02-13 16:55:30 
Offline

Joined: 2009-02-12 18:21:05
Posts: 9
Теперь где надо в скрипте чтоб шел пиши
Code:
gotoxy(координата х, координата y, точность подхождения)
[/quote]
что значит точность прохождения? ... ставлю координаты и выдаёт ошибку


Top
   
 Post subject:
PostPosted: 2009-02-13 18:13:32 
Offline
User avatar

Joined: 2008-09-12 05:07:34
Posts: 247
NumLock выключи, а "точность подхождения", если поставишь 0, то будет топать прям в те координаты, если 1, то одну клетку недойдёт, и так далее


Top
   
 Post subject:
PostPosted: 2009-02-13 18:42:49 
Offline
Expert!
User avatar

Joined: 2004-04-04 11:13:54
Posts: 1205
Location: Балаково, Саратовская обл.
Дело не в нумлоке, наверное в клиенте или в инже бинд на этой кнопке.


Top
   
 Post subject:
PostPosted: 2009-02-13 20:14:13 
Offline

Joined: 2009-02-12 18:21:05
Posts: 9
Savage wrote:
Дело не в нумлоке, наверное в клиенте или в инже бинд на этой кнопке.


Да ты прав... нам лук не помог.... что мне зделать чтоб заработали кнобки? .. гуру помогите
фишка в том ,перед запуском скрипта кнопки работают .... как только скрипт запускаю кнопки перестают работать..и после окончания скрипта остаються не рабочими... я в замешательстве уже не один ден...


Top
   
 Post subject:
PostPosted: 2009-02-13 21:08:47 
Offline

Joined: 2009-02-12 18:21:05
Posts: 9
Prosto4en wrote:
Savage wrote:
Дело не в нумлоке, наверное в клиенте или в инже бинд на этой кнопке.


Да ты прав... нам лук не помог.... что мне зделать чтоб заработали кнобки? .. гуру помогите
фишка в том ,перед запуском скрипта кнопки работают .... как только скрипт запускаю кнопки перестают работать..и после окончания скрипта остаються не рабочими... я в замешательстве уже не один ден...

c
И кстати вылетает табличка при копке "Unhandled exception in paster"


Top
   
 Post subject:
PostPosted: 2009-02-14 06:06:33 
Offline

Joined: 2009-02-10 10:18:14
Posts: 10
По ошибки тебе сюда
http://forum.yoko.com.ua/viewtopic.php?t=12990&highlight=unhandled

Лично мне помогло =-))))) Теперь данная ошибка практически ниокгда невылетает =)


Top
   
 Post subject:
PostPosted: 2009-02-15 05:15:30 
Offline

Joined: 2009-02-12 18:21:05
Posts: 9
Nelson wrote:
По ошибки тебе сюда
http://forum.yoko.com.ua/viewtopic.php?t=12990&highlight=unhandled

Лично мне помогло =-))))) Теперь данная ошибка практически ниокгда невылетает =)


Всё спасибо ... я разобрался полностью со своими проблемами ...спасибо вам друзья))) ... очень помогли.... :D


Top
   
PostPosted: 2012-03-06 23:13:26 
Offline

Joined: 2011-12-05 20:26:44
Posts: 5
скрипт работает отлично но только есть одна проблема, стою в доме в них 2 вендора
один всё время заходит за шкаф, шкаф стоит не у стены а по середине комнаты, когда чар упирается в шкаф сворачивает на право и упирается в стенку, после этого начинает рулить по периметру здания. даже когда я вручную подбегаю к нему скрипт его опять ведет к стенке и продолжается бессмысленная ходьба по кругу.
как я понимаю скрипт берёт заданные координаты и танком прёт к точке
вопрос вот в чём, может можно дописать пару строчек, что бы он после каждого шага проверял проверял позицию чара и "точки назначения", ну или каждые 5сек
если да то допишите пожалста и напишите куда их вписать.
значение prec=1


Top
   
PostPosted: 2012-03-07 10:11:38 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Номер раз: в инжекте нет ни одной безупречной ходилки.
Номер два: все ходилки с обходом периодически косячат на препятстчиях.
Номер три: Что мешает взять и дописать 3 координаты в обход препятствиям? |_| вот так?

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


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

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 13 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