Настройка сервера: различия между версиями

Материал из Metrostroi
Перейти к: навигация, поиск
м (→‎Установка модов: знаки препинания)
 
(не показано 67 промежуточных версий 10 участников)
Строка 1: Строка 1:
 +
{{Langs
 +
| lang =
 +
| title =
 +
| ru = Настройка_сервера
 +
| en = Server configuration
 +
}}
  
== Сервер  ==
+
= Предисловие =
 +
{{Important/ru|На данный момент существует только Windows версия Turbostroi. На других ОС могут быть лаги.}}
  
Если вы собрались делать сервер для игроков (тоесть не для локальной сети) вам нужно иметь:
+
В силу особенностей движка, самым оптимальным вариантом игры как в мультиплеере так и в одиночной игре в "Metrostroi Subway Simulator" является игра с использованием выделенного сервера (по локальной сети или в сети интернет)
  
1.Открытые порты
+
= Установка SteamCMD =
 +
SteamCMD это программа командной строки, которая предназначена для легкой настройки серверов Garry's mod (и других игр на движке Source). Скачать ее для Windows и Linux можно по ссылке [https://developer.valvesoftware.com/wiki/SteamCMD#Downloading_SteamCMD Valve Developer Wiki].  
  
2.Белый ip (статический ip,то есть он у вас не меняется)
+
= Установка сервера (Windows) =
 +
Чтобы скачать и установить ваш сервер создайте текстовый файл в блокноте, скопируйте код ниже в этот текстовый файл и сохраните его в формате .bat
 +
(копируете команду, нажимаете "Сохранить как..", в выпадающем меню "Сохранить как тип" переключите на "Все файлы (*.*)" и добавьте ".bat" или ".cmd" к названию файла).
 +
<pre>
 +
"ПУТЬ_К_STEAMCMD\steamcmd.exe" +login anonymous +force_install_dir "ПУТЬ_К_СЕРВЕРУ" +app_update 4020 validate +quit
 +
pause
 +
</pre>
 +
Запустив этот скрипт bat, он автоматически начнет скачивание и установку сервера Garry's mod в папку "ПУТЬ_К_СЕРВЕРУ" - путь к которой вы выбрали. Этот процесс может занять некоторое время в зависимости от скорости вашего соединения.
  
3.Терпение
+
= Создание коллекции =
 +
Самый простой метод установки модов для вашего сервера Garry's mod является создание коллекции, в которой хранятся подписки на моды, которые вы выбрали. Создать коллекцию вы можете по ссылке [http://steamcommunity.com/workshop/browse/?section=collections&appid=4000 Garry's Mod Steam Workshop раздел "Коллекции" ] и кликнув [http://steamcommunity.com/workshop/editcollection/?appid=4000 "Создать коллекцию"]. Вам нужно будет ввести имя коллекции и выбрать моды, которые вы хотите добавить на ваш сервер, кликнув по кнопке "Добавить в коллекцию"
  
== Установка steamcmd ==
+
Для установки Метростроя вам необходимо добавить следующие аддоны:
 +
* [http://steamcommunity.com/workshop/filedetails/?id=261801217 Metrostroi (Subway Simulator)]
 +
* Metrostroi Subway Simulator - Content Pack:
 +
** [https://steamcommunity.com/workshop/filedetails/?id=1095094174 Part 1]
 +
** [https://steamcommunity.com/workshop/filedetails/?id=1095098251 Part 2]
 +
** [https://steamcommunity.com/workshop/filedetails/?id=1095100683 Part 3]
 +
** [https://steamcommunity.com/workshop/filedetails/?id=1095105863 Part 4]
 +
** [https://steamcommunity.com/workshop/filedetails/?id=1095109617 Part 5]
 +
** [https://steamcommunity.com/workshop/filedetails/?id=1095111608 Part 6]
 +
* [https://steamcommunity.com/workshop/filedetails/?id=1095130789 Metrostroi Subway Simulator -  Scripts]
 +
* Карта для Метростроя (которые в основном приведены [https://wiki.metrostroi.net/wiki/%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D0%BA%D0%B0%D1%80%D1%82 тут])
  
1.Сначала надо установить [https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip steamcmd]
+
= Установка модов =
 +
Используя командную строку вы можете настроить автоматическую установку модов, собранных в вашей коллекции. Сохраните скрипт приведенный ниже в bat файле в той же папке, где установлен сервер Garry's mod таким же образом как это описано для установки сервера.
 +
<pre>
 +
srcds.exe +maxplayers 20 -console +host_workshop_collection ИДЕНТИФИКАТОР_ВАШЕЙ_КОЛЛЕКЦИИ +gamemode sandbox +map НАЗВАНИЕ_КАРТЫ
 +
</pre>
 +
Названия карт можно найти [https://wiki.metrostroi.net/wiki/%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D0%BA%D0%B0%D1%80%D1%82 тут] их нужно прописать в качестве  "НАЗВАНИЕ_КАРТЫ".<br>
 +
'''Помните, что карта "gm_metrostroi_b50" может вызвать ошибку "Engine hunk overflow!". Чтобы этой ошибки не возникало, в скрипт нужно добавить еще вот эту команду: " +r_hunkalloclightmaps 0"'''<br>
 +
Если вы все сделали правильно, то на выходе у вас будет работающий сервер Метростроя. Если же у вас возникли проблемы при установке, причину которых вы не знаете, на сайте Garry's Mod wiki есть более общий (но более детальный) гайд по [https://wiki.garrysmod.com/page/Category:Server_Owners настройке сервера]. На этом моменте мы введем понятие Turbostroi (Турбострой) описание которого будет дано ниже.
  
2.Разархивируем в папку, где у вас будет храниться сервер.
+
= Подключение к серверу =
 +
Как только вы запустили сервер, вы должны видеть ваш его в игре во вкладке "LAN" в списке серверов Garry's Mod. Если на вашем роутере установлен файрвол или вы вцелом пользуетесь файрволом остальные игроки не смогут видеть ваш сервер и подключиться к нему. Чтобы решить эту проблему, необходимо сообщить вашему файрволу какой трафик пропускать на ваш сервер
 +
<br>
 +
'''Не делайте следующие шаги если не уверены за безопасность вашего компьютера - отключение файрвола делает ваш компьютер уязвимее.'''<br>
  
3.Открываем steamcmd.exe. Далее ждем пока он загрузит необходимые файлы,прописываем комманду login anonymous.После, прописываем app_update 4020 validate, ждём.Когда у вас закончилась установка, закрываем steamcmd
+
'''В большинстве стран СНГ интернет провайдер по-умолчанию не предоставляет вам возможность иметь выделенный сервер, однако, решить это можно заказав в личном кабинете вашего провайдера дополнительную услугу, которая обычно называется "Выделенный IP" или "Внешний IP"'''<br>
  
4.Заходим в папку Garry's Mod server(где лежит steamcmd)/steamapps/common/GarrysModDS/ .Там создаем батник start.bat, нажимаем пкм(правой кнопкой мышки) по батнику --> изменить и там прописываем:
+
Далее вам необходимо "Перенаправить порты" на вашем роутере (если вы им пользуетесь). По-умолчанию Garry's Mod будет использовать порты 27005 и 27015 (UDP и TCP), однако какие порты будет использовать ваш сервер вы можете настроить самостоятельно. Открытие портов можно проверить только если ваш сервер запущен. Если вы все сделали правильно, то путем проверки на различных сайтах сервисах по проверке портов вы сможете увидеть открыт ли нужный вам порт или нет - если открыт, то игроки могут подключаться к вашему серверу и он виден публично.
  
:@echo off
+
== Turbostroi ==
  cls
+
{{Important/ru|Считайте его обязательным к установке как для одиночной игры так и для сервера! На данный момент существует только Windows версия Turbostroi. Другие ОС не поддерживаются!}}
  echo Protecting srcds from crashes...
 
  echo If you want to close srcds, close the srcds window and type Y depending on your language followed by Enter.
 
  title Server Watchdog
 
  :srcds
 
  echo (%time%) srcds started.
 
  start /wait srcds.exe -console -game garrysmod +hostport 27016 +map gm_mus_crimson_line_d +r_hunkalloclightmaps 0 +hostport +maxplayers 15 -gamemode sandbox
 
  echo (%time%) WARNING: srcds closed or crashed, restarting.
 
  goto srcds
 
  
 +
Турбострой это бинарный файл, который ускоряет просчет игровой логики. . '''Без него ваш сервер будет иметь низкую производительность.'''
  
+map - карта (вместо gm_mus_crimson_line_d можете поставить любую карту при старте сервера)
+
Установка: [https://github.com/OnlyNoob/gm_turbostroi/releases/tag/v.2.0.0.6 Скачайте Turbostroi] ([https://wiki.metrostroi.net/turbostroi.zip старая версия]), поместите файл "gmsv_turbostroi_win32.dll
 +
" в папку '''"garrysmod\lua\bin"''' (если данной папки не существует, создайте её). Если вы все сделали правильно, то при подключении к серверу вы не увидите всплывающих сообщений о нехватке Turbostroi. В зависимости от количества ядер вашего компьютера или сервера зависит то, какое количество вагонов на нем будет работать без существенных задержек. Обычно самое оптимальное максимальное количество вагонов на сервере равно примерно 20.
  
+maxplayers - максимальное кол-во игроков
+
== Turbostroi Параметры ==
 +
Вы можете установить нужные потоки Turbostroi которые он должен использовать, чтоб получить хорошую производительность.
  
+hostport - порт
+
'''turbostroi_main_cores''': поток SRCDS. Turbostroi изменяет поток SRCDS на указанный.
  
 +
'''turbostroi_train_cores''': поездной поток.
  
server.cfg (GarrysModDS/garrysmod/cfg) можно сделать и скачать [http://gmod-servercfg.appspot.com этом сайте] . После того, как скачали server.cfg , кидаете его в GarrysModDS/garrysmod/cfg (если спросит заменить ли, заменяйте)
+
{| class="ambox-notice"
 +
| {{ambox/message
 +
| 2 = Значение для каждого из этих параметров должно быть двоичным или побитовым значением.
 +
Также рекомендовано '''отключить''' "Hyper-threading", если это возможно.
 +
}}
 +
|}
  
 +
=== Лучшая конфигурация для 4-ядерного процессора: ===
 +
''Будет использовать все потоки/ядра, кроме последнего для поездов, а последний будет для main''
 +
* С '''включенной''' функцией "Hyper-threading":
 +
** turbostroi_main_cores 128
 +
** turbostroi_train_cores 127
 +
* С '''отключенным''' "Hyper-threading":
 +
** turbostroi_main_cores 8
 +
** turbostroi_train_cores 7
  
Ну если нужно устанавливайте другие аддоны (falco's prop protection и.т.д.)
+
= Советы =
 +
== Server.cfg ==
 +
Вы можете настроить имя, пароль, количество вагонов и другие команды для вашего сервера редактируя файл "server.cfg" в папке "garrysmod\cfg". Ниже приведены команды для настройки:
  
== Установка метростроя и необходимых аддонов ==
+
* hostname "НАЗВАНИЕ СЕРВЕРА"
 +
* metrostroi_maxwagons "ЛИМИТ ВАГОНОВ"
 +
* metrostroi_maxtrains "ЛИМИТ ПОЕЗДОВ"
 +
* metrostroi_maxtrains_onplayer "МАКСИМУМ ПОЕЗДОВ НА ИГРОКА"
  
1.Устанавливаем ulx и ulib (перекидываем папку ulx и ulib с архивов в garrysmod/addons)
+
Более расширенный список команд можно посмотреть [[Console_Commands/ru|Тут]].
  
2.Идем на гитхаб [http://github.com/glebqip/metrostroi_beta metrostroi]
+
== ULX ==
 +
[http://steamcommunity.com/sharedfiles/filedetails/?id=557962280 ULX] модификация для настройки админки, классов и много чего еще.
 +
== WUMA ==
 +
[http://steamcommunity.com/sharedfiles/filedetails/?id=1117436840 WUMA] позволяет администраторам ограничивать права на спавн некоторых энтити.
 +
== Garry's Mod Wiki ==
 +
И конечно вики [https://wiki.garrysmod.com/page/Category:Server_Owners "Server Owners" секция на сайте Garry's Mod Wiki].
  
3.Скачиваем архив (кнопка download zip)
+
==Еще один пример bat команды для запуска сервера==
 +
<pre>''@echo off
 +
cls
 +
echo Protecting srcds from crashes...
 +
echo If you want to close srcds and this script, close the srcds window and type Y depending on your language followed by Enter.
 +
title srcds.com Watchdog
 +
:srcds
 +
echo (%time%) srcds started.
 +
start /wait srcds.exe -console  +port 27015 +clientport 27005 -tickrate 33 -autoupdate -game garrysmod +map gm_metrostroi_b50 +r_hunkalloclightmaps 0 +maxplayers 10 +exec autoexec.cfg +host_workshop_collection 514874036
 +
echo (%time%) WARNING: srcds closed or crashed, restarting.
 +
goto srcds
  
4.Идем в папку сервера addons (GarrysModDS/garrysmod/addons/) перекидываем внутреннее содержимое папки addons архива в папку addons на сервере.Тоже самое проделываем с папкой data (GarrysModDS/garrysmod/data)
+
''</pre>
  
5.Скачиваем [http://rghost.ru/42739720 GmodConv]
+
== Серверные команды по умолчанию ==
  
6.Скачиваем карты с workshop'a, заходим в папку steam(клиента)/steamapps/common/GarrysMod/garrysmod/addons ищем файлы gma карт (если у вас много аддонов, ищите gm_m ). Помещайте gmodconv.exe и файлы gma в одну папку и перетаскиваете файл gma в gmodconv.После этого у вас распаковывается папка с аддоном. Копируйте ее и переносите в папку addons на сервере
+
{| class="wikitable" style="font-size:105%;"
 +
! width="200"  | Команда  !! width="50"  | Станд. значение !! Описание
 +
|-
 +
|metrostroi_current_limit
 +
|4000
 +
|Регулирование предела для тока подстанции (А).<br>'''Рекомендуется выставить значение выше 10000!'''
 +
|-
 +
|metrostroi_maxtrains
 +
|''(?)''
 +
|Изменение максимального количества составов на сервере.
 +
|-
 +
|metrostroi_maxtrains_onplayer
 +
|1
 +
|Изменение максимального количества составов для игрока.
 +
|-
 +
|metrostroi_maxwagons
 +
|2
 +
|Изменение максимального количества вагонов в составе.
 +
|-
 +
|metrostroi_train_requirethirdrail
 +
|1
 +
|Включение/выключение требования наличия контактного рельса для подачи питания на поезд.
 +
|-
 +
|metrostroi_passengers_scale
 +
|50
 +
|Количество пассажиров на станциях.<br>'''Большое значение может привести к лагам и даже к крашу сервера!'''
 +
|-
 +
|metrostroi_voltage
 +
|750
 +
|Изменение напряжения на контактном рельсе.
 +
|}
  
7.Запускаем сервер, заходим на него ВашIP:порт (либо через браузер серверов в lan), радуемся.
+
[[Категория:Установка]]
 
 
 
 
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 
by Hell
 

Текущая версия на 23:36, 5 августа 2022

Available languages: Русский · English



Предисловие

Важно:На данный момент существует только Windows версия Turbostroi. На других ОС могут быть лаги.


В силу особенностей движка, самым оптимальным вариантом игры как в мультиплеере так и в одиночной игре в "Metrostroi Subway Simulator" является игра с использованием выделенного сервера (по локальной сети или в сети интернет)

Установка SteamCMD

SteamCMD это программа командной строки, которая предназначена для легкой настройки серверов Garry's mod (и других игр на движке Source). Скачать ее для Windows и Linux можно по ссылке Valve Developer Wiki.

Установка сервера (Windows)

Чтобы скачать и установить ваш сервер создайте текстовый файл в блокноте, скопируйте код ниже в этот текстовый файл и сохраните его в формате .bat (копируете команду, нажимаете "Сохранить как..", в выпадающем меню "Сохранить как тип" переключите на "Все файлы (*.*)" и добавьте ".bat" или ".cmd" к названию файла).

"ПУТЬ_К_STEAMCMD\steamcmd.exe" +login anonymous +force_install_dir "ПУТЬ_К_СЕРВЕРУ" +app_update 4020 validate +quit
pause

Запустив этот скрипт bat, он автоматически начнет скачивание и установку сервера Garry's mod в папку "ПУТЬ_К_СЕРВЕРУ" - путь к которой вы выбрали. Этот процесс может занять некоторое время в зависимости от скорости вашего соединения.

Создание коллекции

Самый простой метод установки модов для вашего сервера Garry's mod является создание коллекции, в которой хранятся подписки на моды, которые вы выбрали. Создать коллекцию вы можете по ссылке Garry's Mod Steam Workshop раздел "Коллекции" и кликнув "Создать коллекцию". Вам нужно будет ввести имя коллекции и выбрать моды, которые вы хотите добавить на ваш сервер, кликнув по кнопке "Добавить в коллекцию"

Для установки Метростроя вам необходимо добавить следующие аддоны:

Установка модов

Используя командную строку вы можете настроить автоматическую установку модов, собранных в вашей коллекции. Сохраните скрипт приведенный ниже в bat файле в той же папке, где установлен сервер Garry's mod таким же образом как это описано для установки сервера.

srcds.exe +maxplayers 20 -console +host_workshop_collection ИДЕНТИФИКАТОР_ВАШЕЙ_КОЛЛЕКЦИИ +gamemode sandbox +map НАЗВАНИЕ_КАРТЫ

Названия карт можно найти тут их нужно прописать в качестве "НАЗВАНИЕ_КАРТЫ".
Помните, что карта "gm_metrostroi_b50" может вызвать ошибку "Engine hunk overflow!". Чтобы этой ошибки не возникало, в скрипт нужно добавить еще вот эту команду: " +r_hunkalloclightmaps 0"
Если вы все сделали правильно, то на выходе у вас будет работающий сервер Метростроя. Если же у вас возникли проблемы при установке, причину которых вы не знаете, на сайте Garry's Mod wiki есть более общий (но более детальный) гайд по настройке сервера. На этом моменте мы введем понятие Turbostroi (Турбострой) описание которого будет дано ниже.

Подключение к серверу

Как только вы запустили сервер, вы должны видеть ваш его в игре во вкладке "LAN" в списке серверов Garry's Mod. Если на вашем роутере установлен файрвол или вы вцелом пользуетесь файрволом остальные игроки не смогут видеть ваш сервер и подключиться к нему. Чтобы решить эту проблему, необходимо сообщить вашему файрволу какой трафик пропускать на ваш сервер
Не делайте следующие шаги если не уверены за безопасность вашего компьютера - отключение файрвола делает ваш компьютер уязвимее.

В большинстве стран СНГ интернет провайдер по-умолчанию не предоставляет вам возможность иметь выделенный сервер, однако, решить это можно заказав в личном кабинете вашего провайдера дополнительную услугу, которая обычно называется "Выделенный IP" или "Внешний IP"

Далее вам необходимо "Перенаправить порты" на вашем роутере (если вы им пользуетесь). По-умолчанию Garry's Mod будет использовать порты 27005 и 27015 (UDP и TCP), однако какие порты будет использовать ваш сервер вы можете настроить самостоятельно. Открытие портов можно проверить только если ваш сервер запущен. Если вы все сделали правильно, то путем проверки на различных сайтах сервисах по проверке портов вы сможете увидеть открыт ли нужный вам порт или нет - если открыт, то игроки могут подключаться к вашему серверу и он виден публично.

Turbostroi

Важно:Считайте его обязательным к установке как для одиночной игры так и для сервера! На данный момент существует только Windows версия Turbostroi. Другие ОС не поддерживаются!


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

Установка: Скачайте Turbostroi (старая версия), поместите файл "gmsv_turbostroi_win32.dll " в папку "garrysmod\lua\bin" (если данной папки не существует, создайте её). Если вы все сделали правильно, то при подключении к серверу вы не увидите всплывающих сообщений о нехватке Turbostroi. В зависимости от количества ядер вашего компьютера или сервера зависит то, какое количество вагонов на нем будет работать без существенных задержек. Обычно самое оптимальное максимальное количество вагонов на сервере равно примерно 20.

Turbostroi Параметры

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

turbostroi_main_cores: поток SRCDS. Turbostroi изменяет поток SRCDS на указанный.

turbostroi_train_cores: поездной поток.

Значение для каждого из этих параметров должно быть двоичным или побитовым значением.

Также рекомендовано отключить "Hyper-threading", если это возможно.

Лучшая конфигурация для 4-ядерного процессора:

Будет использовать все потоки/ядра, кроме последнего для поездов, а последний будет для main

  • С включенной функцией "Hyper-threading":
    • turbostroi_main_cores 128
    • turbostroi_train_cores 127
  • С отключенным "Hyper-threading":
    • turbostroi_main_cores 8
    • turbostroi_train_cores 7

Советы

Server.cfg

Вы можете настроить имя, пароль, количество вагонов и другие команды для вашего сервера редактируя файл "server.cfg" в папке "garrysmod\cfg". Ниже приведены команды для настройки:

  • hostname "НАЗВАНИЕ СЕРВЕРА"
  • metrostroi_maxwagons "ЛИМИТ ВАГОНОВ"
  • metrostroi_maxtrains "ЛИМИТ ПОЕЗДОВ"
  • metrostroi_maxtrains_onplayer "МАКСИМУМ ПОЕЗДОВ НА ИГРОКА"

Более расширенный список команд можно посмотреть Тут.

ULX

ULX модификация для настройки админки, классов и много чего еще.

WUMA

WUMA позволяет администраторам ограничивать права на спавн некоторых энтити.

Garry's Mod Wiki

И конечно вики "Server Owners" секция на сайте Garry's Mod Wiki.

Еще один пример bat команды для запуска сервера

''@echo off
cls
echo Protecting srcds from crashes...
echo If you want to close srcds and this script, close the srcds window and type Y depending on your language followed by Enter.
title srcds.com Watchdog
:srcds
echo (%time%) srcds started.
start /wait srcds.exe -console  +port 27015 +clientport 27005 -tickrate 33 -autoupdate -game garrysmod +map gm_metrostroi_b50 +r_hunkalloclightmaps 0 +maxplayers 10 +exec autoexec.cfg +host_workshop_collection 514874036
echo (%time%) WARNING: srcds closed or crashed, restarting.
goto srcds

''

Серверные команды по умолчанию

Команда Станд. значение Описание
metrostroi_current_limit 4000 Регулирование предела для тока подстанции (А).
Рекомендуется выставить значение выше 10000!
metrostroi_maxtrains (?) Изменение максимального количества составов на сервере.
metrostroi_maxtrains_onplayer 1 Изменение максимального количества составов для игрока.
metrostroi_maxwagons 2 Изменение максимального количества вагонов в составе.
metrostroi_train_requirethirdrail 1 Включение/выключение требования наличия контактного рельса для подачи питания на поезд.
metrostroi_passengers_scale 50 Количество пассажиров на станциях.
Большое значение может привести к лагам и даже к крашу сервера!
metrostroi_voltage 750 Изменение напряжения на контактном рельсе.