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