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

0 Members and 6 Guests are viewing this topic.

Роман1

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #30 on: October 04, 2014, 02:28:34 AM »
   IF_PICTURE_IN (0,505, 1025, 546, "ne kl.bmp")
   IF_PICTURE_IN (60,583, 112, 617, "sadok.bmp")
Уважаемый Oraven, а что это за картинки ? откуда их взять ?
Спасибо.

А это нужно у ssanarhist спросить. Ведь это его код здесь: http://crapware.aidf.org/forum/index.php?topic=320.msg7297#msg7297
А лучше написать самому.

ne kl.bmp - индикатор удочки
sadok.bmp - проверяет садок на заполнение


А не подскажите откуда их взять?

ssanarhist

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #31 on: October 09, 2014, 12:04:55 AM »
Сделать.

veras14

  • Зашел в гости
  • *
  • Posts: 1
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #32 on: November 01, 2014, 10:16:31 PM »
неужели нельзя поделится информацией о боте

Роман1

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #33 on: November 11, 2014, 12:33:41 AM »
неужели нельзя поделится информацией о боте

я бы с радостью, вот только сам не могу разобраться

ssanarhist

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #34 on: December 03, 2014, 11:48:12 PM »
Это мой вариант. Не все гладко, но меня устраивало. Я его забросил.
Для одной удочки. Первый заброс в локе ваш - дальше запускаете. Ловит, выпускает, режет, продает.

makt4

  • Зашел в гости
  • *
  • Posts: 1
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #35 on: December 11, 2014, 11:45:39 PM »
Это мой вариант. Не все гладко, но меня устраивало. Я его забросил.
Для одной удочки. Первый заброс в локе ваш - дальше запускаете. Ловит, выпускает, режет, продает.

Это к какой-то 1 локе привязано ?  Пробовал на паре локаций... не работает.  Либо что-то править надо ?

Роман1

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #36 on: December 14, 2014, 11:48:10 AM »
Это мой вариант. Не все гладко, но меня устраивало. Я его забросил.
Для одной удочки. Первый заброс в локе ваш - дальше запускаете. Ловит, выпускает, режет, продает.

Это к какой-то 1 локе привязано ?  Пробовал на паре локаций... не работает.  Либо что-то править надо ?

тоже не работает, надо что-то вписывать еще или просто загрузить в кликер?

BubukaBomb

  • Освоившийся
  • **
  • Posts: 36
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #37 on: January 27, 2015, 04:31:04 PM »
Переделал в версии 4.11. Работает уже 2 дня с небольшими замечаниями (иногда не подсекает рыбу, в связи с тем что время ожидания подсечки задано явно, а рыба всегда клюет по разному - но это мелочи, бот просто перезабрасывает уду). Ловит, после заполнения садка идет на базу, продает всю рыбу, возвращается на локацию и продолжает ловить. Так по кругу до остановки или выпрыгивания какого-нибудь неожиданного окна (достижение и т.д.) - это нужно отслеживать вручную. Количество потяжек при вываживании установлено 3, но в цикле можно уменьшить время нажатия клавиш "G" и "H" и увеличить количество итераций цикла, что будет нужно при вываживании крупной рыбины , я этим не заморачивался , так как ловлю Щитовку на 20 гр.
При использовании необходимо сделать пару картинок (индикатор клюющей удочки и пустого садка) - 2 маленьких квадратика и положить их в папку Кликермана. Также необходимо под себя подстроить координаты точек кликанья и областей в которых кликер будет искать индикатор поклевки и индикатор садка. Точку первоначального заброса тоже необходимо задать вручную (строка 9).
Не могу заставить работать кликер в режиме привязке к окну, он просто не видит область для анализа. Что делать не знаю, может кто подскажет? Игра клиентская, может с этим связано? Пробовал установить клиент игры на виртуальные машины (Win XP, Win 7) - клиент не работает ни на одной, путь тупиковый. Клиент работает в оконном режиме размером 1000х750. Будем пытаться разбираться дальше.
Есть еще мысли организовать ловлю на три удочки с помощью потоков, но это в будущем, еще не конца понял, собственно сам алгоритм.

Code: (clickermann) [Select]
if(iskeydown(1)=1)
$x=$_xmouse
$y=$_ymouse
LOGWRITE ("Координаты: ",$x," ",$y)
Else
WAITMS(50)
     
// Заброс удочки
LCLICK (1100, 390)
LOGWRITE ("Забросили")
wait (1)

// ожидаем поклевки   
b:
GETSCREEN
IF_PICTURE_IN (800, 300, 1330, 514, "nekl.bmp", -1, 50)
wait (4)
goto (b)
Else
LOGWRITE ("Клюнула")
wait (5)

// подсекаем
KEYDOWN (#SPACE)
WAITMS (50)
KEYUP (#SPACE)
wait (1)               
LOGWRITE ("Тянем")

// тянем     
$var = 1
while ($var < 4)
WAITMS (10)     
KEYDOWN (#H)
WAITMS (900)
KEYUP (#H)
WAITMS (20)
KEYDOWN (#G)
WAITMS (900)
KEYUP (#G)
WAITMS (30)
inc ($var)
end_cyc
 
// проверяем садок   
GETSCREEN
IF_PICTURE_IN (345,540, 475, 590, "sadok.bmp")
wait(2)
Else
LCLICK (1290,45) // вернуться на базу
wait (2)
LCLICK (410,570) // садок
wait (2)
LCLICK (1070,463) // продать все
wait (2)
LCLICK (730,410) // подтв. продажи
wait (2)
LCLICK (850,410) // рыба продана
wait (2)
LCLICK (410,590) // карта
wait (2)
LCLICK (765,257) // перешеек
wait (2)                     
END_IF
END_IF
END_IF
« Last Edit: January 27, 2015, 04:35:07 PM by BubukaBomb »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #38 on: January 27, 2015, 05:24:14 PM »
В оконном режиме не работают зажатия клавиш, поэтому он тут вообще не применим.

BubukaBomb

  • Освоившийся
  • **
  • Posts: 36
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #39 on: January 27, 2015, 05:28:49 PM »
В оконном режиме не работают зажатия клавиш, поэтому он тут вообще не применим.

Ок, спасибо понял, а как можно организовать? А зажатия клавиш мышки работают?
« Last Edit: January 27, 2015, 05:39:12 PM by BubukaBomb »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #40 on: January 27, 2015, 06:16:11 PM »
Зажатия клавиш мыши могут работать, но не всегда корректно. Но у тебя же кликер ничего не видит. Такой окно что поделать....

BubukaBomb

  • Освоившийся
  • **
  • Posts: 36
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #41 on: January 27, 2015, 06:28:17 PM »
Спасибо) Буду репу чесать чего делать, мож начешу)))

BubukaBomb

  • Освоившийся
  • **
  • Posts: 36
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #42 on: January 29, 2015, 11:26:07 PM »
Накодил на 3 удочки, работает нормально. Но не очень красиво выглядят "костылики" GOTO в строках 27, 85, 99, 130. Правда как их победить, пока ума не хватает. Буду очень признателен за подсказки, а то что-то голова уже дымится...

Code: (clickermann) [Select]
#ps2_keyboard
$x1 = 838
$y1 = 455
$x2 = 1285
$y2 = 505

// подпрограмма вываживания рыбы
SUB(VYLOV)
 // подсечка
 WAIT     (RND(4,6))
 KEYPRESS (#SPACE)
 WAIT   (0.3)
 // вываживание
 a:
 GETSCREEN ($x1, $y1, $x2, $y2)
 COLORMODE (6, $x1, $y1, $x2, $y2)

 IF_PICTURE_IN ($x1, $y1, $x2, $y2, "Katush.bmp", -1, 75)
  KEYDOWN (#H)
  WAITMS  (175)
  KEYUP   (#H)
  WAITMS  (5)
  KEYDOWN (#G)
  WAITMS  (175)
  KEYUP   (#G)
  WAITMS  (5)
  GOTO (a)
 ELSE
  WAITMS   (300)
  KEYPRESS (#T)
 END_IF
END_SUB

// основное тело программы
 b:
 WAIT (2)

// заброс удочки 1
 KEYPRESS (#1)
 LCLICK   (RND(838,846), RND(412,420))
 WAIT   (2)

// заброс удочки 2
 KEYPRESS (#2)
 LCLICK   (RND(1080,1120), RND(380,400))
 WAIT     (2)

// заброс удочки 3
 KEYPRESS (#3)
 LCLICK   (RND(1242,1250), RND(351,359))
 WAIT   (2)

// перемещение уды вверх карты (чтобы не мешалась)
 MOVE (RND(900,1120), RND(150,250))

 c:
 GETSCREEN ($x1, $y1, $x2, $y2)
 COLORMODE (6, $x1, $y1, $x2, $y2)

 IF_PICTURE_IN ($x1, $y1, $x2, $y2, "1kl.bmp", -1, 70)
  KEYPRESS (#1)
  VYLOV()   
 ELSE
  IF_PICTURE_IN ($x1, $y1, $x2, $y2, "11kl.bmp", -1, 70)
   KEYPRESS (#1)
   VYLOV()   
  ELSE
   IF_PICTURE_IN ($x1, $y1, $x2, $y2, "2kl.bmp", -1, 70)
    KEYPRESS (#2)
    VYLOV()   
   ELSE
    IF_PICTURE_IN ($x1, $y1, $x2, $y2, "22kl.bmp", -1, 70)
     KEYPRESS (#2)
     VYLOV()   
    ELSE
     IF_PICTURE_IN ($x1, $y1, $x2, $y2, "3kl.bmp", -1, 70)
      KEYPRESS (#3)
      VYLOV() 
     ELSE
      IF_PICTURE_IN ($x1, $y1, $x2, $y2, "33kl.bmp", -1, 70)
       KEYPRESS (#3)
       VYLOV()
      ELSE
       WAIT (1)
       GOTO (c)
      END_IF
     END_IF
    END_IF
   END_IF
  END_IF
 END_IF
 
// проверка садка
 GETSCREEN (355, 550, 460, 580)
 COLORMODE (6, 355, 550, 460, 580)

 IF_PICTURE_IN (355, 550, 460, 580, "sadok.bmp", -1, 90)
  WAIT (0.5)
  GOTO (c)
 ELSE

// возврат на базу
  LCLICK (RND(1285,1305), RND(35,55))
  WAIT   (RND(3,5))

// открытие садка
  LCLICK (RND(370,450), RND(558,573))
  WAIT   (RND(3,5))

// продажа рыбы
  LCLICK (RND(1030,1120), RND(453,468))
  WAIT   (RND(3,5))

// подтверждение продажи
  LCLICK (RND(690,780), RND(402,417))
  WAIT   (RND(3,5))

// рыба продана
  LCLICK (RND(805,895), RND(402,417))
  WAIT   (RND(3,5))

// переход на локальную карту
  LCLICK (RND(370,450), RND(582,597))
  WAIT   (RND(3,5))

// переход на локацию
  LCLICK (RND(755,775), RND(245,265))
  WAIT   (RND(3,5))
 END_IF
 GOTO (b)
« Last Edit: January 30, 2015, 01:51:10 AM by BubukaBomb »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #43 on: January 30, 2015, 09:30:20 AM »
Как-то так:
Code: (clickermann) [Select]
#ps2_keyboard
$x1 = 838
$y1 = 455
$x2 = 1285
$y2 = 505

// подпрограмма вываживания рыбы
SUB(VYLOV)
   // подсечка
   WAIT     (RND(4,6))
   KEYPRESS (#SPACE)
   WAIT  (0.3)
   // вываживание
   $a = 1
   WHILE($a = 1)
      GETSCREEN ($x1, $y1, $x2, $y2)
      COLORMODE (6, $x1, $y1, $x2, $y2)
     
      IF_PICTURE_IN ($x1, $y1, $x2, $y2, "Katush.bmp", -1, 75)
         KEYDOWN (#H)
         WAITMS  (175)
         KEYUP   (#H)
         WAITMS  (5)
         KEYDOWN (#G)
         WAITMS  (175)
         KEYUP   (#G)
         WAITMS  (5)
      ELSE
         WAITMS   (300)
         KEYPRESS (#T)
         $a = 0
      END_IF
   END_CYC
   $c = 0
END_SUB

// основное тело программы
WAIT (2)

// заброс удочки 1
KEYPRESS (#1)
LCLICK (RND(838,846), RND(412,420))
WAIT (2)

// заброс удочки 2
KEYPRESS (#2)
LCLICK   (RND(1080,1120), RND(380,400))
WAIT     (2)

// заброс удочки 3
KEYPRESS (#3)
LCLICK (RND(1242,1250), RND(351,359))
WAIT (2)

// перемещение уды вверх карты (чтобы не мешалась)
MOVE (RND(900,1120), RND(150,250))

$c = 1
WHILE($c = 1)
   GETSCREEN ($x1, $y1, $x2, $y2)
   COLORMODE (6, $x1, $y1, $x2, $y2)
   
   IF_PICTURE_IN ($x1, $y1, $x2, $y2, "1kl.bmp", -1, 70)
      KEYPRESS (#1)
      VYLOV()
   ELSE
      IF_PICTURE_IN ($x1, $y1, $x2, $y2, "11kl.bmp", -1, 70)
         KEYPRESS (#1)
         VYLOV()
      ELSE
         IF_PICTURE_IN ($x1, $y1, $x2, $y2, "2kl.bmp", -1, 70)
            KEYPRESS (#2)
            VYLOV()
         ELSE
            IF_PICTURE_IN ($x1, $y1, $x2, $y2, "22kl.bmp", -1, 70)
               KEYPRESS (#2)
               VYLOV()
            ELSE
               IF_PICTURE_IN ($x1, $y1, $x2, $y2, "3kl.bmp", -1, 70)
                  KEYPRESS (#3)
                  VYLOV()
               ELSE
                  IF_PICTURE_IN ($x1, $y1, $x2, $y2, "33kl.bmp", -1, 70)
                     KEYPRESS (#3)
                     VYLOV()
                  ELSE
                     WAIT (1)
                  END_IF
               END_IF
            END_IF
         END_IF
      END_IF
   END_IF
   
   IF($c = 1)
      // проверка садка
      GETSCREEN (355, 550, 460, 580)
      COLORMODE (6, 355, 550, 460, 580)
     
      IF_PICTURE_IN (355, 550, 460, 580, "sadok.bmp", -1, 90)
         WAIT (0.5)
      ELSE
         $c = 0
         // возврат на базу
         LCLICK (RND(1285,1305), RND(35,55))
         WAIT   (RND(3,5))
         
         // открытие садка
         LCLICK (RND(370,450), RND(558,573))
         WAIT   (RND(3,5))
         
         // продажа рыбы
         LCLICK (RND(1030,1120), RND(453,468))
         WAIT   (RND(3,5))
         
         // подтверждение продажи
         LCLICK (RND(690,780), RND(402,417))
         WAIT   (RND(3,5))
         
         // рыба продана
         LCLICK (RND(805,895), RND(402,417))
         WAIT   (RND(3,5))
         
         // переход на локальную карту
         LCLICK (RND(370,450), RND(582,597))
         WAIT   (RND(3,5))
         
         // переход на локацию
         LCLICK (RND(755,775), RND(245,265))
         WAIT   (RND(3,5))
      END_IF
   END_IF
END_CYC
« Last Edit: January 30, 2015, 09:35:42 AM by Vint »


BubukaBomb

  • Освоившийся
  • **
  • Posts: 36
    • View Profile
Re: Бот для Fantastic Fishing
« Reply #44 on: January 30, 2015, 11:40:58 AM »
О даааа, спасибо большое, пойду тестить и думать чего с ботом сделать еще!