Author Topic: Dark Orbit сборщик коробок. Помогите дописать чуть чуть))  (Read 38000 times)

0 Members and 1 Guest are viewing this topic.

KotTeam

  • Зашел в гости
  • *
  • Posts: 12
    • View Profile
Code: [Select]
loot:
GETSCREEN
IF_PIXEL_IN(89,149, 1120,642, 15268857,3006463,3095502)
   LCLICK($_return1, $_return2)
   WAITMS(5000)
   goto(loot)
else

END_IF   

 



LCLICK(RND(1180,1322),RND(605,680))
Ну кратко это так. Ищет пиксели и жмякает на них если нету пикселей нужно жмякать рандом клик и опять проверять пиксели. И важно когда происходит клик рандомно(а это клик по миникарте) корабль  летит в указанную точку, но чтоб он туда прибыл должно пройти время(можно и заданное). Типо должен нажимать на миникарту раз в ~30сек и в это время искал пиксели. Или скорости поиска не хватит чтобы на лету(достаточно большая скорость полете корабля) увидеть пиксели? Ну как то так... Как быть?
« Last Edit: April 30, 2014, 07:12:00 PM by KotTeam »

Atas

  • Активный участник
  • ***
  • Posts: 147
    • View Profile
Code: (clickermann) [Select]
loot:

GETSCREEN
IF_PIXEL_IN(89,149, 1120,642, 15268857,3006463,3095502) // Ищет пиксели и
   LCLICK($_return1, $_return2) // жмякает на них (на первый попавшийся из перечисленных цветов)
   WAITMS(500) // частота поиска пикселей
ELSE
   LCLICK(RND(1180,1322),RND(605,680)) // если нету пикселей нужно жмякать рандом клик
   WAIT(30) // 30 секунд - чтоб он туда прибыл должно пройти время(можно и заданное)
END_IF

GOTO(loot) // и опять проверять пиксели
« Last Edit: May 01, 2014, 02:57:59 PM by Atas »

KotTeam

  • Зашел в гости
  • *
  • Posts: 12
    • View Profile
Там он будет ждать 30 сек и не будет искать пиксели. А мне нужно чтоб если нету пикселей кликнул и искал их некоторое время или т.п.

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Там он будет ждать 30 сек и не будет искать пиксели. А мне нужно чтоб если нету пикселей кликнул и искал их некоторое время или т.п.
ну, както так:
Code: (clickermann) [Select]
GETSCREEN

IF_PIXEL_IN(89,149, 1120,642, 15268857,3006463,3095502) // Ищет пиксели и
   
   LCLICK($_return1, $_return2) // жмякает на них (на первый попавшийся из перечисленных цветов)
   
   WAITMS(500) // частота поиска пикселей
   
ELSE
   
   LCLICK(RND(1180,1322),RND(605,680)) // если нету пикселей нужно жмякать рандом клик
   $t_fin = 0
   $t_st = $_time_t
   WHILE($t_fin < 30)      //после жмяка рандом клик, в течении 30 сек будет искать пиксели и клацать по ним
      GETSCREEN
      IF_PIXEL_IN(89,149, 1120,642, 15268857,3006463,3095502)
         LCLICK($_return1, $_return2)
      END_IF
      WAITMS(500)
      $t_fin = $_time_t - $t_st
   END_CYC
   
END_IF
конечно несовсем понятно что именно нада
« Last Edit: May 04, 2014, 11:17:10 AM by dramster »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Code: (clickermann) [Select]
$time = $_time_t + 30
$check = 0
$check_out = 0
WHILE(($check_out = 0) & ($time > $_time_t))
   GETSCREEN
   IF_PIXEL_IN(89,149, 1120,642, 15268857,3006463,3095502)
      $time = $_time_t + 5
      $check = 1
      LCLICK($_return1, $_return2)
      WAITMS(500)
   ELSE
      IF($check = 1)
         $check_out = 1
      END_IF
      WAITMS(25)
   END_IF
END_CYC

LCLICK(RND(1180,1322),RND(605,680))
WAITMS(500)

KotTeam

  • Зашел в гости
  • *
  • Posts: 12
    • View Profile
Я не очень разбираюсь ещё в скриптах кликермана и нечего не понял из ваших скриптов)))Задача: кликнуть мышкой(там по координатам случайным), потом искать пиксели не экране некоторое время(если нету всё заново). Если не трудно опишите что и как вы делали с переменными плиз))

P.S. из ваших скриптов не один не работал

KotTeam

  • Зашел в гости
  • *
  • Posts: 12
    • View Profile
Code: [Select]
$m = 0
loot:
GETSCREEN
IF_PIXEL_IN(89,149, 1120,642,12038816,14548220,13303034 )  //цвета ресурсов
LCLICK($_return1, $_return2)                                                 //клик по ним
WAITMS(5000)                                                                         //ждём пока долетит
LOGWRITE ("ресурс/коробка подобрана")
proverka:
$m = $m - 1   
if ($m > 1)
goto (loot)
else
goto (rand)
end_if
else
goto(proverka)
rand:
$m = 250                                                      //импровизированное время)))
LCLICK(RND(1180,1322),RND(605,680))
goto (proverka)
END_IF   
Вот получилось!
« Last Edit: May 06, 2014, 03:21:05 PM by KotTeam »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Думаю вот в чем проблема, у меня сразу идет поиск пиксела в течении 30 сек и только потом клик по миникарте. А ты решил что не работает. Просто нужно сначало выполнить клик и только потом искать.

Code: (clickermann) [Select]
LCLICK(RND(1180,1322),RND(605,680))
$time = $_time_t + 30
$check = 0
$check_out = 0
WHILE(($check_out = 0) & ($time > $_time_t))
   GETSCREEN
   IF_PIXEL_IN(89,149, 1120,642, 15268857,3006463,3095502)
      $time = $_time_t + 1
      $check = 1
      LCLICK($_return1, $_return2)
      WAITMS(500)
   ELSE
      IF($check = 1)
         $check_out = 1
      END_IF
      WAITMS(25)
   END_IF
END_CYC
WAITMS(500)
И как это я без многочисленных GOTO обошелся? Прада странно  ;)  ;D
Это только кажется сложным, на самом деле этот скрипт, разбирающимся в командах, куда проще прочесть чем твою путаницу с ГОТО...
« Last Edit: May 05, 2014, 10:43:23 PM by Oraven »

Atas

  • Активный участник
  • ***
  • Posts: 147
    • View Profile
Вот нашел видео http://www.youtube.com/watch?v=XCa1gXx0ccw
Тут похоже задержка в 30 секунд вообще не нужна, постоянное движение и постоянный поиск пикселей в движении.
Возможно я нашел неудачный пример, сам в Dark Orbit не играю.

aden

  • Оплот сообщества
  • ****
  • Posts: 363
    • View Profile
неужели все это работает через поиск по пикселю несмотря на такой сложный фон? в чем секрет ?

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
неужели все это работает через поиск по пикселю несмотря на такой сложный фон? в чем секрет ?
В COLORMODE


KotTeam

  • Зашел в гости
  • *
  • Posts: 12
    • View Profile
неужели все это работает через поиск по пикселю несмотря на такой сложный фон? в чем секрет ?
Секрет в настройках игры)))
Oraven, вот что значит _time_t +30? что такое _time_t
$time = $_time_t + 30
$check = 0
$check_out = 0   
« Last Edit: May 06, 2014, 03:20:49 PM by KotTeam »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
$_time_t - это системная переменная текущее время Unix. Вообще все системные переменные начинаются с "$_"

Вот то и дело всплывает этот Орбит но никто не удосуживается выложить свой рабочий скрипт на него. И каждый новый нуб начинает все сначала писать...
« Last Edit: May 06, 2014, 03:45:24 PM by Oraven »

KotTeam

  • Зашел в гости
  • *
  • Posts: 12
    • View Profile
МММ. Вот новая ошибка теперь бот пропускает некоторые пиксели (наверно не видит). Вечерком попробую переписать чтоб искал по картинке. А по рисунку дольше поиск? Если да то на много?)

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Какая картинка, тебе нужно использовать цветокоррекцию. Скорее всего 5й уровень, и нужно потрудиться чтоб найти пикселы которые есть только в коробке но нет негде болле.