Guild Storage users
#2
Guild Storage users
На нашем сервере доступны команды @storage и @gstorage
Эти команды позволяют открыть хранилища в любом месте, без использования НПЦ.
@storage – открывает обычную кафру для аккаунта
@gstorage – открывает хранилище гильдии – таким образом можно организовать Рой ботов OpenKore, которые будут нон-стоп обмениваться лутом.
Т.е. один бот может проверять наличие расходников и пополнять по необходимости, другой бот может использовать лут в производстве, а все остальные, как в муравейнике – стягивать всё что им дропнуло.
Только в этой схеме есть одна большая проблема: Guild Storage – это однопользовательский ящик. Когда один открыл его, то остальные начинают ожидать окончания транзакции. И в этом случае возникает конкуренция. Что бы минимизировать возможные задержки, я меняю параметры OpenKore, но если в разных сообщениях увидите, что я привожу разные значения какого-либо параметра, то доверяйте более позднему сообщению!
 
Макросы для Роя я разместил в нашем репозитарии кода:
https://github.com/uaOpenKore/uOKfiles/t...ros/GSuser
 
 
macros/GSuser/macro-gstorage.txt
Code:
automacro _GStorage {
  timeout 2
  inventory "Meat" < 11, "Butterfly Wing" < 2, "Fly Wing" < 3, "Awakening Potion" < 2, "White Potion" < 3, "Blue Potion" < 3
  call {
    do autostorage
   }
 }

Этот макрос заставляет пополнить инвентарь необходимым расходником, который быстро заканчивается. Таким образом пример избыточен, в нем необходим только Мясо, Вайт Пот и Блу Пот. Остальное будет перегружать макрос – адоптируйте под себя
 
Code:
automacro _GS_close {
  timeout 60
  call {
   do storage close
  }
 }

Этот макрос необходим на случай, если OpenKore не закрыла хранилище! Бывают лаги, то остальные боты залипают и не могут работать дальше
 
macros/GSuser/macro-allToTown.txt
Code:
automacro _allToTown {
 hp < 33%
 timeout 60
 call {
   do bus all tele 2
   pause 3
   do bus all tele 2
  }
 }

Макрос заставляет всех членов пати вернутся в Таун – используйте для защиты чаров от потери экспы.
 
macros/GSuser/macro-idied.txt
Code:
#macro work only with busCommand plugin!
automacro _GSidied {
  timeout 60
  status dead
  call {
    do bus all tele 2
   }
 }

Этот макрос предназначен для ботов в пати, требуется плагин busCommand. Если чар умер, то марос отдаст команду телепортироваться в таун всем членам пати.
 
macros/GSuser/macro-aLoot.txt
Code:
automacro autoLoot {
  console /You are now in the game/
  timeout 600
  delay 4
  call {
    do c @autoloot
   }
 }

Макрос включает @autoloot у бота
 
macros/GSuser/example-oneStep.txt
Это сложный макрос, который заставляет бота пошагать. В том случае, если его координаты не меняются заданное время. Защита от непонятных заглючиваний.
(Очень бедные возможности макрос-языка у OpenKore, по этому приходится иногода сильно усложнять.)
 
Code:
doCommand macro _oneStep {
  notOnAction attack, sitAuto, move, mapRoute, follow
#  notInTown 1
  notWhileSitting 1
  whenFollowing 0
  timeout 60
 }

Этот код нужно разместить в config.txt – здесь описаны условия запуска «шагающего» макроса.
 
Code:
automacro _var_oldStp {
 var oldStp unset
 timeout 500
 call {
  $oldStp = 0
 }
}

Этот автомакрос срабатывает только при запуске OpenKore, для того, чтобы задать параметр шага.
 
Code:
macro _oneStep {
   if ( $oldPos == $.pos ) {
     if ($oldStp == 0 ) {
       do north
       do north
       $oldStp = 1
      }
   if ($oldStp == 1 ) {
       do west
       do west
       $oldStp = 2
      }
   if ($oldStp == 2 ) {
       do south
       do south
       $oldStp = 3
      }
    if ($oldStp == 3 ) {
       do east
       do east
       $oldStp = 0
      }
    }
   $oldPos = $.pos
}

Сам макрос заставляет бота ходить по квадрату. На случай, если проход ограничен, то бот должен выйти в какуюнибудь сторону.
Reply


Messages In This Thread
Guild Storage users - by Sergio - 10-05-2024, 08:55 PM
RE: Guild Storage users - by Sergio - 10-05-2024, 08:57 PM
RE: Guild Storage users - by Sergio - 10-05-2024, 09:15 PM

Forum Jump:

Vote for me: #1 #2 #3 #4 #5 #6 #7 #8 !