Автокликер Clickermann :: Форум

Основной раздел => Использование => Topic started by: liubcici on November 26, 2013, 11:52:18 PM

Title: Помогите написать сценарий.
Post by: liubcici on November 26, 2013, 11:52:18 PM
Уважаемые профессионалы, помогите написать сценарий. Нужен бот для онлайн игры Нано-Ферма вконтакте. Как быть и с чего начать ума не приложу. Бот должен ходить по соседям и собирать у них урожай рубить камень, дерево. Заранее спасибо.
Title: Re: Помогите написать сценарий.
Post by: Oraven on November 27, 2013, 12:12:56 AM
Играл я в эту игру, то что ты хочешь трудно осуществимо. Это слишком сложные действия, у игроков деревья, камни, грядки могут быть где угодно, плюс еще большая территория, прибавь сюда трудности в распознавании тех же грядок.

Вот например покормить всех животных прокликав красные стрелочки или собрать бонус со зданий это куда проще. Правда я уже давно в неё не играл может там что и изменилось.
Title: Re: Помогите написать сценарий.
Post by: Jaguar on February 23, 2015, 06:48:12 PM
Привет.
Нано ферма. точнее ее точная копия Astro Garden https://apps.facebook.com/astrogarden/
сделал привязку к "окну" флеша, хотя с ней и без нее, цвет выдается черный и раз в 2-6 сек, на долю сек. показывается реальный, красный синий  и т.д. 
таких проблем нет в AutiIt и Sikuli, но первая как-то не то что надо под флеш, вторая косяков полна.
что не так с Clickermann v4.11 или у меня firefox и win 7 x64.
цвет пикселя черный что не так?
и почему функция клик выполняется более одного раза?
а print pxl 6 раз а не 600?

Code: [Select]
SUB(Друг,$fr)
   FOR($i, $i < 100)
      FOR($a, $a < 6)
         Print(700-$a*80,",-,585,-,",PXL(700-$a*80, 585))
         WAITMS(50)
      END_CYC
   END_CYC
   WAITMS(300)
   MOVE(780-$fr*80, 585)
   WAITMS(5300)
   LCLICK(780-$fr*80, 585)
   WAITMS(200)
END_SUB
Друг(4)
результат
[spoiler]22:21:43 860,-,585,-,0
22:21:43 940,-,585,-,0
22:21:44 1020,-,585,-,0
22:21:44 1100,-,585,-,0
22:24:45 700,-,585,-,0
22:24:45 620,-,585,-,0
22:24:45 540,-,585,-,0
22:24:45 460,-,585,-,0
22:24:45 380,-,585,-,0
22:24:45 300,-,585,-,0
22:26:55 700,-,585,-,0
22:26:55 620,-,585,-,0
22:26:55 540,-,585,-,0
22:26:56 460,-,585,-,0
22:26:56 380,-,585,-,0
22:26:56 300,-,585,-,0
22:27:06 700,-,585,-,0
22:27:06 620,-,585,-,0
22:27:06 540,-,585,-,0
22:27:06 460,-,585,-,0
22:27:06 380,-,585,-,0
22:27:06 300,-,585,-,0
22:28:08 700,-,585,-,0
22:28:08 620,-,585,-,0
22:28:08 540,-,585,-,0
22:28:08 460,-,585,-,0
22:28:08 380,-,585,-,0
22:28:08 300,-,585,-,0[/spoiler]
Title: Re: Помогите написать сценарий.
Post by: Oraven on February 23, 2015, 07:52:40 PM
что не так

GETSCREEN где? Цикл FOR в последней версии 4.11 сам не обнуляется, нужно добавить параметр.
Code: (clickermann) [Select]
SUB(Друг,$fr)
   GETSCREEN
   FOR($i=0, $i < 100)
      FOR($a=0, $a < 6)
         Print(700-$a*80,",-,585,-,",PXL(700-$a*80, 585))
         WAITMS(50)
      END_CYC
   END_CYC
   WAITMS(300)
   MOVE(780-$fr*80, 585)
   WAITMS(5300)
   LCLICK(780-$fr*80, 585)
   WAITMS(200)
END_SUB

Друг(4)

Лог:
Code: [Select]
20:48:48 300,-,585,-,14215660
20:48:48 700,-,585,-,16777215
20:48:48 620,-,585,-,16777215
20:48:48 540,-,585,-,14215660
20:48:49 460,-,585,-,14215660
20:48:50 380,-,585,-,15723239

На счет привязки, попробуй сменить тему на упрощенную, отключить эффекты, аэро там всякии и прочую лабуду.
Title: Re: Помогите написать сценарий.
Post by: Jaguar on February 23, 2015, 08:19:14 PM
Спасибо.
1. отключил АЭРО, да черный цвет только при обновлении картинки флеша. что норм. когда смотришь лупой,
опс. через 5-10 минут(после отключения АЭРО) стало как было 
1.1. в firefox отключил аппаратное ускорение.
результаты все еще черные часто, когда это не главное окно и когда главное единственное кроме кликера, тоже.
[spoiler]
0:21:49 300,-,585,-,0
0:21:49 700,-,585,-,12230268
0:21:50 620,-,585,-,12230268
0:21:50 540,-,585,-,12230268
0:21:50 460,-,585,-,12230268
0:21:50 380,-,585,-,12230268
0:21:50 300,-,585,-,12230268
0:21:56 700,-,585,-,0
0:21:56 620,-,585,-,0
0:21:56 540,-,585,-,0
0:21:56 460,-,585,-,0
0:21:56 380,-,585,-,0
0:21:56 300,-,585,-,0
0:21:56 700,-,585,-,0
0:21:56 620,-,585,-,0
0:21:56 540,-,585,-,0
0:21:56 460,-,585,-,0
0:21:56 380,-,585,-,0
0:21:56 300,-,585,-,0
0:22:39 700,-,585,-,0
0:22:39 620,-,585,-,0
0:22:39 540,-,585,-,0
0:22:39 460,-,585,-,0
0:22:39 380,-,585,-,0
0:22:39 300,-,585,-,0
0:22:39 700,-,585,-,0
0:22:39 620,-,585,-,0
0:22:39 540,-,585,-,0
0:22:40 460,-,585,-,0
0:22:40 380,-,585,-,0
0:22:40 300,-,585,-,0
0:23:05 700,-,585,-,0
0:23:05 620,-,585,-,0
0:23:05 540,-,585,-,0
0:23:06 460,-,585,-,0
0:23:06 380,-,585,-,0
0:23:06 300,-,585,-,0
0:23:06 700,-,585,-,12406464
0:23:06 620,-,585,-,12406464
0:23:06 540,-,585,-,12406464
0:23:06 460,-,585,-,12406464
0:23:06 380,-,585,-,12406464
0:23:06 300,-,585,-,12406464
0:23:32 700,-,585,-,0
0:23:32 620,-,585,-,0
0:23:32 540,-,585,-,0
0:23:32 460,-,585,-,0
0:23:32 380,-,585,-,0
0:23:32 300,-,585,-,0
0:23:32 700,-,585,-,0
0:23:32 620,-,585,-,0
0:23:32 540,-,585,-,0
0:23:32 460,-,585,-,0
0:23:32 380,-,585,-,0
0:23:32 300,-,585,-,0
0:23:58 700,-,585,-,0
0:23:58 620,-,585,-,0
0:23:58 540,-,585,-,0
0:23:58 460,-,585,-,0
0:23:58 380,-,585,-,0
0:23:58 300,-,585,-,0
0:23:58 700,-,585,-,0
0:23:58 620,-,585,-,0
0:23:58 540,-,585,-,0
0:23:58 460,-,585,-,0
0:23:59 380,-,585,-,0
0:23:59 300,-,585,-,0
0:24:24 700,-,585,-,0
0:24:24 620,-,585,-,0
0:24:24 540,-,585,-,0
0:24:24 460,-,585,-,0
0:24:25 380,-,585,-,0
0:24:25 300,-,585,-,0
0:24:25 700,-,585,-,0
0:24:25 620,-,585,-,0
0:24:25 540,-,585,-,0
0:24:25 460,-,585,-,0
0:24:25 380,-,585,-,0
0:24:25 300,-,585,-,0
[/spoiler]
1.2 в гуглехроме норм. нет черного цвета, только флеш не выделяется как "окно" приходится координаты от угла мерить, а это значит меню флеш, не скоординировано(не на месте постоянном).


2. и все тот же вопрос почему клик происходит не один раз?
тело программы идет по кругу? как остановить сделать один-два раза?

3. тело программы не отделимо от вставленных функций? (ну кроме выноса в отдельный файл)

4. как функция может вернуть значение?

ПС. Единственно, я скрин в цикл поставил это же обновление флеш после перехода к другу.
и вторая функция никак же не влияет.
Code: [Select]

#name "AS_Bot_01"
$timems=500

SUB(СДВИГ,$x1,$y1,$x2,$y2) //
   LDOWN($x1,$y1)
   WAITMS($timems)
   MOVE($x2,$y2)
   WAITMS($timems)
   LUP($x2,$y2)
   WAITMS($timems)
END_SUB

SUB(Друг,$fr)
   FOR($i=0, $i < 2)
     GETSCREEN
FOR($a=0, $a < 6)
Print(700-$a*80,",-,585,-,",PXL(700-$a*80, 585))
         WAITMS(50)
      END_CYC
   END_CYC
   WAITMS(300)
   MOVE(780-$fr*80, 585)
   WAITMS(5300)
   LCLICK(780-$fr*80, 585)
   WAIT(20)
END_SUB

ДРУГ(4)
Title: Re: Помогите написать сценарий.
Post by: Oraven on February 23, 2015, 09:34:06 PM
С привязкой к окну могут быть различные проблемы, если она глючит не нужно биться головой об стену, используй обычный режим, он куда стабильнее.

По умолчанию скрипт выполняется по кругу бесконечно, команда HALT остановит выполнение скрипта.

Добавь такое условие в конце, чтобы выполнить скрипт два раза
Code: (clickermann) [Select]
INC($count,1)
IF($count = 2) // остановить на втором проходе
   HALT
END_IF

Командой GETSCREEN кликер получает актуальный снимок экрана. У тебя похоже достаточно одного снимка а потом в цикле этот снимок будет анализироваться
Не очень понимаю зачем это тебе нужно?
Code: (clickermann) [Select]
Print(700-$a*80,",-,585,-,",PXL(700-$a*80, 585))
Quote
4. как функция может вернуть значение?
Все переменные в кликере глобальные. Просто значение записывается в какую то переменную, которая потом будет прочитана в другой подпрограмме.
Единственное, стоит помнить что переменные участвующие в параметрах подпрограммы после её окончания будут обнулены
SUB(СДВИГ,$x1,$y1,$x2,$y2)

Title: Re: Помогите написать сценарий.
Post by: Jaguar on February 23, 2015, 09:57:23 PM
спасибо еще раз.
удалил, почистил хвосты от FireFox, поставил удали все с него, чернота исчезла когда нет привязки. иногда правда перезагруз нужен.
в привязке да чернит почему  мне неясно...
Хром также норм без привязки , в привязке не черный, но однотонный.

1. мож еще какой браузер помучить?
или не будет флеш играть в заднем "окне"?

2. насчет зачем нужно, дак потом же проверять если еще действия на друга, т.е. заходить на него или нет.
как раз определил какой цвет в этой точке меню флеша,
а вот вылезло что экран черный ))) я ж только начало бота накидал.
Title: Re: Помогите написать сценарий.
Post by: Jaguar on February 24, 2015, 04:31:44 PM
1. сколько вообще вложенных циклов, функций можно делать?
2. жутко нужен until а вижу только while, сделал два goto жесть. 
3. Есть выход из подпрограммы (прерывание ее), а прога пусть дальше делается?  через goto сделать?
Title: Re: Помогите написать сценарий.
Post by: Oraven on February 24, 2015, 05:39:49 PM
Вложенность циклов не ограничена. Да прерывания нет, и выпрыгивать через гото из цикла и подпрограммы тоже не рекомендуется.
Title: Re: Помогите написать сценарий.
Post by: Jaguar on February 24, 2015, 06:36:30 PM
скриншот удалось сохранить 1 раз из 25 запусков((( выкл, перезагруз не помогают ни часть экрана ни полный...
в  общем он мне и не нужен, но не работает(((((
Title: Re: Помогите написать сценарий.
Post by: vitanovanatol on April 05, 2017, 09:43:11 AM
Кстати ребята, такая проблема играл себе спокойно никого не трогал, шло вообщем все очень даже хорошо. Но тут просто с не счего черный экран вылез пример можете тут посмотреть
Code: [Select]
h t t p s://... html и больше игра не какими действиями себя не обозначает. Подскажите пожалуйста как решить эту проблему заранее всем спасибо))
Title: Re: Помогите написать сценарий.
Post by: Vint on April 05, 2017, 11:33:48 AM
Это ты из сумрака вытащил тему чтоб рекламную ссылку запостить?