Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  • Не хотите БАН?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок
  • Загляните на торговую площадку

    Там вы можете купить
    Всё что касается игровых серверов
BorizzK

Запускальщик/рестартер с бэкапом логов, базы и настроек

Recommended Posts

Накатал по быстрому для себя и своих ребят от нефиг делать, тк в командировке и дейзить возможности нет, только удаленно ковырять сервер
Внутри настройки через переменные
путь к базе сервера и инстанс ид берет из конфига сервера (нужно настроить имя файла и путь в файле)
Мониторит сервер по названию окна, сохранив pid
При вылете в 90% случаев корректно убивает процесс
При перезапуске так же
При каждом старте с 0 и при перезапусках делает бэкапы баз/настроек/логов в папку !Backup в корне сервера

Можно настроть кол-во хранимых бэкпов для базы сервера и логов


Вобщем заглянете внутрь и все поймете

 

Вдруг кому пригодится

 

Закрепляю тут краний боевой вариант

Что к чему - прочтите всю тему и все станет ясно

 

Сцыл на стрницу темы с крайней версией заточенной на использование с версией 1.04 и параметром -servermod

 

Крайняя версия

 

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites



Улучшил немного

Было не оч красиво
1 Не было проверки есть сервер и конфиг в папке или нет

2 Теперь есть проверка на повторно запущенный скрипт из одной и той же папки (костыльно, но вполне по линуховому - через pid файл)
если уже запущен скрипт заново запущенный скрипт закрывается

 

Обновил файл
убрал одну проверку

не учел сначала что если серв запускается впервые то и папки storage нет и проверка бы не прошла

убрал ее

 

+ Как бы требуются еще усовершенствования

Доеду до дома доведу до ума

 

 

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites

Допилил скрипт

в одной виртуалке

неск серверов в одном сеансе
в скрипте меняю только порт

распознает

повторный запуск исключен в 99% случаев

если окно cmd закрыть ручками бывает cmd зависнет в памяти

и тогда в принципе распозает тк титл окна у зависшего cmd обнуляется

однако в памяти он всеравно остается (винда блиг, хотя подобные приколы стали и на линухе случаться с башем)

но такое бывает крайне редко

 

вобщем у меня и у коллег работает

 

буду считать финальным вариантом

 

Пользоваться не сложно

Поместить в корень с сервером

 

Внутрях поменять/прописать

 

  Версия сервера - при каждом обновлении придется менять посмотрев на версию в заголовке окна
  set "Version=1.0.150000"
  :::Имя экзешника
  set "SrvName=DayZServer_x64.exe"
  :::папка с конфигом/логами/профилем сераерв
  set "SrvConfPath=Instance_1"
  :::Имя файла с конфигом
  set "srvconfigfile=server.cfg"
  :::Порт сервера
  set "Port=2302"
  :::Список модов которые Вы указываете в параметрах для запуска в ключе -mod= - если папки с модами не обнаружены то переменная будет проигнорирована
  set "mods=mytestmod1,mytestmod2"

 

P.S. насколько я понял каждый мод это отдельная папка, верно?

 

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites

Дополнение
рекомендую добавить в реестр

 

reg add "HKLM\Software\Microsoft\Windows\Windows Error Reporting" /v "DontShowUI" /t REG_DWORD /d 1 /f

 

Ибо WER любит запрс про крашнуте приложение вывести и ждать Вашего ОК и все это время сервер будет считаться запущенным

 

Старый скрипт прибил

Доработанный выложу позже!

 

Всех с НГ!

 

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites

Всех с НГ

Допилил скрипт

К сожалению пришлось покостылить, тк виндовый шелл местами кривой, а я привык скриптить под линухом где все четко и по нормальному

В итоге от ENABLEDELAYEDEXPANSION пришлось отказаться по некоторым причинам

Вобщем получилось вполне работоспособно

 

Внутрях каменты на русском и английском

 

Кому надо тот разберется, а кто не разберется пишите вопросы и пожелания в этой теме

 

Кроме возможностей выше

гасит зависшие процессы дейза

если Вы вдруг закрыли окно скрипта а бек (если разрешен) и сервер дейз запущены

скрипт берет управление при запуске

Так же при запуске частично проверяет корректность настроек Bec, BE и самого сервера Dayz

 

Теперь добавлена возможность перезапуска и выключения через помещение файла restart или shutdown в корень папки
если файлы пустые то таймаут по умолчанию 2сек

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

я в своей чат-админке это реализовал

очень удобно

 

 

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites

Всё это хорошо и увлекательно, только вот зачем использовать сторонний проприетарный архиватор?

Share this post


Link to post
Share on other sites

Не на все моды реагирует почему то... а точнее стоит админка от "Томато" Так он пишет на нее Error типо не может найти хотя все прописал как в "параметрах запуска" И вообще пытался без нее прогрузить моды. Не цепляет он их почему то... хотя приблуда годная... моды бы только нормально цепляла... хотя может косяк у меня... 

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Edited by saikodelic (see edit history)

Share this post


Link to post
Share on other sites

А когда все запускаю без твоего батника все работает все функционирует на сервере... 

Share this post


Link to post
Share on other sites

saikodelic Хрен знает
Мод это отдельная папка или как?

Вижу что папки

Только на скрине не вижу ругагани

Каждый мод в папку

папка в списке

 

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites

Еще чуть допилил

перезагрузка сервера дейз и хост-машины инклюдед

гайд после того как допилю одминку

 

 

 

 

 

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites

Зафиналил скрипт

Работает нормально на нескольких боевых серверах

 

Ловит команды от моей админки (выложу в соответствующей теме чуть позже)

 

Внутри кучв каментов и основные на русском

 

все обсуждения тут, а не в личке

 

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites

BorizzK вот со строчками о сервере я и туплю, что да как там вписать) боюсь сломать)

Share this post


Link to post
Share on other sites

Два вопроса:

Что такое steamqueryport и почему не запускает bec?

Share this post


Link to post
Share on other sites

rNk1337 А бек в папке BEC в корне сервера?

А версия бека какая?

Чуть ниже спустись  к настройкам BEC

 

	::: BEC SETTINGS BEGIN
		::: Включение/отсключение BEC
		set "becenable=true"
		::: Имя файла сервера BEC
		set "BecSrvName=Bec.exe"
		::: Имя файла конфига сервера BEC
		set "becconfig=Config.cfg"
		::: Путь к BEC
		set "becpath=%SrvCd%\Bec"
	::: BEC SETTINGS END

 

и еще пусть к баттлай в конфиге бек
куда кажет?

 

содержимое файла конфига баттлай BEServer_x64.cfg

 

RConPassword пароль
RestrictRCon 0
RConPort 2303
RConIP 127.0.0.1

 

Такое?

 

Он там должен написать почему если все типа верно

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites

BorizzKпапка BEC в корне сервера, конфиг BEC находится в папке BEC/config а BEServer.cfg который с рконпассом находится в папке Battleye

Share this post


Link to post
Share on other sites

Папка с баттлай по умолчанию сервером создается и туда копируется библиотека в папку которая находится в папке указанной в парамтре -profile

 

Share this post


Link to post
Share on other sites
	::: DAYZ SERVER SETTINGS BEGIN
		::: Версию менять только на актуальную отображаемув в заголовке окна сервера !!!
		set "Version=1.0.150000"
		
		::: Имя файла сервера
		set "SrvName=DayZServer_x64.exe"
		
		::: Порт сервера
		set "Port=2303"
		
		::: Папка с конфигом сераера (не должна содержать нелатинские символы)
		set "SrvConfPath=!ConfigServer"
		
		::: Имя файла конфига сервера 
		set "SrvConFigfile=server.cfg"
		
		::: Папка профиля сервера, логи, временные файлы, библиотека баттлай для rcon и профиль сервера
		::: В ней лежат динамические настройки и файл с переменными профиля сервера который может хранить некоторые данные состояния мира и да же игроков когда либо подключавшихся к серверу !!!
		::: (не должна содержать нелатинские символы) (так же путь $profile: в серверных скриптах указывает на эту папку)
		::: на эту папку настроены функции отсылки сообщений restart shutdown и machinerestart в AdminTools
		::: Может отличаться от папки конфига сервера
		set "SrvProfilesPath=%SrvConfPath%"
		
		::: Должна быть = SrvProfilesPath (ВРОДЕ БЫ НЕ ИСПОЛЬЗУЕТСЯ)
		::: set "ServerUserPath=!ProfilesServer"
		
		::: Максимальное кол-во памяти сервера (Если сервер запускается 1: Для 16Gb RAM 12288, для 32Gb RAM - 12288 x 2, если 2 - Для 16Gb 7192, для 32Gb RAM - 7192 x 2)
		set "maxmem=12288"
		
		::: Максимальное кол-во используемых ядер процессора
		set "-cpuCount="
		
		::: Моды через запятую (как в параметре -mod=) (если папки с модом нет, оно будет проигнорированно)
		set "mods="
		
		::: Приритет при запуске по умолчанию /NORMAL (см параметры команды start)
		set "priority=/NORMAL"
		
		::: Доп Параметры для строки запуска сервера
		::: Имя сервера, на самом деле имя папки в %SrvProfilesPath%\Users и заголовка имени файлов с профилем сервера (не должна содержать нелатинские символы)
		set "ServerName=Server"
		::: Позволяет распакаовать scripts.pbo в корень папки сервера и использовать ее вместо scripts.pbo, соответственно можно вносить изменения в серверные скрипты
		set "-filepatching=-filepatching"
		::: Включает возможность записи в файлы из скриптов на стороне сервера
		set "-scrallowfilewrite=-scrallowfilewrite"
		set "-freezecheck=-freezecheck"
		set "-autoinit=-autoinit"
		set "-adminLog=-adminLog"
		set "-ShowScriptErrors=-ShowScriptErrors"
		set "-debugLog=-debugLog"
		set "-dologs=-dologs"
		set "-netlog="
		::: Строка параметров запуска сервера формируется ниже на основе параметров указанных в этой секции
	::: DAYZ SERVER SETTINGS END

	::: BEC SETTINGS BEGIN
		::: Включение/отсключение BEC
		set "becenable=true"
		::: Имя файла сервера BEC
		set "BecSrvName=Bec.exe"
		::: Имя файла конфига сервера BEC
		set "becconfig=Config.cfg"
		::: Путь к BEC
		set "becpath=%SrvCd%\Bec"
	::: BEC SETTINGS END

 

Share this post


Link to post
Share on other sites

Внимательно изучите параметры из скрипта выше
пути там указанны относительные

 

и вот конфиг моего BEC

 

#--------------------------------------------------------------------------------------------------------
[Bec]
#--------------------------------------------------------------------------------------------------------

# Set the ip to your server. normally 127.0.0.1 will be fine.
Ip = 127.0.0.1


# Set the port to the server. default port is 2302
Port = 2303


# Set the path to the BattlEye directory that is currently in use by the server.
BePath = D:\DAYZSERVER\DayZServer_1.0.150\!ConfigServer\BattlEye


# Set the path to your Admins.xml file containing your admins.
Admins = Admins.xml


# Set the path to your Commands.xml file.
Commands = Commands.xml

#Log directory
LogDir = .

 

Share this post


Link to post
Share on other sites

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

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Share this post


Link to post
Share on other sites

Явно пишет что конфиг не видит

у меня на всех видит

 

Share this post


Link to post
Share on other sites

Пройдитесь вниз скрипта и посмотрите как и что он проверяет

 

И прекращайте держать серваки в папке стима

выносите их оттуда - ибо любое обновление все потереть может нафиг

 

просто папку DayZServer копируете куда угодно и оттуда запускаете

ему пофиг на стим

 

 

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites

BorizzK Можно ваш BEC пожалуйста ну или его конфиг

Рестартер показывает что неправильно записан порт в Config.cfg BEC, хотя там все верно, какой порт сервера такой и порт BEC

 

Прошу меня извинить, кривой BEC мне попался вот и все...

 

Edited by rNk1337 (see edit history)

Share this post


Link to post
Share on other sites

Порт должен соответствовать порту дейза и порту в конфиге баттлай

хотя по идее просто порту баттлай

но у меня проверка по порту дейз

что наверное поменяю потом

 

Я так понял вопрос решен?

Edited by BorizzK (see edit history)

Share this post


Link to post
Share on other sites

BorizzK Спасибо за помощь на этом этапе решен. Все таки попытаюсь выпросить у Вас заведомо рабочий BEC, мой ни в кaкyю не хочет подключаться к серверу...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By BorizzK
      В эксперементалке 1.08 если сбросить предмет находясь на машине (крыше, багажнике, капоте в кузове) предмет проваливается сквозь машину на землю или оказывается в ее текстурах
       
      Тикет
      https://feedback.bistudio.com/T152071
       
      ответ богемии поразителен - сейчас нет простого решения
       
      А ниже что? Проще не бывает...
       
      Собственно код фикса (Автор Я)
       
      Code ``` modded class ItemBase extends InventoryItem { override void EEItemLocationChanged(notnull InventoryLocation oldLoc, notnull InventoryLocation newLoc) { super.EEItemLocationChanged(oldLoc,newLoc); if (newLoc.GetType() == InventoryLocationType.GROUND) { if (oldLoc.GetParent()) { PlayerBase player = PlayerBase.Cast(oldLoc.GetParent()); if (player) { FixPositionIfDropOnCar(player); } } } } void FixPositionIfDropOnCar(PlayerBase player) { vector m_RayStart; vector m_RayEnd; m_RayStart = player.GetPosition(); m_RayStart[1] = m_RayStart[1] + 0.5; m_RayEnd = m_RayStart; m_RayEnd[1] = m_RayEnd[1] - 1; RaycastRVParams m_RayCastInput = new RaycastRVParams(m_RayStart, m_RayEnd, this, 0.05); array<ref RaycastRVResult> m_RayCastResults = new array<ref RaycastRVResult>; m_RayCastInput.with = player; m_RayCastInput.flags = CollisionFlags.FIRSTCONTACT; if (DayZPhysics.RaycastRVProxy(m_RayCastInput, m_RayCastResults)) { if (m_RayCastResults.Count() > 0) { Car car; if (Class.CastTo(car, m_RayCastResults[0].obj) || Class.CastTo(car, m_RayCastResults[0].parent)) { this.SetPosition(m_RayCastResults[0].pos + (player.GetDirection() * 0.1)); } } } } } ``` Наверное имеет смысл чуть приподнять предмет над поверхностью, но необходимость этого зависит от типа предмета, потому не стал этого делать
       
      чуть откорректировал код
    • By BorizzK
      Довольно тупое охлаждение жратвы и кастрюли если они оказались на земле
      Прикрутить охлаждение содержимого кастрюли как 2 байта сами знаете что
      Сделать охлаждение после снятия с костра и тп вобщем то же не проблема
       
      Просто код и ничего лишнего
       
      Комментарии к коду добавлю позже
      Логгирование в коде закомментировано - раскомментируйте, что бы наблюдать за процессом
       
      Для жратвы убавление температуры раз в 10 сек на 1 градус
      Для кастрюли на 2 градуса
       
      Охлаждается до дневной температуры воздуха далее охлаждение прекращается
      У бгемотов есть 2 температуры воздуха - дневная и ночная
      Идиотизм? Однозначно
      Я пытался в погоде сделать ее плавное изменение в зависимости от Overcast, Rain и тп, но забил - потом как-нибудь
       
      Есть вопросы, задавайте, отвечу если будет время.
       
      Вобщем как-то так:
       
      //08.05.2020 modded class ItemBase extends InventoryItem { ref Timer m_TemperatureDecrease; private float m_InitTemperature; private float m_DecreaseTempTime = 10; private float m_TempDecreaseCoef = -1; void ItemBase() { m_InitTemperature = 12; //g_Game.GetMission().GetWorldData().GetDayTemperature(); // Не работает ((( какого художника - я хз if ( IsInherited(Pot) /* GetInventory().GetCargo() */ ) { m_TempDecreaseCoef = -2; } } override void AfterStoreLoad() { super.AfterStoreLoad(); if (!IsInherited(FireplaceBase)) TryToStartTempDecrease(); } private void TryToStartTempDecrease() { if (GetTemperature() > GetInitTemperature()) { if (!GetHierarchyParent()) { if (!m_TemperatureDecrease) { Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: Init: TryToStartTempDecrease: this: " + this + ": GetHierarchyParent(): " + GetHierarchyParent() + ": GetTemperature(): " + GetTemperature()); StartTemperatureDecrease(); } } } } override void EEItemLocationChanged(notnull InventoryLocation oldLoc, notnull InventoryLocation newLoc) { super.EEItemLocationChanged(oldLoc,newLoc); //Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: EEItemLocationChanged: this: " + this + ": newLoc.GetType(): " + newLoc.GetType() + ": newLoc.GetParent(): " + newLoc.GetParent() + ": GetTemperature(): " + GetTemperature()); if (GetTemperature() > GetInitTemperature()) { if (!newLoc.GetParent() || newLoc.GetType() == InventoryLocationType.GROUND) { if (!m_TemperatureDecrease) { Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: EEItemLocationChanged: this: " + this + ": Begin decrease temperature: GetTemperature(): " + GetTemperature()); StartTemperatureDecrease(); } } } else { if (m_TemperatureDecrease) { Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: EEItemLocationChanged: this: " + this + ": End decrease temperature: GetTemperature(): " + GetTemperature()); StopTemperatureDecrease(); } } } private void StartTemperatureDecrease() { m_TemperatureDecrease = new Timer( CALL_CATEGORY_SYSTEM ); m_TemperatureDecrease.Run(m_DecreaseTempTime, this, "DecreaseTemperature", NULL, true); } private void StopTemperatureDecrease() { m_TemperatureDecrease.Stop(); m_TemperatureDecrease = NULL; } void DecreaseTemperature() { if (GetTemperature() > GetInitTemperature()) { AddTemperature(GetTempDecreaseCoef()); if ( IsInherited(Pot) /* GetInventory().GetCargo() */) { DecreaseCargoTemperature(); } Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: DecreaseTemperature: this: " + this + ": Decrease: GetTemperature(): " + GetTemperature()); } else { SetTemperature(GetInitTemperature()); StopTemperatureDecrease(); Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: DecreaseTemperature: this: " + this + ": Stop decrease: GetTemperature(): " + GetTemperature()); } } void DecreaseCargoTemperature() { ItemBase item; int item_count = GetInventory().GetCargo().GetItemCount(); for (int i = 0; i < item_count; i++) { item = ItemBase.Cast(GetInventory().GetCargo().GetItem(i)); if (item) { if (item.GetTemperature() > item.GetInitTemperature()) { item.AddTemperature(item.GetTempDecreaseCoef()); Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: DecreaseCargoTemperature: this: " + this + ": Decrease: item: " + item + ": item.GetTemperature(): " + item.GetTemperature()); } else { item.SetTemperature(item.GetInitTemperature()); Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: DecreaseCargoTemperature: this: " + this + ": Stop decrease: item: " + item + ": item.GetTemperature(): " + item.GetTemperature()); } } } } float GetInitTemperature() { return m_InitTemperature; } float GetTempDecreaseCoef() { return m_TempDecreaseCoef; } } Немного переделал код
      Теперь охлаждается все если оно имеет Т выше 12, а если это кастрюля с содержимым, то и ее содержимое
      Получить Т воздуха в конструкторе не выходит потому указал руками
       
    • By DrTauren
      Что нам понадобится:
      1) Архив
      2) Notepad


      Инструкция:
      1) Качаем архив и копируем из него папку custom в вашу папку с миссией
      2) Открываем init.sqf и ищем такие строки:
      if (!isDedicated) then { 0 fadeSound 0; waitUntil {!isNil "dayz_loadScreenMsg"}; dayz_loadScreenMsg = (localize "STR_AUTHENTICATING"); _id = player addEventHandler ["Respawn", {_id = [] spawn player_death;}]; }; 3) Перед закрывающей скобкой }; прописываем это:
      _nil = [] execVM "custom\JAEM\EvacChopper_init.sqf"; 4) Выбираем одно из двух, выполняем действия указанные ниже:
      Если у вас нет своего variables.sqf в папке с миссией:  
       
      Если у вас есть свой variables.sqf в папке с миссией:  

      5) Копируем файлы remoteexec.txt, waypointcondition.txt, waypointstatement.txt в вашу папку с фильтрами BattlEye (\instance_11_Chernarus\BattlEye)

      Настройка параметров:
      Открываем файл EvacChopper_init.sqf (custom\JAEM\EvacChopper_init.sqf), находим нужную строку, редактируем по своему усмотрению:
      evac_chopperPrice = 3; Цена вашего спасения евреями. По умолчанию 3 Брифкейса
       
      evac_needRadio = 0; Обязательно ли радио для того, что бы вызвать хапуг? (0-не нужно, 1-таки извольте)
       
      evac_zoneMarker = 0; Дымовая граната на месте эвакуации (0-не надо, 1-таки не увидим мы без дыма)
       
      evac_minDistance = 500; Дословно: минимальное расстояние, что бы вызвать евреев. Меньше 500 не ставить!
    • By Serdce
      Ссылка на первоисточник - https://github.com/BrettNordin/Exile
      Я всего лишь перевёл
      Собственно переходим по ссылке, и скачиваем архив.
      Для тех, кто не знает как качать с хаба скрин 
      И так, едем дальше
      Скачанный архив распаковываем в удобное место для работы,
      Идём в ваш @ExileServer, там нас интересуют файлы - extDB2.dll , extDB2.so , extDB2-conf.ini , XM8.dll , XM8.so Удаляем эти файлы
      Далее идём в @ExileServer которую мы скачали, всё её содержимое копируем в аналогичную папку на сервере.
      Теперь идём в вашу MPmissions и там распаковываем вашу миссию "Exile.название карты",
      Туда мы копируем содержимое папки Exile.MapName из архива,
      Далее открываем ваш config.cpp и ищем там class CfgExileCustomCode 
      В него мы добавляем - #include "CfgExileCustomCode.cpp"
      Должно получится так
      Запаковываем обратно)
      Ну и теперь из архива мы копируем tbbmalloc.dll, tbbmalloc_x64.dll в папку расположения вашего Arma3_server.exe
      Не забываем поменять в вашем файле запуска сервера с arma3server.exe на arma3server_x64.exe 
      Ну и финишная прямая, открываем вашу базу данных ( желательно с название exile ) и добавляем файл Exile_Database_Update_64x.sql
      Далее настройте под себя ваш extdb3-conf.ini
       
    • By Astrahrom
      Столкнулся с цикличной проблемой в лаунчере, при установке ботов A3EAI:
      Script @epochhive\A3EAI_config.sqf not found Оказалось, что все дело в том, что в открытом доступе лежат старые версии этого скрипта, и все кто пытается воткнуть в Epochhive, как я, данный скрипт - делают это по старой схеме, не актуальной для последних версий.
       
      Решение
       
      Скачиваем - https://yadi.sk/d/HfXeB1pEAGoRtw
       
      Устанавливаем:
      1. Взять из папки архива "1. Installation Package" папку "@A3EAI" и вложить её в папку с вашим сервером;
      2. Прописать скрипт в вашем запускаторе, примерно так:
      -servermod=@EpochHive;@A3EAI; Пример моего запускатора:
      @echo off start "arma3" "arma3server.exe" -servermod=@EpochHive;@A3EAI; -mod=@Epoch; -config=C:\Arma3Server\sc\server.cfg -port=2307 -profiles=sc -cfg=C:\Arma3Server\sc\basic.cfg -name=sc -autoINIT Варианты настройки, которые хранятся в самой папке @A3EAI\addons\a3eai_config в файле config.cpp.
×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.