vitacite

Headless клиент для запуска миссий.

18 сообщений в этой теме

Привет всем.  Разберем, чего такое хеадлесс клиент и как с ним сосуществовать на примере миссий для сервера Arma-3

Итак:

Headless клиент, это штуковина встроенная в серверную часть Arma3, которая помогает серверу проводить расчеты для AI - другими словами повышает FPS:). Кол-во клиентов, указывается в файле server.cfg вашего сервера. А запускается клиент путем запуска сервера с параметром -client:) 

Фактически это дополнительный клиент, управляемый AI который будет подключаться к нашему серверу и рулить там миссиями.... снижая нагрузку на все остальное.

 

Давайте рассмотрим пример миссии HOG-а с dayz_epoch.com, как он реализовал свою миссию. Чуток подготовки:

 

1) Софт, который нам понадобится (если мы создаем миссию с нуля и ничего еще не редактировали).

- упаковщик распаковщик pbo - pbo manager

- утилита urap.exe для декомпилляции mission.sqm 

- notepad ++ для того чтобы редактировать mission.sqm (он очень критичен, к редакции).

C помощью их готовим папку к инсталляции, как это написано в моем гайде про разбин mpmission.sqmhttp://s-platoon.ru/index.php?/topic/2124-kak-razbinarit-missionsqf-v-arma3-epoch/

 

2) Теперь договоримся о следующем у меня сервер ARMA3 стоит в папке C:\ARMA3\ поэтому пути я буду указывать именно туда. Вам же необходимо будет исправить пути в тот каталог где у вас установлен сервер Arma3 (где у вас находится Arma3server.exe)

 

3) Скачиваем архив миссий HOG-а с его GitLib-а https://github.com/hogscraper/HOGS_AI (репозиторий активный и он его постоянно обновляет.) И распаковываем его куда-нибудь в укромное место :)

 

4) Идем в папку c:\Arma3\MpMission\Epoch.Altis\ и создаем там папку Hogs_AI в папке Custom должно получится 

C:\Arma3\MpMission\Epoch.Altis\Custom\Hogs_Ai\ в эту папку помещаем 5 файлов и скаченного архива находящихся в одноименной папке:

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

поднимаемся выше в папку  C:\Arma3\MpMission\Epoch.Altis\ и создаем пустой файл init.sqf (если у нас уже есть в нем, что-либо вставляем текст ниже в самый верх:

 

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

 

5) Во избежание сложностей в этом шаге используем строго notepad++ (либо FAR) 

открываем им наш разбинаренный mission.sqm  И создаем точку входа для нашего клиента. Ведь на сервер зайдет не живой игрок, а виртуальный.

Для этого: в файле mission.sqm в районе строки №33 находим 

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

этот параметр указывает кол-во подключений к нашему серверу (максимально есть точки спавна для 100 игроков по умолчанию).

и меняем этот параметр на 

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

6) Нажимаем сохранить, и спускаемся в этом же файле примерно до строчки 2034

там как раз заканчивается }; блок venchicle 99 номере... 

и вставляем туда еще одну точку спавна для нашего клиента...

 

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

Результат должен выглядеть примерно так:

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

Шаг № 6 тянем свои шаловливые ручки к файлу конфигурации ....у меня он находится в C:\Arma3\instance_epoch.Altis\server.cfg  хотя у многих он находится например в (C:\aRMA3\SC)

     Нам необходимо указать серверу что мы будем использовать headless клиент и что он будет к нему подключаться..

 

     Добавляем в файл:  где-то после MODT ""

 
          headlessClients[]={"127.0.0.1"};
          localClient[]={"127.0.0.1"}; 
 
   В моем случает запуск происходит на той же машине , что и сервер, но вполне можно сделать это вообще на другом компьютере или запустить      несколько         клиентов.... но у меня это так  :))
 
      Шаг № 7. Создаем мегабатник для запуска нашего клиента....
       
Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Код.

Примерно с таким содержимым .... как вы видите я запускаю BEC после запуска он ждет 5 секунд пока запустится сервер 

Сервер запускается и мы выдерживаем 20 секунд паузы, дожидаясь пока он прогрузится... (тайминг меняйте в зависимости от мощности вашего сервере)... после чего запускаем сервер повторно уже с значением -cleint позволяющий пускать headless клиента.

 
start arma3server.exe -client -connect=127.0.0.1 -mod="@epoch"

 

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

не забываем вернувшись в C:\ARMA3\MPMission\Epoch.Altis\description.ext изменить значение кол-ва игроков мы ведь добавили еще одного, виртуального... без этого запустится но в RPT найдете ошибку о несоответствии...


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

 

 

Ну собственно все :)))

 


У меня все работает :)))

Доп материалы:

 

https://github.com/hogscraper/A3_EPOCH_Headless_Client  - headless клиент файлы настройки

http://epochmod.com/forum/index.php?/topic/29541-a3-epoch-headless-clients-walkthrough-updateddec-22nd/ - обсуждение миссии на сайте epoch

https://community.bistudio.com/wiki/Arma_3_Headless_Clien - описание, как это работает от bistudio

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Забронировать рекламное место

Overhosting - хостинг игровых серверов


Почему-то не работает. Сделал все по инструкции. А у вас есть видео по этим миссиям? Как они хоть выглядят. Первый раз ставил по другому гайду, от разработчика, не заработали. По вашему гайду тоже не работает. У вас они работают? Где я мог ошибиться тогда? Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Почему-то не работает. Сделал все по инструкции. А у вас есть видео по этим миссиям? Как они хоть выглядят. Первый раз ставил по другому гайду, от разработчика, не заработали. По вашему гайду тоже не работает. У вас они работают? Где я мог ошибиться тогда? Спасибо.

Миссии можно увидеть на 31.25.29.147 в живую...  правда предыдущую версию... Не работает это не вариант. Что конкретно не работает? Вполне возможно, что дело в античите, который просто банит headless клиент. Проверьте фильтры BattleEye.

Проверьте все этапы. Все что вы должны сделать, это добавить в mission.sqm новую точку спавна корректно, с новым номером 100 и изменить общее число точек с 100 до 101. Добавить в конфиги сервера ip для запуска headless клиента и собственно саму миссии в ваш mpmission. 

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

У меня они руссифицированы, и распределены одна за другой по типу стандартных эвентов в эпоч на Arma2. Можете дернуть мои из mpmission 

у меня там все проще сделано, но основные этапы установки останутся те же...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Античит отключен. Фильтры на батлай не стоят вообще. Такое ощущение что клиент просто не подключается. В консоле HC клиента кроме что создан выделенный клиент еще что-то пишется?

 

C:\Arma3\MpMission\Epoch.Altis\Hogs_Ai\

здесь путь один...

 

execVm "custom\Hogs_AI\AI_Init.sqf"; sleep 1; execVm "custom\Hogs_AI\AI_Functions.sqf"; sleep 5; execVm "custom\Hogs_AI\Hogs_AI.sqf";

здесь уже через папку custom, так как правильно то? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

Античит отключен. Фильтры на батлай не стоят вообще. Такое ощущение что клиент просто не подключается. В консоле HC клиента кроме что создан выделенный клиент еще что-то пишется?

 

здесь путь один...

 

здесь уже через папку custom, так как правильно то? 

Пардон действительно опечатка. Через custom правильно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Шаг № 6 тянем свои шаловливые ручки к файлу конфигурации ....у меня он находится в C:\Arma3\instance_epoch.Altis\server.cfg

 

Ну вот не нашел я этого файла в папке instance_epoch.Altis  Понял что всесто него нужно открыть config.cfg. Но и там я не нашел:

 

 Добавляем в файл:  где-то после MODT""

 

Нельзя ли поподробнее?

Изменено пользователем Jek790

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Смотрится очень интересно. Но:

- на первой же миссии заспавнился Танк. Я как то пока ограничиваю своих игроков от использования боевой техники. В основном мирные играют.

- пришлось прописать в фильтры кучу записей чтоб меня пустило на сервер.

- боты агрятся как то непонятно. То ходят спотыкаясь об меня, то валят через долину.

- игрока подключившегося к серверу кикнуло за выстрел из оружия(но это опять таки вопрос в фильтрах).

Изменено пользователем Jek790

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Большинство миссий написаны (я думаю умышленно), таким образом, что там либо спавнится "опасная техника", либо багованные ящики. По крайней мере, то что выложено на dayzepoch.com. IMHO чтобы нельзя было их использвать по принципу copypaste. Поэтому заходим в конфиги и настариваем там все, как нравится именно нам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

касательно миссий HOG-a, скачанных по ссылке в 1м посте, все впринципе понятно, и ставятся и работают, но кто-нибудь, может подсказать, где в этих скриптах "МОЗГ" ботов.... я хоть убейте не пойму, что отвечает за поведение ботов в этих скриптах, а оно какраз кривое..

все остальное действительно настраивается без проблем, и техниках и лут и одежда...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как быть если сервер арендован и нет возможности создать параметво для запуска?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нашёл! В панели управления сервером, можно выставить параметры для запуска.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Миссии можно увидеть на 31.25.29.147 в живую...  правда предыдущую версию... Не работает это не вариант. Что конкретно не работает? Вполне возможно, что дело в античите, который просто банит headless клиент. Проверьте фильтры BattleEye.

Проверьте все этапы. Все что вы должны сделать, это добавить в mission.sqm новую точку спавна корректно, с новым номером 100 и изменить общее число точек с 100 до 101. Добавить в конфиги сервера ip для запуска headless клиента и собственно саму миссии в ваш mpmission. 

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

У меня они руссифицированы, и распределены одна за другой по типу стандартных эвентов в эпоч на Arma2. Можете дернуть мои из mpmission 

у меня там все проще сделано, но основные этапы установки останутся те же...

 

Мой HC стоит в спавнбоксе и умерает от голода периодически... а иногда просто сам процесс HCserver.exe завершается... но некоторые миссии не пропадают, и если запустить его по новой, миссии задваиваются... Как этого всего избежать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

  • Похожие публикации

    • Автор: dok379
      система zcp mission
      Боты почему то появляются голые и без оружие но с РПГ и портфелем. Как их настроить и добавить оружие?
    • Автор: DeD
      При заходе на сервер пишет "cannot load mission"
      ​Но миссия всё-равно загружается и можно играть
      ​Не понимаю с чем связано, в RPT ничего не увидел такого
    • Автор: Tiberian
      Добрый день всем. А может ночь. У кого как...
      Хочу создать станкового пулеметчика по скрипту:
       
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Код. В результате станок стоит, боец AI мертвый лежит рядом. РПТ выдает такую ошибку:
       
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Код. В чем может быть проблема? 
    • Автор: lucho003
      patrolpos  в  каком формате ее вписывать?
    • Автор: Anton555
      Всем доброго!
      Ребят, кто ставил этот мод? Я его скопировал в корень клиента, подключил как обычно в батнике. В редакторе он появляется, в режиме просмотра на колесе мыши тоже есть. При попытке включить нажатие кнопки Login ничего не дает. Что надо настроить?