Antimacros

Ask for scripts here

Moderators: Murderator+, Murderator

Post Reply
[MAD]
Posts: 9
Joined: 2007-09-02 19:18:26
Location: Riga

Antimacros

Post by [MAD] »

вот тут открылся уо.спот.лв и появился бесючий антимакрос каждые 5 мин вылетает я несилён в Инже прошу селать скриптик после Гампа и скрина раскажу как я думаю ево обоити !

Image

Code: Select all

 _____infogump_______
serial   0x00073fcd
gumpid   0x000004a5
X   200
Y   100
651   packet size
0   reply packet size
Buttons: ________
Checks&Radios: __
Entryes: ________
All commands: ____
    1] omove
    2] oclose
    3] esizepic 0 0 5120 320 24
    4] age
    5] utton 120 210 239 240 1 0
    6] esizepic 015 180 5100 280 2
    7] extentry 32 180 200 20 100 0
    8] esizepic 100  20 5100 100 8
    9] esizepic 20 120 5100  90 2
   10] esizepic 120 120 5100  90 2
   11] esizepic 220 120 5100  90 2
   12] esizepic 20 150 5100  90 2
   13] esizepic 120 150 5100  90 2
   14] esizepic 220 150 5100  90 2
   15] ilepic 120 30 784
   16] ext 30 120 100
   17] ext 130 120 100
   18] ext 230 120 100
   19] ext 30 150 100
   20] ext 130 150 100
   21] ext 230 150 100
Text: ____________
    0] What is in the picture?
    1] Grass
    2] Modern
    3] Farmacy
    4] Scroll
    5] Bench
    6] Net


Image


Code: Select all

_____infogump_______
serial   0x00073fcd
gumpid   0x000004a5
X   200
Y   100
651   packet size
0   reply packet size
Buttons: ________
Checks&Radios: __
Entryes: ________
All commands: ____
    1] omove
    2] oclose
    3] esizepic 0 0 5120 320 24
    4] age
    5] utton 120 210 239 240 1 0
    6] esizepic 015 180 5100 280 2
    7] extentry 32 180 200 20 100 0
    8] esizepic 100  20 5100 100 8
    9] esizepic 20 120 5100  90 2
   10] esizepic 120 120 5100  90 2
   11] esizepic 220 120 5100  90 2
   12] esizepic 20 150 5100  90 2
   13] esizepic 120 150 5100  90 2
   14] esizepic 220 150 5100  90 2
   15] ilepic 120 50 382
   16] ext 30 120 100
   17] ext 130 120 100
   18] ext 230 120 100
   19] ext 30 150 100
   20] ext 130 150 100
   21] ext 230 150 100
Text: ____________
    0] What is in the picture?
    1] Gold
    2] Mouse
    3] Hungry
    4] Mushroom
    5] Pike
    6] Forge


Так вот в аамакросе нада стерать What is in the picture? и вписывать правельный вариант на 2 скрине это Gold , и таких картинок 5-10 вариантов ... и вот что я хочю при появлении картинки он определял по вариантам ответов , тоесть если он видет (2-й скрин) Golg-Mouse-Hungry-Moushroom-Pike-Forge то вписывал бы Gold , если видет Grass-Modern-Farmacy-Scroll-Bench-Net то вписал бы Net и т.д. недеемся что вы справетесь ево обойти зарание спосибо...
[MAD]
Posts: 9
Joined: 2007-09-02 19:18:26
Location: Riga

Post by [MAD] »

чтото 2-й день не ответов не приветов :(
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Это тебе грина ждать надо
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Было бы над чем работать.

Грин нужен, если проблемой является определить, что именно нужно вводить.

Как нас заверяет автор - проблемы в этом нет.

Кто не знает таких команд как:
uo.press()
uo.say()
uo.lclick()
? - Встали и пошли вон отсюда!

Кто еще тут? - Напишите автору топика решение.
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
Cubango
Posts: 1
Joined: 2009-10-29 09:51:44

Post by Cubango »

Проблема в том - что в гампе нужно стереть фразу "What is in the picture?" как это сделать, ума не приложу
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

У каждой клавиши на клавиатуре есть свой код. Ищи, здесь было стирание через Backspace код и uo.Press
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Я наверно года 3 назад на этом сервере сделал анти-макрос. Так и не могу вспомнить как я бекспей заставил нажать...
[MAD]
Posts: 9
Joined: 2007-09-02 19:18:26
Location: Riga

Post by [MAD] »

Nmy нашол 3 скрипта на старый Антимакрос !

Code: Select all

sub antimacro() 

   while not uo.Dead()
      if not uo.LastGump("replyed") and uo.LastGump("command", 5) == "heckertrans 9 9 304 16" then
         uo.lclick(uo.LastGump('x')+180, uo.LastGump('y')+100)
         wait(300)
         uo.say(chr(8)+str(Calc()))
         wait(300)
         uo.lclick(uo.LastGump('x')+60, uo.LastGump('y')+140)
      endif
      wait(1500)
   wend

endsub

sub GetInfo(A)
   
   var s = ""
   var TextIndex = 0
   var num = 0
   
   for var i = 6 to 15
      s = uo.LastGump("command", i)
      if Left(s, 3) == "ext" then
         if s[3] == " " then
            A[Int(val(mid(s, 4, 3))/10-2)] = uo.LastGump("text", TextIndex)
         endif
         TextIndex = TextIndex+1
      end if
   next

end sub

sub Calc()

   Dim Operands[16]
   
   GetInfo(Operands)
   Operands[2] = val(Operands[2])
   Operands[10] = val(Operands[10])
   
   if Operands[8] == "+" then
      return Operands[10]+Operands[2]
   else
      if Operands[8] == "-" then
         return Operands[2]-Operands[10]
      else
         if Operands[8] == "*" then
            return Operands[2]*Operands[10]
         else
            return Operands[2]/Operands[10]
         end if
      endif
   endif
   
   return 0

end sub

Code: Select all

sub Calc() 
   
   Dim Operands[16]
       
   GetInfo(Operands)
   Operands[2] = val(Operands[2])
   Operands[10] = val(Operands[10])
   
   if Operands[8] == "+" then
      return Operands[10]+Operands[2]
   else
      if Operands[8] == "-" then
         return Operands[2]-Operands[10]
      else
         if Operands[8] == "*" then
            return Operands[2]*Operands[10]
         else
            return Operands[2]/Operands[10]
         end if
      endif
   endif
   
   return 0

end sub
sub antimacro() #Ealonzanu...

   while not uo.Dead()
      if uo.LastGump('replyed') == 0 and uo.LastGump('gumpid') == '00000445' then
         uo.lclick(uo.LastGump('x')+180, uo.LastGump('y')+100)
         wait(300)
         uo.say(chr(8)+str(Calc()))
         wait(300)
         uo.lclick(uo.LastGump('x')+60, uo.LastGump('y')+140)
      endif
      wait(1500)
   wend
   
endsub

Code: Select all

sub Calc() 
   
   var max, min, opr
   var s, n
   for var i = 0 to 8
      s = uo.LastGump('text', i)
      n = val(s)
      if n > 100 then
         max = n
      else
         if n > 0 then
            min = n
         else
            if s == '+' then
               opr = s
            endif
         endif
      endif
   next
   if opr == '+' then
      return max+min
   endif
   return max-min
   
endsub

sub antimacro() #Ealonzanu...

   while not uo.Dead()
      if uo.LastGump('replyed') == 0 and uo.LastGump('gumpid') == '00000445' then
         uo.lclick(uo.LastGump('x')+180, uo.LastGump('y')+100)
         wait(300)
         uo.say(chr(8)+str(Calc()))
         wait(300)
         uo.lclick(uo.LastGump('x')+60, uo.LastGump('y')+140)
      endif
      wait(1500)
   wend
   
endsub

Надеюсь помогут !
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Code: Select all

uo.say(chr(8))


вот как... мне наверно тоже грин помогал так что тут без вариантов...

там на обьект кликнуть можно?
[MAD]
Posts: 9
Joined: 2007-09-02 19:18:26
Location: Riga

Post by [MAD] »

ну поможет кто ?
[MAD]
Posts: 9
Joined: 2007-09-02 19:18:26
Location: Riga

Post by [MAD] »

киньте хоть какието наброски
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

Вроде уже была подобная тема.

Варианта 2
1. Перемолоть tiledata.mul и выдрать все имена.
2. Обучить свой скрипт на личном примере:) Наверняка список предметов не такой большой, объединив друзей быстро на тыкаете полный список вариантов.
[MAD]
Posts: 9
Joined: 2007-09-02 19:18:26
Location: Riga

Post by [MAD] »

Здраствуй Грин рад тебя услышать ! там список предметов постоянно пополняется админами мне-бы на эти 2 варианта а там думаю сами допишем остальные
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

Изучаете формат tiledata.mul и выдергиваете все имена оттуда.
тот же POL эмулятор конвертирует в файл tiles.cfgб от туда уже можете забрать почти в готовом виде.

Ну а первый вариант давно уже должны были сами сделать, да и первый тоже...
[MAD]
Posts: 9
Joined: 2007-09-02 19:18:26
Location: Riga

Post by [MAD] »

чото я нехрена непонемаю :( мне ненужно знать какие тама есчо варианты , мне нада сам скрипт на обход Антимакроса , чтоб варианты постепенно добовлять можно было !
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Grin wrote:Изучаете формат tiledata.mul и выдергиваете все имена оттуда.
тот же POL эмулятор конвертирует в файл tiles.cfgб от туда уже можете забрать почти в готовом виде.

Ну а первый вариант давно уже должны были сами сделать, да и первый тоже...


Привет.

Он говорит - он не знает что писать :roll:
[MAD]
Posts: 9
Joined: 2007-09-02 19:18:26
Location: Riga

Post by [MAD] »

а можите сделать по 1 варианту find Gold == say Gold ?
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

1. не знаю
2. должен кликнуть там где текст и удалить эго

Code: Select all

sub backspace()
   var x=123
   var y=123
   var n
   checklag()
   uo.click(x,y)
   wait(1000)
   for n=0 to 30
      uo.say(chr(8))
      checklag()
      wait(100)
   next
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


Сказать что в картинке просто - uo.say('Gold')

15] ilepic 120 30 784
15] ilepic 120 50 382
это наверно отвечате за картинку. я думаю это x y и ид
[MAD]
Posts: 9
Joined: 2007-09-02 19:18:26
Location: Riga

Post by [MAD] »

Так несудите я в прогрессе :lol: крч непонемаю откуда берётса надпесь Result is underfined Вот скрин.
Image
Вот скрипт.

Code: Select all

sub decode()
if uo.LastGump('text',1) == "Sco*" then
  uo.msg('Scorpion')
  Else
  uo.print('No Fond')
End if
end sub

sub AAmacro()
   while not uo.dead()
      if uo.LastGump('text',0) == 'What is in the picture?' and uo.LastGump('replyed') == 0 then
         wait(300)
         uo.say(backspace())
         uo.lclick(uo.LastGump('x')+32, uo.LastGump('y')+180)
         uo.say(decode())
         wait(300)
         ;uo.lclick(uo.LastGump('x')+120, uo.LastGump('y')+210)
      end if
      wait(10000)
   wend
end sub

sub backspace()
   var n 
   wait(500)
   for n=0 to 23
      uo.lclick(uo.LastGump('x')+32, uo.LastGump('y')+180)
      uo.say(chr(8))
      wait(500)
   next
endsub
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

uo.say(backspace())
uo.say(decode())
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
Post Reply