Выделенные серверы

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

Игра продолжается, даже когда все игроки отключились. Производство идёт, транспорт перемещается, пока сервер работает.

## Требования

В настоящее время выделенный сервер существует для 64-разрядных операционных систем Windows и Linux. Поддерживается только платформа x64. Поддержка процессоров ARM не планируется.

Системные требования
 Память
 Диск
 Операционная система
 Сеть

## Установка

### Steam

Вы можете установить сервер из своей библиотеки Steam, как любую другую игру. Включите ИНСТРУМЕНТЫ в фильтрах вашей библиотеки и установите Satisfactory Dedicated Server.

Coffee Stain в настоящее время работает с Valve, чтобы сделать выделенный сервер доступным для тех, кто не имеет доступа к Satisfactory из своего аккаунта.

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

### SteamCMD

Если вы по какой-либо причине не хотите использовать клиент с графическим интерфейсом, вы, скорее всего, захотите использовать SteamCMD.

После установки SteamCMD вы cможете использовать его для установки и обновления выделенного сервера из командной строки.

#### Windows

```
steamcmd.exe +force_install_dir C:\GameServers\SatisfactoryServer +login anonymous +app_update 1690800 -beta public validate +quit

```

#### Linux

```
./steamcmd +force_install_dir ~/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 -beta public validate +quit

```

#### Экспериментальная версия

Чтобы загрузить экспериментальную версию выделенного сервера, замените -beta public на -beta experimental.
Примеры для Windows и Linux соответственно:

```
# For Windows:
steamcmd.exe +force_install_dir C:\GameServers\SatisfactoryServer +login anonymous +app_update 1690800 -beta experimental validate +quit
# For Linux:
./steamcmd +force_install_dir ~/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 -beta experimental validate +quit

```

Пути установки приведены для примера, сервер может быть установлен в любуе удобное вам место.

### Epic Games

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

### Docker

Это возможно.

Готовые контейнера для docker можно посмотреть, например, здесь.

## Запуск

### Steam

Просто запустите сервер, из клиента, как любую другую игру.

### Запуск из командной строки

#### Windows

В командной строке или PowerShell перейдите в каталог, в котором вы установили Выделенный сервер, и используйте следующую команду с любыми другими необходимыми параметрами из таблицы ниже:

```
FactoryServer.exe -log -unattended

```

#### Linux

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

```
./FactoryServer.sh

```

ОБРАТИТЕ ВНИМАНИЕ! Запуск сервера таким образом не приведет к автоматическому перезапуску сервера, если он завершит свою работу из-за ошибки или остановится по другим причинам. Сервер также, скорее всего, перестанет работать, когда вы закроете свой терминал. Для действительно автономной работы нужно настроить запуск сервера в качестве службы.

### Параметры запуска

Все параметры из этой таблицы работоспособны для выделенных серверов и под Windows и под Linux.

 -ServerQueryPort=<portnum>
 -BeaconPort=<portnum>

На данный момент параметр ещё не действует.
 -Port=<portnum>
 -log
 -unattended

## Порты и файерволы

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

(по умолчанию)
 15000
 7777

Пример настройки Uncomplicated Firewall под Linux:

```
[Satisfactory]
title=Satisfactory
description=An extremely satisfying experience
ports=15777/udp|15000/udp|7777/udp

```

Под WIndows необходимые порты можно открыть командой PowerShell:

```
New-NetFirewallRule -DisplayName "Allow Satisfactory default inbound ports" -Direction Inbound -Action Allow -EdgeTraversalPolicy Allow -Protocol UDP -LocalPort 15000,15777,7777

```

## Настройка игры

Подключиться к выделенному серверу можно через пункт **Управление сервером** в основном меню игры.

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

При первой попытке подключения появится возможность настроить имя сервера и пароль администратора.

Позднее настройки сервера можно изменить на соответствующей закладке.

Здесь же можно управлять и некоторыми другими параметрами обработки игры сервером.

Защита паролем игрока по умолчанию не включена, при необходимости это можно настроить тут же.

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

Сервер самостоятельно не создаёт ни какой игры по умолчанию.

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

Одновременно каждый сервер обслуживает только одну игру.

На закладке статуса можно посмотреть текущее состояние игрового мира.

Дополнительные настройки можно сделать в конфигурационных файлах.

## Консольные команды

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

 FG.DisableSeasonalEvents *x* | Запретить (1) или разрешить (0) сезонные события, такие как FICSMAS.