Author Topic: Бот для Fantastic Fishing  (Read 94292 times)

0 Members and 1 Guest are viewing this topic.

naftik

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Бот для Fantastic Fishing
« on: October 09, 2013, 01:00:28 PM »
Помощи прошу в создании бота для Fantastic Fishing.
Цель - ловля в автоматическом режиме на 3! удочки.
На сегодня с грехом пополам слепил работающий скрипт на 1 удочку

Code: (clickermann) [Select]
SUB(check)
GETSCREEN
IF_PIXEL_IN(346,519,346,519,11183005) - ищет изменяющийся пиксель цвета (при поклёвке) иконки на АКТИВНОЙ удочке
wait(1)
GOSUB(check)
Else
LCLICK(346,519) - по иконке АКТИВНОЙ удочки
WAIT(7) - ожидание перед подсечкой
WAITMS(54 * $K_SPEED)
KEYDOWN(32) - подсечка
WAITMS(31 * $K_SPEED)
KEYUP(32)
WAITMS(1 * $K_SPEED)
KEYDOWN(72) - тянет удочку
WAITMS(20 * $K_SPEED)
KEYUP(72)  - тянет удочку
WAITMS(1 * $K_SPEED)
KEYDOWN(71) - мотает катушку
WAITMS(20 * $K_SPEED)
KEYUP(71) - мотает катушку
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(20 * $K_SPEED)
KEYDOWN(84) - забрасывает удочку
WAITMS(5[20 * $K_SPEED)
KEYUP(84) - забрасывает удочку

Помогите сделать что то примерно такое только на 3 удочки т.е. что бы скрипт искал изменяющиеся цвета пикселя иконки удочки в трёх разных местах экрана и при нахождении сначала активизировал именно эту удочку (клик по иконке удочки либо одна из клавиш 1,2,3) и запускал цикл с подсечкой, выматыванием, забросом и возвращался к поиску.
« Last Edit: October 01, 2014, 02:51:59 PM by Oraven »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #1 on: October 09, 2013, 02:41:43 PM »
Скрипт не верный.

Комментарии пишутся через две косых черты -  // коммент
SUB - это субпрограмма. ей здесь не место. Скрипт по логике и так перейдет в начало если пиксел найден.
при записи переменная $K_SPEED = 4 это число умножается на задержку WAITMS(31 * $K_SPEED) то есть фактическая задержка при записи была 124
Ты эту переменную не прописал и все задержки ускорились в 4 раза
В конце вообще какая то хрень WAITMS(5[20 * $K_SPEED)
Ну а про то что в конце условия надо писать завершающий END_IF тебе видать вообще наплевать  :-\

Хотя бы так напиши, а то на это смотреть страшно...
Code: (clickermann) [Select]
$K_SPEED = 4

GETSCREEN
IF_PIXEL_IN(346,519,346,519,11183005)
   wait(1)
Else
   // тут твоя запись
END_IF
« Last Edit: October 09, 2013, 03:54:27 PM by Oraven »

naftik

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #2 on: October 09, 2013, 05:02:54 PM »
Исправил ... согласен так правильнее но сути это не меняет

Code: (clickermann) [Select]
[/$K_SPEED = 4
 
GETSCREEN
IF_PIXEL_IN(346,519,346,519,11183005) // ищет изменяющийся пиксель цвета (при поклёвке) иконки на АКТИВНОЙ удочке
wait(1)
Else
LCLICK($_return1,$_return2) // по иконке удочки
wait(7)
WAITMS(54 * $K_SPEED)
KEYDOWN(32)
WAITMS(31 * $K_SPEED)
KEYUP(32)
WAITMS(1 * $K_SPEED)
KEYDOWN(72)
WAITMS(20 * $K_SPEED)
KEYUP(72)
WAITMS(1 * $K_SPEED)
KEYDOWN(71)
WAITMS(20 * $K_SPEED)
KEYUP(71)
KEYDOWN(84)
WAITMS(52 * $K_SPEED)
KEYUP(84)
END_IF]

naftik

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #3 on: October 09, 2013, 05:07:02 PM »
Это поиск только одного параметра а как их 3 задать и при условии нахождения одного из них срабатывал клик по возвращённому адресу и дальше по схеме пробел, выматывание, заброс и поиск сначала

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #4 on: October 09, 2013, 05:47:43 PM »
Так и пропиши по порядку для трех удочек. Только координаты анализа поправь.

Code: (clickermann) [Select]
GETSCREEN
IF_PIXEL_IN(346,519,346,519,11183005)
Else
   LCLICK($_return1,$_return2) // по иконке удочки
   wait(7)
   KEYDOWN(#SPACE)
   WAITMS(150)
   KEYUP(#SPACE)
   WAITMS(50)
   KEYDOWN(#H)
   WAITMS(100)
   KEYUP(#H)
   WAITMS(50)
   KEYDOWN(#G)
   WAITMS(100)
   KEYUP(#G)
   WAITMS(50)
   KEYDOWN(#T)
   WAITMS(200)
   KEYUP(#T)
END_IF

GETSCREEN
IF_PIXEL_IN(346,519,346,519,11183005)
Else
   LCLICK($_return1,$_return2) // по иконке удочки
   wait(7)
   KEYDOWN(#SPACE)
   WAITMS(150)
   KEYUP(#SPACE)
   WAITMS(50)
   KEYDOWN(#H)
   WAITMS(100)
   KEYUP(#H)
   WAITMS(50)
   KEYDOWN(#G)
   WAITMS(100)
   KEYUP(#G)
   WAITMS(50)
   KEYDOWN(#T)
   WAITMS(200)
   KEYUP(#T)
END_IF

GETSCREEN
IF_PIXEL_IN(346,519,346,519,11183005)
Else
   LCLICK($_return1,$_return2) // по иконке удочки
   wait(7)
   KEYDOWN(#SPACE)
   WAITMS(150)
   KEYUP(#SPACE)
   WAITMS(50)
   KEYDOWN(#H)
   WAITMS(100)
   KEYUP(#H)
   WAITMS(50)
   KEYDOWN(#G)
   WAITMS(100)
   KEYUP(#G)
   WAITMS(50)
   KEYDOWN(#T)
   WAITMS(200)
   KEYUP(#T)
END_IF

WAITMS(200) // общая задержка

Леха

  • Зашел в гости
  • *
  • Posts: 1
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #5 on: December 30, 2013, 08:57:01 PM »
Андрей привет посмотри пожалуйста вот этот скрипт на тему fantastik fishing чего здесь не так и как сделать на три удочки. как ты говорил прописать 3 раза я прописал но не работает.
GETSCREEN
IF_PIXEL_IN(478,557,478557,10460908)
  LCLICK(478,557)
WAIT(15)
KEYPRESS(#SPACE)
WAIT(2)
KEYUP(#SPACE)
WAIT(1)
KEYDOWN(#G)
WAIT(2)
KEYUP(#G)
WAIT(2)
KEYDOWN(#H)
WAIT(2)
KEYUP(#H)
WAIT(1)
KEYDOWN(#SPACE)
WAIT(1)
KEYUP(#SPACE)
WAIT(1)
KEYPRESS(#T)
WAIT(1)
KEYUP(#T) 
END_IF

Юрец

  • Зашел в гости
  • *
  • Posts: 1
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #6 on: April 03, 2014, 05:51:24 PM »
как сохранить и запустить этого бота?

BROOO

  • Зашел в гости
  • *
  • Posts: 4
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #7 on: June 03, 2014, 04:03:12 PM »
Интересует бот для вышесказанной программы, работа будет оценена соответствующе. Есть неплохая заготовка, нужна поддержка.

BigGul

  • Зашел в гости
  • *
  • Posts: 14
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #8 on: June 05, 2014, 05:33:35 AM »
есть у кого рабочий скрипт на эту игру?

BigGul

  • Зашел в гости
  • *
  • Posts: 14
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #9 on: June 05, 2014, 05:36:30 AM »
Так и пропиши по порядку для трех удочек. Только координаты анализа поправь.

Code: (clickermann) [Select]
GETSCREEN
IF_PIXEL_IN(346,519,346,519,11183005)
Else
   LCLICK($_return1,$_return2) // по иконке удочки
   wait(7)
   KEYDOWN(#SPACE)
   WAITMS(150)
   KEYUP(#SPACE)
   WAITMS(50)
   KEYDOWN(#H)
   WAITMS(100)
   KEYUP(#H)
   WAITMS(50)
   KEYDOWN(#G)
   WAITMS(100)
   KEYUP(#G)
   WAITMS(50)
   KEYDOWN(#T)
   WAITMS(200)
   KEYUP(#T)
END_IF

GETSCREEN
IF_PIXEL_IN(346,519,346,519,11183005)
Else
   LCLICK($_return1,$_return2) // по иконке удочки
   wait(7)
   KEYDOWN(#SPACE)
   WAITMS(150)
   KEYUP(#SPACE)
   WAITMS(50)
   KEYDOWN(#H)
   WAITMS(100)
   KEYUP(#H)
   WAITMS(50)
   KEYDOWN(#G)
   WAITMS(100)
   KEYUP(#G)
   WAITMS(50)
   KEYDOWN(#T)
   WAITMS(200)
   KEYUP(#T)
END_IF

GETSCREEN
IF_PIXEL_IN(346,519,346,519,11183005)
Else
   LCLICK($_return1,$_return2) // по иконке удочки
   wait(7)
   KEYDOWN(#SPACE)
   WAITMS(150)
   KEYUP(#SPACE)
   WAITMS(50)
   KEYDOWN(#H)
   WAITMS(100)
   KEYUP(#H)
   WAITMS(50)
   KEYDOWN(#G)
   WAITMS(100)
   KEYUP(#G)
   WAITMS(50)
   KEYDOWN(#T)
   WAITMS(200)
   KEYUP(#T)
END_IF

WAITMS(200) // общая задержка

что толку в этом повторении для трех удочек если одна работает неправильно!


BROOO

  • Зашел в гости
  • *
  • Posts: 4
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #10 on: June 05, 2014, 05:59:31 PM »
Есть компилированный рабочий исходник, но как вытащить код из него? требует маленькой доработки*

aden

  • Оплот сообщества
  • ****
  • Posts: 363
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #11 on: June 05, 2014, 07:44:32 PM »
Есть компилированный рабочий исходник, но как вытащить код из него? требует маленькой доработки*
никак, файл с раширением exe невозможно полностью декомпилировать
компилированный рабочий исходник
вы путаете понятия


BROOO

  • Зашел в гости
  • *
  • Posts: 4
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #12 on: June 06, 2014, 01:20:07 PM »
Возможно, я не мастер в этой среде, так что там? Получается?

BigGul

  • Зашел в гости
  • *
  • Posts: 14
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #13 on: June 19, 2014, 07:16:34 AM »

Code: (clickermann) [Select]
//Определяем координаты

While($x=0)
   if(iskeydown(1)=1)
      $x=$_xmouse
      $y=$_ymouse
      LOGWRITE ("Координаты",$x,$y)
   Else
      WAITMS(50)
   end_if
end_cyc

//Заброс удочки
LCLICK($x,$y)
LOGWRITE (Забросили)
wait(3)

b:
GETSCREEN
COLORMODE(8, $x+21,503,$x+23,505)
IF(PXL ($x+23,504)=16777215)
   //LOGWRITE (Не клюет)
   wait(1)
   goto (b)
Else
   LOGWRITE (Клюнула)
   LCLICK($x+23,505) // по иконке
   wait(8)
   KEYDOWN(#SPACE)
   WAITMS(50)
   KEYUP(#SPACE)
   wait(1)
   
// Цикл тянем
   GETSCREEN
   COLORMODE(8, $x+21,503,$x+23,505)
   while(PXL ($x+23,503)=16777215)
    else
      LOGWRITE (Тянем)
      WAITMS(50)
      KEYDOWN(#H)
      WAITMS(300)
      KEYUP(#H)
      WAITMS(50)
      KEYDOWN(#G)
      WAITMS(280)
      KEYUP(#G)
      WAITMS(200)
     
      GETSCREEN
      COLORMODE(7, 10,30,981,518)
      IF(PXL (415,448)=8388607)
         INC($myvar, 1);
         LOGWRITE (Поймали," ",$myvar)
         wait(2)
         LCLICK(411,476)  // 8355711
         wait(1)
         keypress(#SPACE)
         goto(a);
      END_IF
   end_cyc
END_IF
a:


Вот мой вариант. для одной удочки
« Last Edit: June 19, 2014, 07:26:00 AM by BigGul »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #14 on: June 19, 2014, 08:57:29 AM »
Вот мой вариант. для одной удочки

Исправил ошибки. Строки всегда пишутся в кавычках, и не нужно оставлять мусор ввиде ";"
Code: (clickermann) [Select]
//Определяем координаты

While($x=0)
   if(iskeydown(1)=1)
      $x=$_xmouse
      $y=$_ymouse
      LOGWRITE ("Координаты: ",$x," ",$y)
   Else
      WAITMS(50)
   end_if
end_cyc

//Заброс удочки
LCLICK($x,$y)
LOGWRITE ("Забросили")
wait(3)

b:
GETSCREEN
COLORMODE(8, $x+21,503,$x+23,505)
IF(PXL($x+23,504)=16777215)
   //LOGWRITE ("Не клюет")
   wait(1)
   goto(b)
Else
   LOGWRITE ("Клюнула")
   LCLICK($x+23,505) // по иконке
   wait(8)
   KEYDOWN(#SPACE)
   WAITMS(50)
   KEYUP(#SPACE)
   wait(1)
   
   // Цикл тянем
   GETSCREEN
   COLORMODE(8, $x+21,503,$x+23,505)
   $check = 0
   while((PXL($x+23,503)=16777215) & ($check = 0))
      LOGWRITE ("Тянем")
      WAITMS(50)
      KEYDOWN(#H)
      WAITMS(300)
      KEYUP(#H)
      WAITMS(50)
      KEYDOWN(#G)
      WAITMS(280)
      KEYUP(#G)
      WAITMS(200)
     
      GETSCREEN
      COLORMODE(7, 10,30,981,518)
      IF(PXL(415,448)=8388607)
         INC($myvar, 1)
         LOGWRITE ("Поймали ",$myvar)
         wait(2)
         LCLICK(411,476)
         wait(1)
         keypress(#SPACE)
         $check = 1
      END_IF
      GETSCREEN
      COLORMODE(8, $x+21,503,$x+23,505)
   end_cyc
END_IF
« Last Edit: June 19, 2014, 09:08:07 AM by Oraven »