Гости
Мой ПДА Плеер Радио
Логин:
Пароль:

Мы играем в...
Топ Сталкер

[Naucka]Минор
Репутация: 1073
Постов:265


[Наука]ДедПархоМ
Репутация: 1471
Постов:100


[X-Ray]БелоЧкА™
Репутация: 256
Постов:26

Категории раздела
Полезности для... [5]
Полезная инфо и обучалки
Кругозор [0]
Расширяем общие познания
Мини-чат
Зажигаем!
Get Adobe Flash player
Статистика


Всего зарегистрированных: 298
Новых за месяц: 0
Новых за неделю: 0
Новых сегодня: 0

Из них:
4 Администраторов

1 Модераторов
5+0 Научных сотрудников
42 Обитателей Зоны
57 Друзей сообщества
189 Пользователей сайта

Забегали погреться:
>
Логин:
Пароль:

Мы играем в...
Топ Сталкер

[Naucka]Минор
Репутация: 1073
Постов:265


[Наука]ДедПархоМ
Репутация: 1471
Постов:100


[X-Ray]БелоЧкА™
Репутация: 256
Постов:26

Категории раздела
Полезности для... [5]
Полезная инфо и обучалки
Кругозор [0]
Расширяем общие познания
Мини-чат
Зажигаем!
Статистика


Всего зарегистрированных: 298
Новых за месяц: 0
Новых за неделю: 0
Новых сегодня: 0

Из них:
4 Администраторов

1 Модераторов

5+0 Научных сотрудников
42 Обитателей Зоны
57 Друзей сообщества
189 Пользователей сайта

Забегали погреться:
>
Статьи сайта
Главная » Статьи » Полезности для...

Часть 2. Создание батника с автоперезапуском для сервера S.T.A.L.K.E.R.
Часть 2.

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

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

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

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

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

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

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

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

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

hname


Имя сервераНапример: /hname=My Server/
maxplayers
Максимальное количество игроков на сервере2-32
psw
Пароль для входа на серверНеобязательный
public

0 - Сервер в локальной сетиНе будет отображаться в мастер листе
1 - Интернет серверБудет отображаться в мастер листе
portsv
Номер порта сервера1-65535Эти три параметра решают проблему выпадения сервера из мастер-листа, при подключении самого себя к серверу.

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

portgs
Порт GameSpy1-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.01.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

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

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

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

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

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

client(localhost/portcl=4554/name=admin)
client(localhost – обязательная запись.

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

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

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.


Авторы:Максим Максимов (Бармен), Павел "Flammable" Коваленко

Обсудить на форуме

ONLINE интерфейс для создания батника для сервера S.T.A.L.K.E.R.

При копировании статьи прямая активная ссылка на www.mpnetworks.ru с указанием автора обязательна.


Категория: Полезности для... | Добавил: [Наука]ДедПархоМ (20.01.2012)
Просмотров: 2395 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Наш состав
Наш баннер


Член совета
Сертификат
Сертификат на никнейм [Naucka] и тэг сообщества [Наука], зарегистрирован на //nauka.clan.su/
Кланы Зоны
Календарь
Читерам НЕТ!
Опрос
Оцените мой сайт
Всего ответов: 119
method=