Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Фарм-Бот в Греполис
AciD DrEaM
сообщение 14.5.2012, 3:40
Сообщение #1


**

Neophyte
Сообщений: 17
Регистрация: 28.3.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 14.807
Возраст: 27



Вот мой скрипт для "фарма" всех городов по очереди. Делался под UO Pilot 2.28(Который тут на форуме и качаем) Постарался добавить максимум описаний для упрощения настроек + приложил все необходимые иконки (имиджи) в zip т.к bmp форум не даёт выставить.
Я не профи в скриптовании,по этому скрипт по мере тестов изменяется. Тут так-же буду обновлять. Пока работает стабильно. Максимальное время теста 4 дня без перебоя + возможность зайти с другого компа или мобилы. Скрипт сам переконектится через 5 минут. Следуйте настройкам в самом скрипте и всё получится.
Настройки самого Пилота: Все стандартное + перемещать курсор в точку клика.
В настройках скрипта в некоторых местах нужно поменять координаты. Где именно я указал. Брать координаты: Окно УО пайлота активное, наводим мышку на место откуда хотим взять координаты и нажимаем (Ctrl+A). В УО Пайлоте в "Точка (Ctrl+A)" появятся 2 цифры, это и есть нужные координаты. (Берём левые 2, не правые)
Все имиджи с архива в место к которому и прописываем адреса в самом скрипте. Звуковой файл помещаем к самому УО Пайлоту.
P.S
Запускать скрипт на городе где самое верхнее селение не собрано т.к первый шаг берёт цвет значка готовности к фарму...

Script
Код
//Убрать в настройках игры автоматическое открытие города и обязательно включить автоматический переход к городу при его выборе и убрать ночную графику.
// Проверить что не стоит галочка на "Скрыть индикатор выполнения для селений земледельцев (может повысить скорость игры)" в разделе карта в настройках.

set #City 5 //Колличество городов есть
set #Gift 2 //Выбрать ежедневный подарок. 1=Ресурсы,2=Благосклонность
set #Attack 1 //Проверка на атаку. 1-да, 0-нет


set #First 1
set #AttackOn 0
set #MaxChe 8
set Timer
set #Che 0
set #Circ 1
set #Done 0
set #Fail 0
set #Go 0
set #f 0
  wait 2000
goto Start

:Reload //Обновление страницы
send F5
set #Che 0
  wait 2000
while 936, 386 0
    wait 1000
    set #Che #Che + 1
      if #Che > #MaxChe
        set #Che 0
        goto Reload
      end_if
end_while


:Start //Перезайти на нужный сервер если выкинуло. Прописываем адресс к Имиджу
set $s FindImage (0 0 1600 1400 (D:\Games\Uo Tools\Scripts\Grepolis\Grepolis.bmp) %arr 2 80 1)
if $s > 0
    set #X %arr[#1 1] + 326
    set #Y %arr[#1 2] + 20
        wait 300000 //Время ожидания для релога в секундах
       double_kleft  #X,#Y
        wait 10000    
end_if
      

:Gift //Сбор ежедневного подарка. Прописываем адресс к Имиджу
set $g FindImage (0 0 1600 1400 (D:\Games\Uo Tools\Scripts\Grepolis\Gifts.bmp) %arr 2 80 1)
  if $g > 0
    if #Gift = 1
      set #X2 %arr[#1 1] - 90
      set #Y2 %arr[#1 2] + 25
      left #X2,#Y2
      wait 1000
    end_if
      if #Gift = 2
        set #X2 %arr[#1 1] + 130
        set #Y2 %arr[#1 2] + 25
          left #X2,#Y2
          wait 1000
       end_if      
  end_if

//Закрыть любое открытое окно если есть. Прописываем адресс к Имиджу  
  set $X FindImage (0 0 1600 1400 (D:\Games\Uo Tools\Scripts\Grepolis\X.bmp) %arr 2 80 1)
    if $X > 0
      set #X1 %arr[#1 1]
      set #Y1 %arr[#1 2]
          left #X1,#Y1
          wait 500
    end_if                


:Farm //Поиск деревни и фарм 5 минут. Прописываем адресс к Имиджу
set $f FindImage (0 0 1600 1400 (D:\Games\Uo Tools\Scripts\Grepolis\Flag.bmp) %arr 2 80 -1)
if $f > 0
  For #i 1 $f
  set #X %arr[#i 1] +22
  set #Y %arr[#i 2] + 40
    if #First = 1
      get color #color #X #Y
      set #First 0
    end_if
    if #X,#Y #color
      repeat 2
      left #X,#Y
      wait 100
    end_repeat
        call Farm
    end_if
    Continue  
  end_for
else
  goto NextCity
end_if

:Attack //Проверка на атаку. Прописываем адресс к Имиджу
if #Attack = 1
  set $a FindImage (0 0 1600 1400  (D:\Games\Uo Tools\Scripts\Grepolis\Attack.bmp) %arr 2 80 1)
    if $a = 0
      set #AttackOn #AttackOn + 1
      Alarm Attack.wav
    else
      set #Attack 1
    end_if
      if #AttackOn > 4
        set #Attack 0
        set #AttackOn 0
      end_if
end_if
      


:NextCity //Переход к следующему городу. Прописываем адресс к Имиджу
if #City > 1
set #Che 0
  set $c FindImage (0 0 1600 1400  (D:\Games\Uo Tools\Scripts\Grepolis\Next.bmp) %arr 2 80 1)
    if $c > 0  
      get color #color2 769, 537 //Координаты любой точки на карте(По центру на острове)
      get color #color3 200, 100 //Координаты любой точки на карте(Cлева от острова в начале карты)
          get color #color4 828, 884  //Координаты любой точки на карте(Под островом,внизу карты)
      set #X1 %arr[#1 1]
      set #Y1 %arr[#1 2]
          left #X1,#Y1
          wait 500
    else
      goto Reload
    end_if
      while 769, 537 #color2 and 200, 100 #color3 and 828, 884 #color4 //3 разных координата указанные выше. Вписываем к каждому цвету свои
          wait 200
          set #Che #Che + 1
             if #Che > 50
               set #Che 0
               goto reload
             end_if
       end_while
       set #Circ #Circ + 1
       wait 500      
else
  goto Wait
end_if  

:Wait //Ожидание готовности селений или пока пройдёт 1,5 минуты с окончания цикла. Прописываем адресс к Имиджу
if #Circ > #City
  set #Circ 1
    while timer < 80000    
      set $w FindImage (0 0 1600 1400 (D:\Games\Uo Tools\Scripts\Grepolis\Flag.bmp) %arr 2 80 -1)
      For #i 1 $w
         set #X %arr[#i 1] +22
         set #Y %arr[#i 2] + 40
           if #X,#Y #color
             set #Done #Done + 1
             Break      
           end_if
      end_for
         if #Done > 0
           set #Done 0
           goto Start
         end_if
           wait 5000                
    end_while
  set timer
end_if


//Процедура фарма.
proc Farm
set #Che 0
set $fm 0
while $fm = 0
//Нажатие кнопки фарма 5-ти минут. Прописываем адресс к Имиджу
  set $fm FindImage (0 0 1600 1400 (D:\Games\Uo Tools\Scripts\Grepolis\5m.bmp) %arr 2 60 1)
    set #Che #Che + 1
    wait 120
      if #Che > 25
        set #Che 0
        left 1, 1
        wait 500
        Break
      end_if  
end_while
    if $fm > 0
      set #X1 %arr[#1 1]
      set #Y1 %arr[#1 2] +65
          left #X1,#Y1
          wait 500      
    end_if    
//Закрыть окно фарма если осталось. Прописываем адресс к Имиджу    
  set $X FindImage (0 0 1600 1400 (D:\Games\Uo Tools\Scripts\Grepolis\X.bmp) %arr 2 80 1)
    if $X > 0
      set #X1 %arr[#1 1]
      set #Y1 %arr[#1 2]
          left #X1,#Y1
          wait 100
    end_if                
end_proc


goto Start
end_script


Сообщение отредактировал Fors1k - 14.6.2020, 1:18


Прикрепленные файлы
Прикрепленный файл  Grepolis_Image_Sound.zip ( 152,46 килобайт ) Кол-во скачиваний: 1250
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
AciD DrEaM
сообщение 21.5.2012, 0:23
Сообщение #2


**

Neophyte
Сообщений: 17
Регистрация: 28.3.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 14.807
Возраст: 27



Такс, пожалуй довёл скрипт до идеала. Работает без настроек на любом компе. Новый архив с имиджами
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
AciD DrEaM
сообщение 29.5.2012, 13:12
Сообщение #3


**

Neophyte
Сообщений: 17
Регистрация: 28.3.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 14.807
Возраст: 27



Добавил проверку на атаку и еще немного подредактировал весь процесс
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
AciD DrEaM
сообщение 3.6.2012, 22:00
Сообщение #4


**

Neophyte
Сообщений: 17
Регистрация: 28.3.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 14.807
Возраст: 27



Подскажите пожалуйста как настроить поиск имиджа под разные разрешения экрана?
Чтоб в начале скрипта брать максимальные координаты и вбивать их в поиск имиджа
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Zeleax
сообщение 3.6.2012, 22:03
Сообщение #5


*********

ex-Moderator UOPilot
Сообщений: 2.440
Регистрация: 8.10.2010
Группа: Пользователи
Наличность: 0
Из: Киев
Пользователь №: 13.093



http://uopilot.tati.pro/index.php?title=Get_windowpos


--------------------
Полезные советы - читать всем! UOWiki
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
AciD DrEaM
сообщение 26.6.2012, 23:20
Сообщение #6


**

Neophyte
Сообщений: 17
Регистрация: 28.3.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 14.807
Возраст: 27



Новый архив, подшаманенный скрипт.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
NSD
сообщение 20.9.2012, 20:07
Сообщение #7


*

Registred
Сообщений: 1
Регистрация: 20.9.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.304
Возраст: 30



поменял картинку с 5 минут на 10 минут( терь тыкает по 20 минут в чем может быть проблема?
кстати сам окно запущенное не определяет надо показать (но это не проблема)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Славян
сообщение 9.3.2013, 18:30
Сообщение #8


*

Registred
Сообщений: 1
Регистрация: 9.3.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.882
Возраст: 15



я не понял одного: как использовать скрипт? нужно ли что-нибудь для этого скачивать? я вообще первый раз сталкиваюсь со скриптами)) Куда его нужно вставлять?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 10.3.2013, 3:47
Сообщение #9


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



вставлять в пилот во вкладку скрипт... скачивать ну разве что илот, на форуме есть последняя версия.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Ollleg
сообщение 27.5.2013, 19:55
Сообщение #10


*

Registred
Сообщений: 1
Регистрация: 27.5.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 16.100
Возраст: 44



Буду очень признателен за детальную (пошаговую) инструкию установки скрипта. Я пробовал, но увы, что-то туплюс... (IMG:style_emoticons/default/sad.gif) Особенно не понял куда вставлять координаты, которе взял с карты. Да и там ли я их взял?... Заранее благодарен.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Zlodei
сообщение 31.7.2014, 13:41
Сообщение #11


*

Registred
Сообщений: 1
Регистрация: 31.7.2014
Группа: Пользователи
Наличность: 0
Пользователь №: 16.942
Возраст: 25



Иногда отваливается, как бы забывает щелкнуть левой кнопкой, города не переключает.... и для селений, эти координаты поточнее будут:
set #X %arr[#i 1] + 20
set #Y %arr[#i 2] + 28

на версии 2.34
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 28.3.2024, 21:42
Designed by Nickostyle