Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

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

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

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

Таблица лидеров


Популярные публикации

Отображаются публикации с наибольшей репутацией на 04/29/16 во всех областях

  1. 1 балл
    vitacite

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

    Привет всем. Разберем, чего такое хеадлесс клиент и как с ним сосуществовать на примере миссий для сервера 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 файлов и скаченного архива находящихся в одноименной папке: AI_Functions.sqf AI_Init.sqf Hogs_AI.sqf Server_PVEH.sqf fn_fetchCfgDetails.sqf поднимаемся выше в папку C:\Arma3\MpMission\Epoch.Altis\ и создаем пустой файл init.sqf (если у нас уже есть в нем, что-либо вставляем текст ниже в самый верх: if(isserver) then{ execVM "custom\Hogs_AI\Server_PVEH.sqf"; }; //Only uses this code if the connecting client is not the server //and doesn't have an interface(our headless client) if (!hasInterface and !isServer) then { 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"; }; player enableFatigue false; "GlobalHint" addPublicVariableEventHandler { private ["_GHint"]; _GHint = _this select 1; hint parseText format["%1", _GHint]; }; 5) Во избежание сложностей в этом шаге используем строго notepad++ (либо FAR) открываем им наш разбинаренный mission.sqm И создаем точку входа для нашего клиента. Ведь на сервер зайдет не живой игрок, а виртуальный. Для этого: в файле mission.sqm в районе строки №33 находим items = 100; этот параметр указывает кол-во подключений к нашему серверу (максимально есть точки спавна для 100 игроков по умолчанию). и меняем этот параметр на items = 101; 6) Нажимаем сохранить, и спускаемся в этом же файле примерно до строчки 2034 там как раз заканчивается }; блок venchicle 99 номере... и вставляем туда еще одну точку спавна для нашего клиента... class Item100 { side="LOGIC"; class Vehicles { items=1; class Item0 { position[]={14093.1, 10.4375, 11552.1}; id=100; side="LOGIC"; vehicle="HeadlessClient_F"; player="PLAY CDG"; leader=1; skill=0.60000002; text="MissionBuddy"; }; }; }; Результат должен выглядеть примерно так: ....... class Groups { items = 101; class Item0 { side = CIV; class Vehicles { items = 1; class Item0 { position[] = {23598.1, 3.19, 17997.1}; azimut = 136.241; special = NONE; id = 0; side = CIV; vehicle = "VirtualMan_EPOCH"; player = "PLAY CDG"; leader = 1; skill = 0.6; }; }; }; ---> повторяющийся код до № 99 вырезан.... class Item99 { side = CIV; class Vehicles { items = 1; class Item0 { position[] = {23605.1, 3.19, 17998.1}; azimut = 130.016; special = NONE; id = 99; side = CIV; vehicle = "VirtualMan_EPOCH"; player = "PLAY CDG"; leader = 1; skill = 0.6; }; }; }; class Item100 { side="LOGIC"; class Vehicles { items=1; class Item0 { position[]={14093.1, 10.4375, 11552.1}; id=100; side="LOGIC"; vehicle="HeadlessClient_F"; player="PLAY CDG"; leader=1; skill=0.60000002; text="MissionBuddy"; }; }; }; }; // <----- эта скобка закрывает весь блок Vehicles class Sensors { // <--- начало блока vechcles Нам необходимо указать серверу что мы будем использовать headless клиент и что он будет к нему подключаться.. Добавляем в файл: где-то после MODT "" headlessClients[]={"127.0.0.1"}; localClient[]={"127.0.0.1"}; В моем случает запуск происходит на той же машине , что и сервер, но вполне можно сделать это вообще на другом компьютере или запустить несколько клиентов.... но у меня это так :)) Шаг № 7. Создаем мегабатник для запуска нашего клиента.... echo STARTING NEW EPOCH BEC SERVER PLEASE WAIT cd C:\Arma3\instance_epoch.Altis\bec start Bec.exe -f Config.cfg –dsc timeout 5 echo STARTING NEW EPOCH SERVER PLEASE WAIT cd C:\Arma3\ start arma3server.exe -mod=@epoch -port=2302 -noSound -nosplash -nopause -enableHT -cpuCount=16 -exThreads=15 -maxmem=6144 -config=instance_epoch.Altis\server.cfg -cfg=instance_epoch.Altis\basic.cfg -profiles=instance_epoch.Altis -name=instance_epoch.Altis -mod=@Epoch;@EpochHive; timeout 20 start arma3server.exe -client -connect=127.0.0.1 -mod="@epoch" timeout 5 Примерно с таким содержимым .... как вы видите я запускаю BEC после запуска он ждет 5 секунд пока запустится сервер Сервер запускается и мы выдерживаем 20 секунд паузы, дожидаясь пока он прогрузится... (тайминг меняйте в зависимости от мощности вашего сервере)... после чего запускаем сервер повторно уже с значением -cleint позволяющий пускать headless клиента. start arma3server.exe -client -connect=127.0.0.1 -mod="@epoch" Шаг № 7. не забываем вернувшись в C:\ARMA3\MPMission\Epoch.Altis\description.ext изменить значение кол-ва игроков мы ведь добавили еще одного, виртуального... без этого запустится но в RPT найдете ошибку о несоответствии... minPlayers = 1; maxPlayers = 101; Ну собственно все :))) У меня все работает :))) Доп материалы: 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
  2. 1 балл
    Stark

    Координаты техники

    Здравствуйте. В классе whitelistedVehiclePos есть подобные строки: B_MRAP_01_EPOCH[] = {{{20848.6,7354.6,-0.00321198},{{0.742712,0.669594,-0.00486337},{-0.0281729,0.0385042,0.998861}}} Первая координата понятна.Что означают 2 других(если это тоже координаты,то чего) и как их получить?
  3. 1 балл
    Atavis

    Настройка смены погоды

    Что вам мешает вернуть этот параметр.
  4. 1 балл
    Teacher

    Черный рынок(Барыга)

    Разницу регулируешь в HSPricing.hpp Пример : class B_APC_Wheeled_01_cannon_F {price = 10000; tax = 1; }; Где 1. B_APC_Wheeled_01_cannon_F - класснейм (в данном случае бтр) 2. price = 10000 - цена по которой будет продаваться (выставляешь любую сам) 3. tax = 1 - А вот это как раз то, что тебе нужно, это налог! в данном случае он составит 1=100%, 10=1000% и т.д. т.е. в итоге мы получим следующую схему: price = 10000 (цена которою мы выставляем) x на 10% (налог сервера), далее x цена на 100%ый налог (tax = 1) Получаем 10000+1000+10000=21000 окончательная цена которую заплатит игрок, цена продажи соответственно - price = 10000 Надеюсь объяснил понятно!)) файл init.sqf в папке trader А вот кто знает как отключить, действие лечение шприцем (в простонародье шырялово)))) персонажа после покупки, а то раздражает!
×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.

Поддержка