Перейти к содержанию
  • Авторизация  

    Руководство по созданию игрового сервера S.T.A.L.K.E.R.


    admin
    Создание командного файла (он же батник, он же ярлык, он же файл сценария) для запуска выделенного сервера S.T.A.L.K.E.R. Тени Чернобыля (ТЧ) и Чистое небо (ЧН).

    Синтаксис командного файла для ТЧ и ЧН одинаков, но имеются небольшие различия, которые будут указаны.

    Командный файл это простой текстовый файл с любым именем и расширением *.CMD, который должен находиться в каталоге установки игры в папке \bin\, например:

    E:\Program Files\GSC World Publishing\STALKER\bin\myserver.cmd

    Создается с помощью системного блокнота, который можно вызвать из меню Пуск>Стандартные или меню Пуск>Выполнить>notepad. При сохранении файла важно обратить внимание на кодировку, это такой выпадающий список в окне сохранения файла под именем файла, нужно выбрать ANSI. В дальнейшем для редактирования командного файла щелкните по нему правой кнопкой мыши выберите «Изменить» или открыть с помощью Блокнота. При двойном клике по файлу будет выполняться сценарий. Для тех у кого имя сервера на русском языке отображается некорректно рекомендуется создавать сценарий в текстовом редакторе Bred3 и сохранять в нем в кодировке OEM.

    Сценарий в командном файле выглядит примерно так:

    dedicated\xrEngine.exe -i -nosound -silent_error_mode -fsltx ..\fsgame.ltx -ltx user.ltx -start server(mp_agroprom/dm/ver=1.0/параметр1=значение1/параметр2=значение2/параметр..n=значение..n) client(localhost)

    Строка сценария может быть очень длинной. Нельзя в Блокноте разделять код сценария на несколько строк.

    Разберем по порядку:

    • dedicated\xrEngine.exe – относительный путь к исполняемому файлу сервера ЧН
    • dedicated\XR_3DA.exe – относительный путь к исполняемому файлу сервера ТЧ
    • -i – отменяет захват устройств ввода. Без этого параметра не будет работать мышь.
    • -nosound - отключение проигрывания звука на сервере.
    • -silent_error_mode – отключает окно сообщения об ошибке при вылете сервера, рекомендуется для сервера с автоперезапуском. В некоторых случаях при отсутствии этого параметра сервер не будет перезапущен, пока вы сами не закроете окно с сообщением об ошибке. Также рекомендуется отключить различных отладчиков, отправку отчетов в Microsoft и т.п.

    Параметры: -fsltx ..\fsgame.ltx -ltx user.ltx имеют некоторую зависимость друг от друга, и очень важно их правильно настроить.

    -fsltx - это параметр, ..\fsgame.ltx - значение этого параметра, -ltx - параметр, user.ltx - значение.

    Примечание: все файлы с расширением *.ltx являются простыми текстовыми файлами и открываются и редактируются с помощью Блокнота. 

     

    Подробнее об -fsltx ..\fsgame.ltx:

    Синтаксис:

    -fsltx ..\myserverfs.ltx в ЧН ЗП
    
    -fsltx myserverfs.ltx  в ТЧ

    Сервер при своей работе производит чтение и запись параметров из различных файлов конфигурации, которые находятся на "путях поддержки". В данном случае путями поддержки для серверов S.T.A.L.K.E.R. являются папки в которых хранятся банлисты, мапциклы, скриншоты и конфиги, сохранения одиночной игры, логи итп. По умолчанию эти папки находятся в:

    Общие документы\STALKER-SHOC

    Общие документы\STALKER-STCS

    Общие документы\S.T.A.L.K.E.R. - Зов Припяти

    Настройка путей поддержки важна для запуска нескольких серверов, использующих различные списки смены карт (мапцикл) и банлисты. Тем не менее, если у вас всего один сервер, либо все серверы используют один и тот же банлист и мапцикл - следует настроить один путь поддержки, отличающийся от пути по умолчанию.

    В параметре -fsltx нужно указать значение, которое является относительным путем к файлу fsgame.ltx, который находится в каталоге установки игры. Весь путь указывать не нужно, только имя файла. В папке установки игры найдите файл fsgame.ltx, создайте его копию, переименуйте её и укажите измененное имя копии в строке сценария.

    Например:

    -fsltx ..\myserverfs.ltx
    Далее все файлы, являющиеся переименованными копиями fsgame.ltx, будем называть просто fsgame, независимо от того, как вы назовете файл и сколько копий будете использовать.

    Чтобы настроить путь поддержки для сервера, открываем свой fsgame. В первой строке вы увидите:

    $app_data_root$=true|false|C:\Users\Public\Documents\STALKER-STCS\

    Как видно, в этой строке указан путь к папке, которая и является путем поддержки по умолчанию. Желательно этот путь поменять.

    Например:

    $app_data_root$=true|false|D:\myservers\myserverDM\

    В конце пути обязательно должна быть косая черта

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

    Если вы собираетесь запускать несколько серверов, которые будут использовать разные мапциклы и банлисты - так же создайте новый fsgame и пропишите в нем другую app_data, а в командных сценариях для запуска этих серверов в параметрах -fsltx впишите свой fsgame. Вы получите выделенные fsgame и app_data для каждого сервера.

    Если вы запускаете несколько серверов, которые будут использовать общие мапцикл и банлист, вам достаточно создать один fsgame для всех серверов.

    Есть еще один способ изменения app_data для сервера, отличный от предыдущего. При этом не нужно создавать копии fsgame и менять -fsltx ..\fsgame.ltx. Здесь используется дополнительный параметр -overlaypath, в значении которого нужно просто указать путь к app_data сервера.

    Например:

    -fsltx ..\fsgame.ltx -overlaypath D:\myservers\myserverDM\

    В конце пути обязательно должна быть косая черта

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

    Например:

    -overlaypath "D:\my servers\my server DM\"

    Вы также можете заменить пробелы символом подчеркивания (_)

    Параметр -overlaypath имеет более высокий приоритет подмены app_data. Это значит, что если вы используете этот параметр, уже не важно, какой fsgame вы используете и какой в нем путь к app_data.

    Подменять app_data параметром -overlaypath намного проще, но иногда по непонятным причинам этот параметр не работает и сервер падает сразу при запуске. В этой ситуации используйте подмену через fsgame.

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

    Подробнее об -ltx user.ltx:

    Основные настройки одиночной игры и сервера хранятся в файле user.ltx, который находится в app_data. Параметр -ltx указывает серверу имя файла, который будет использоваться вместо user.ltx. Имя файла - любое, набранное латинскими буквами и не содержащее пробелов, например:

    -ltx myserverDM.ltx

    Далее файл, указанный в параметре -ltx будет иметь условное имя LTX, независимо от того, как вы его назовете.

    Если несколько серверов используют одну app_data, для каждого сервера нужно указать различные имена файла LTX. Имя файла не имеет значения, если серверы используют разные app_data.

    Сам файл ltx в app_data создавать  необязательно; если вы запустите сервер с пустой app_data, то в этот файл будут скопированы команды из оригинального user.ltx, который лежит в папке, указанной в оригинальном fsgame.ltx. В принципе, нет необходимости вписывать команды в LTX, так как все необходимые параметры и настройки игры указываются в командном сценарии, хотя некоторые необязательные параметры читаются только из LTX. В LTX нельзя указывать некоторые функциональные команды консоли, такие как бан, кик, смена карты погоды, отмена голосования и т.п.

    Зачем такие сложности?

    Как говорилось выше, это нужно для серверов, использующих разные мапциклы и банлисты. Также замена app_data и LTX для сервера частично решает проблему подключения себя к своему серверу. Это связано с тем, что сама игра тоже использует файлы и параметры из оригинальной app_data, путь к которой указан в оригинальном fsgame.ltx и производит чтение параметров из user.ltx. В любом случае, вы можете не менять app_data, но LTX желательно сменить.

    Первая часть командного файла рассмотрена.

    Она может выглядеть так:

    dedicated\xrEngine.exe -i -nosound -silent_error_mode -fsltx ..\myserverfs.ltx -ltx myserverDM.ltx

    или так:

    dedicated\xrEngine.exe -i -nosound -silent_error_mode -fsltx ..\fsgame.ltx -overlaypath D:\myservers\myserverDM\ -ltx myserverDM.ltx

    В следующей части командного файла прописаны параметры и настройки самой игры и сетевые параметры сервера. А если быть более точным, то эти параметры являются аналогами настроек запуска сервера из интерфейса игры.

    Строка командного файла в этой части выглядит примерно таким образом:

    -start server(mp_agroprom/dm/ver=1.0/параметр1=значение1/параметр2=значение2/параметр..n=значение..n) client(localhost)

    Все по порядку:

    -start server – запускает сервер. Настроек и значений не имеет.

    Первые параметры в скобках для ЧН и ТЧ различны. Они соответствуют параметрам вкладки Сервер интерфейса запуска сервера через игру.

    Рассмотрим параметры для S.T.A.L.K.E.R. Чистое небо и Зов Припяти:

    mp_agroprom – начальная карта при первом запуске сервера. Не имеет значений, так как параметр сам является еще и значением.

    Карты S.T.A.L.K.E.R. Чистое небо и Зов Припяти, поставляемые на установочных дисках

    mp_agroprom – Завод «Агропром»

    mp_atp - АТП

    mp_autostation - Автостанция

    mp_bath – Бассейн (большой)

    mp_darkvalley – Темная долина

    mp_factory -  Завод «Янтарь»

    mp_firestation – Пожарная станция

    mp_garbage - Свалка

    mp_limansk - Лиманск

    mp_lost_village – Заброшенная деревня

    mp_military_1 – Военные склады (только ЧН)

    mp_military_2 – Старая деревня (только ЧН)

    mp_pool – Бассейн (маленький)

    mp_railroad – Ж/Д станция

    mp_rembasa – Ремонтная база

    mp_rostok – Завод «Росток»

    mp_sport_center – Спортивный центр

    mp_training_camp – Тренировочный лагерь (только ЧН)

    mp_workshop – Заброшенная фабрика

    mp_pripyat - Припять (только ЗП)


    dm – тип игры. Так же как и карта является значением.

    Допуситые значения:

    dm – Все против всех

    tdm – Команда пртив команды

    ah – Охота за артефактом

    cta – Захват артефакта

    ver=1.0 – просто ver=1.0. Указывается только в ЧН и ЗП.

    Примеры:

     
    -start server(mp_agroprom/dm/ver=1.0/
    
    -start server(mp_rembasa/tdm/ver=1.0/
    
    -start server(mp_pool/ah/ver=1.0/
    
    -start server(mp_limansk/cta/ver=1.0/
    
    

     

    Параметры для S.T.A.L.K.E.R. Тени Чернобыля:

    (testers_mp_agroprom/deathmatch

    testers_mp_agroprom – начальная карта.

    Названия карт, поставляемых на установочном диске:

    Карты S.T.A.L.K.E.R. Тени Чернобыля, поставляемые на установочных дисках

    testers_mp_agroprom – Завод «Агропром»

    testers_mp_atp - АТП

    testers_mp_darkvalley – Темная долина

    testers_mp_factory -  Завод «Янтарь»

    testers_mp_lost_village – Покинутая деревня

    testers_mp_military_1 - Военные склады

    testers_mp_pool - Бассейн

    testers_mp_railroad - Ж/Д станция

    testers_mp_rostok - Завод «Росток»

    testers_mp_workshop – Брошенная фабрика

    mp_military_2 - mp_military_2

    deathmatch – режим игры.

    Допустимые режимы:

    deathmatch – Все против всех
    teamdeathmatch – Команда против команды
    artefacthunt – Охота за артефактом

    Примеры:

    -start server(testers_mp_agroprom/deathmatch
    
    -start server(testers_mp_pool/teamdeathmatch
    
    -start server(testers_mp_railroad/artefacthunt
    
    

    Чтобы организовать мапцикл (смена карт после окончания матча) нужно создать в папке app_data сервера текстовый файл maprot_list.ltx и в нем прописать карты в той последовательности, в которой они будут автоматически меняться по окончании матча.

    Содержимое файла maprot_list.ltx с полным списком карт мапцикла для S.T.A.L.K.E.R. Чистое небо и Зов Припяти,, поставляемых на установочном диске:

    sv_addmap mp_agroprom/ver=1.0
    
    sv_addmap mp_atp/ver=1.0
    
    sv_addmap mp_autostation/ver=1.0
    
    sv_addmap mp_bath/ver=1.0
    
    sv_addmap mp_darkvalley/ver=1.0
    
    sv_addmap mp_factory/ver=1.0
    
    sv_addmap mp_firestation/ver=1.0
    
    sv_addmap mp_garbage/ver=1.0
    
    sv_addmap mp_limansk/ver=1.0
    
    sv_addmap mp_lost_village/ver=1.0
    
    sv_addmap mp_military_1/ver=1.0 (только ЧН)
    
    sv_addmap mp_military_2/ver=1.0 (только ЧН)
    
    sv_addmap mp_pool/ver=1.0
    
    sv_addmap mp_railroad/ver=1.0
    
    sv_addmap mp_rembasa/ver=1.0
    
    sv_addmap mp_rostok/ver=1.0
    
    sv_addmap mp_sport_center/ver=1.0
    
    sv_addmap mp_training_camp/ver=1.0
    
    sv_addmap mp_workshop/ver=1.0
    
    sv_addmap mp_pripyat/ver=1.0 (только ЗП)
    
    

     

     

    Содержимое файла maprot_list.ltx с полным списком карт мапцикла для ТЧ, поставляемых на установочном диске:
    sv_addmap testers_mp_agroprom
    
    sv_addmap testers_mp_atp
    
    sv_addmap testers_mp_darkvalley
    
    sv_addmap testers_mp_factory
    
    sv_addmap testers_mp_lost_village
    
    sv_addmap testers_mp_military_1
    
    sv_addmap testers_mp_pool
    
    sv_addmap testers_mp_railroad
    
    sv_addmap testers_mp_rostok
    
    sv_addmap testers_mp_workshop
    
    sv_addmap mp_military_2
    
    

     

    Карты в maprot_list.ltx можно прописывать в любой последовательности и в любом количестве, также допускается повторно прописывать одну и ту же карту.

    Если в папке app_data отсутствует maprot_list.ltx, то мапцикла на сервере не будет, но игроки смогут переключаться на другие карты голосованием.

    Если несколько серверов используют одну app_data, то соответственно они смогут использовать только один на всех мапцикл.

    Чтобы особо не мучиться с прописыванием карт в maprot_list.ltx, создайте сервер через игровой интерфейс, на вкладке сервер укажите нужные вам карты и запустите сервер. В оригинальной app_data найдите maprot_list.ltx и скопируйте его в app_data своего сервера. Выключите сервер, запущенный через интерфейс игры.

    Чтобы узнать имя нестандартной карты, которое нужно прописать в сценарии, так же создайте сервер через игру и найдите это имя в maprot_list.ltx



    Большинство следующих параметров командного файла соответствуют тем параметрам, которые находятся на вкладке Опции интерфейса запуска.

    Они имеют следующий синтаксис:

    /параметр1=значение1/параметр2=значение2/параметр..n=значение..n

    Значения этих параметров дублируются в файле LTX. Значения прописанные в командном файле имеют более высокий приоритет чем значения в LTX, если они различны.

    Каждый режим игры имеет свои специфические параметры.

    Рассмотрим эти параметры:

    Общие параметры для всех типов игры:

    (в колонке Параметр в скобках указан аналог консольной команды)

    Параметр Описание Значения Примечание

    hname

     

    Имя сервера Например: /hname=My Server/  
    maxplayers Максимальное количество игроков на сервере 2-32  
    psw Пароль для входа на сервер Необязательный  
    public   0 - Сервер в локальной сети Не будет отображаться в мастер листе
    1 - Интернет сервер Будет отображаться в мастер листе
    portsv Номер порта сервера 1-65535 Эти три параметра решают проблему выпадения сервера из мастер-листа, при подключении самого себя к серверу.

    Более подробная информация дана ниже.

    portgs Порт GameSpy 1-65535
    portcl Порт клиента. Прописывается в самом конце сценария. 1-65535
    battleye Античит 1-включен Работает, если public=1
    0-выключен

    estime

    (sv_setnvtime)

    Начальное время суток в игре. 00:00-23:59

    От времени суток зависит погода

    Ясная

    9:00

    Облачная

    13:00

    Дождь 16:00
    Ночь 01:00
    etimef Скорость изменения погоды 0.0-100.0 Десятичное число с одним знаком после точки. Оптимальное значение 1.0

    ans

    (sv_anomalies_enabled)

    Аномалии 0-выключены  
    1-включены

    anslen

    (sv_anomalies_length)

    Период работы аномалий 0-бесконечные  
    1-180 - время в минутах

    pdahunt

    (sv_pda_hunt)

    +100р за поднятый рюкзак 0-нет  
    1-да

    warmup

    (sv_warm_up)

    Разогрев 0-выключен  
    1-3600 - время в секундах

    timelimit

    (sv_timelimit)

    Время матча 0-бесконечный  
    1-180 - время в минутах

    dmgblock

    (sv_dmgblocktime)

    Время неуязвимости после рождения 0-отключено  
    1-600 время секундах

    dmbi

    (sv_dmgblockindicator)

    Индикатор неуязвимости 0-выключен  
    1-включен
    fraglimit Лимит фрагов 0-бесконечные Используется только для режимов DM и TDM
    1-100

    spectrmds

    (sv_spectr_firsteye
    sv_spectr_freefly
    sv_spectr_freelook
    sv_spectr_lookat
    sv_spectr_teamcamera)

    Настройка режимов наблюдения

    Бит

    Значение

    Сумма битовых флагов. Подробнее
    1 Свободный полет
    2 От 1 лица
    4 Свободно привязанный
    8 От 3 лица
    16 Только для команды
    0 Все выключены

    vote

    (sv_vote_enabled)

    Включение определенных пунктов голосования

    Бит

    Значение

    Сумма битовых флагов. 

    Аналог: команда консоли  SV_VOTE_ENABLED

    0 Все выключены
    1 Все включены
    2 Рестарт
    4 Быстрый рестарт
    8 Выбросить
    16 Заблокировать
    32 Изменить карту
    64 Изменить погоду
    128 Режим

    frcrspwn

    (sv_forcerespawn)

    Принудительное рождение 0-выключено

    Для DM и TDM

    1-3600-время в секундах. Не забывайте что иногда игрокам нужно зайти в магазин

     

    Общие настройки всех командных режимов:

    Параметр Описание Значения Примечание

    abalance

    (sv_auto_team_balance)

    Автобаланс команд 0-выключен

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

    1-включен

    aswap

    (sv_auto_team_swap)

    Автосмена команд 0-выключен После окончания матча игроки автоматически меняются командами
    1-включен

    fi

    (sv_friendly_indicators)

    Иконка над головами игроков своей команды 0-выключен  
    1-включен

    fn

    (sv_friendly_names)

    Имена над головами игроков своей команды 0 - только тогда, когда клавиша CapsLock нажата  
    1 - Caps Lock действует как переключатель

    ffire

    (sv_friendlyfire)

    Коэффициент повреждения, наносимого игроками одной команды друг другу. 0.0-2.0 1.0 = 100%, 2.0 = 200%

    Настройки только для режимов AH и CTA:

    Параметр Описание Значения Примечание
    anum Количество артефактов 1-100  

    astime

    (sv_artefact_stay_time)

    Артефакт лежит пока его никто не поднимет 0-всегда Только для AH
    1-180-время в минутах

    ardelta

    (sv_artefact_respawn_delta)

    Задержка артефакта. Время до появления нового 0-выключен Только для AH
    1-600-время в секундах

    reinf

    (sv_reinforcement_time)

    Рождение игроков -1 - когда артефакт принесен на базу или одна из команд польностью уничтожена  
    0-игроки рождаются когда захотят
    1-3600-время через которое игроки будут принудительно рождены.

    artrettime

    (sv_artefact_returning_time)

    Время через которое артефакт вернётся на вашу базу , если противник его потерял 0-сразу Только для CTA
    1-300 время в секундах

    actret

    (sv_activated_return)

    Артефакт нужно взять в руки и нажать огонь 0-нет Только CTA
    1-да

     

    Что такое сумма битовых флагов?

    Это целое число, являющееся суммой битов включенных элементов. Элементы, биты которых не участвуют в сумме, будут выключены.

     

    Рассмотрим на примере включения выключения пунктов голосования:

    Например нам надо выключить пункты Изменить погоду и Рестарт. Для составления суммы лучше всего эту ситуацию рассматривать с другой стороны - нужно не выключить эти пункты, а включить все другие кроме этих пунктов.

    Смотрим биты всех других пунктов кроме  Изменить погоду и Рестарт. Такие пункты как Все выключены и Все включены в суммах никогда не участвуют.

    Бит Значение
    0 Все выключены
    1 Все включены
    2 Рестарт
    4 Быстрый рестарт
    8 Выбросить
    16 Заблокировать
    32 Изменить карту
    64 Изменить погоду
    128 Режим

     

    В итоге vote=4+8+16+32+128=188

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

    vote=188

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

    Настройки клиента:

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

    Параметры подключения такого скрытого игрока прописываются в самом конце строки сценария.

    client(localhost/portcl=4554/name=admin)

    client(localhost – обязательная запись.

    вместо localhost можно прописать внешний IP-адрес сервера если используется NAT и есть проблемы с подключением самого себя.

    Ваш внешний IP 178.57.99.69

    portcl – описание в таблице выше

    name – любой набор буквенно-цифровых символов. Необязательный параметр. Может быть опущен.

    Все особенности создания командного файла здесь разобраны. Подведем итог.

    Вот один из примеров запуска сервера DM.

    dedicated\xrEngine.exe  -i -nosound -silent_error_mode -fsltx ..\myserverfs.ltx -ltx  myserver.ltx -start  server(mp_agroprom/dm/ver=1.0/public=1/hname=first_dm_server/portsv=4554/portgs=4556/battleye=1/estime=9:00/spectrmds=0/fraglimit=0/timelimit=30/dmgblock=3/dmbi=0/ans=1/anslen=3/warmup=60/pdahunt=1)  client(localhost/portcl=4557)

     

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

    Внимание!!!

    Длина строки аргументов не должна превышать 487 символов. Это одна из основных причин падения сервера при запуске.

    Выполнение заданной команды при запуске сервера

    Некоторые команды консоли могут быть введены только вручную, например sv_startteammoney. Это доставляет некоторое неудобство: при каждом рестарте сервера (либо загрузке новой карты) необходимо заново вводить эту команду. Для решения этой проблемы можно использовать параметр -$. Добавьте его в строку аргументов, а затем допишите команду. После старта сервера эта команда будет выполнена автоматически. Однако здесь есть один ньюанс: после параметра -$ может быть записана команда с максимум одним аргументом. Это значит, что использовать sv_startteammoney в таком виде нельзя. Для того, чтобы выполнять команды с более чем одним аргументом, запишите их в конфигурационный файл all_server_settings.ltx и поместите в папке app_data_root, а затем добавьте в строку аргументов -$sv_status. После запуска сервер выполнит команду sv_status, т.е. загрузит команды, записанные вами в all_server_settings.ltx.

    Ввиду того, что длина строки аргументов не должна превышать 487 символов, могут возникнуть проблемы с запуском сервера через командный файл. Использование -$sv_status позволит сократить длину строки аргументов, убрав из нее те параметры, которые можно заменить на аналогичные им консольные команды в all_server_settings.ltx. Аналоги консольных команд указаны в таблицах.

    Команды в all_server_settings.ltx имеют более высокий приоритет при запуске сервера с использованием -$sv_status, чем параметры командной строки и настройки LTX, и тем самым обеспечивается гарантированное сохранение настроек при падении сервера. В этот файл можно записывать любые команды в любом количестве, а так же записывать одну и ту же команду несколько раз.

    Пример:

    dedicated\xrEngine.exe -i -nosound -silent_error_mode -fsltx ..\myserverfs.ltx -ltx myserver.ltx -$sv_status -start server(итд*

     

    Список всех известных консольных команд находится здесь.
     

    Автоперезапуск сервера

    Пример:

     
    :load
    
    start /wait dedicated\xrEngine.exe -i -nosound -silent_error_mode -fsltx ..\myserverfs.ltx -ltx myserver.ltx -start server(mp_agroprom/dm/ver=1.0/public=1/hname=first_dm_server/portsv=4554/portgs=4556/battleye=1/estime=9:00/spectrmds=0/fraglimit=0/timelimit=30/dmgblock=3/dmbi=0/ans=1/anslen=3/warmup=60/pdahunt=1) client(localhost/portcl=4557)
    
    goto load
    
    

     

    Если добавить строчку из примера перед строкой сценария и соответствующую строчку после, то ваш сервер будет автоматически перезапускаться после вылета.

     

    Помешать перезапуску сервера может системная служба отправки отчетов в Microsoft, и различные системные отладчики, которые перед тем как закрыть приложение, сообщают об ошибке пользователю. Отключите эти функции в операционной системе.

    В операционных системах Windows 7 даже при отключенных службах отчетов об ошибках при падении сервера все равно выскакивает системное сообщение о том что программа xrEngineне работает и сервер будет перезапущен только если вручную закрыть это сообщение. Для решения этой проблемы создайте отдельный батник со сценарием:

     
    :load
    C:\Windows\System32\taskkill.exe /f /im WerFault.exe
    goto load

     

    Единственный недостаток такого способа автозакрытия системного сообщения в том, что закрываться будут сообщения для всех программ, не только для сервера. Ничего лучшего на данный момент не придумано.

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

    Для каждого сервера в параметрах portsv potrgs portcl нужно указать разные порты. Каждый сервер не должен использовать порты, которые используются другими серверами. В целом серверы не должны использовать порты занятые другими приложениями.

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

    Бывают такие ситуации, что к серверу никто не может подключиться или сервер выпадает из мастер-листа когда вы сами играете на своем сервере и все становится нормально когда вы уходите с сервера. Если у вас такого не происходит, то эта глава не для вас.
    Есть такое предположение, что это происходит по следующим причинам:

    • Сервер использует порты по умолчанию: 5445 5446 5447
    • Сервер и игра используют одну и ту же app_data и user.ltx

    Если в сценарии запуска не указывать порты(portsv potrgs portcl), то сервер будет использовать порты по умолчанию: 5445 5446 5447. Укажите порты не равные 5445 5446 5447. Смените app_data и user.ltx.

    Еще один из способов решения проблемы для компьютера с одним сервером это не указывать в сценарии potrgs или прописать potrgs=-1. Но в этом случае вы не сможете запустить несколько серверов, потому что все серверы будут использовать один и тот же порт = 5447.

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

    Авторизация  


    Обратная связь

    Рекомендуемые комментарии

    Комментариев нет



    Для публикации сообщений создайте учётную запись или авторизуйтесь

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

    Создать учетную запись

    Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

    Регистрация нового пользователя

    Войти

    Уже есть аккаунт? Войти в систему.

    Войти

×
×
  • Создать...