Будни техпода. Размещение игрового сервера на VDS


Одним из популярных направлений, в котором используют VDS, и о котором нередко интересуются клиенты у нашей поддержки, являются игровые серверы. Чаще всего мы слышим вопросы: «А можно ли?», «А друзья и другие пользователи смогут к нему подключиться?», «А какие параметры подойдут?». И, конечно, VDS-серверы не только можно, но и нужно использовать под подобные задачи. Намного удобнее развернуть игровой сервер на виртуальной машине, которая никак не зависит от вашего ПК и работает 24/7.

▍ Создание VDS для размещения игрового сервера

В зависимости от проекта системные требования к серверу могут отличаться. Где-то будет достаточно 2 ядер процессора и 2 гигабайт оперативной памяти, а где-то и 8 гигабайт будет недостаточно. Минимальные требования для проектов из моего примера: 4 CPU, 4 RAM, также рекомендован SSD-диск. Поэтому я буду использовать следующую конфигурацию:


В качестве диска был выбран «NVMe», а в качестве операционной системы «Windows server 2022». Стоимость такой конфигурации составляет 2884 рубля в месяц, но по промокоду HABR15 вы можете получить дополнительную скидку 15% (промокод суммируется с другими скидками).

После заказа сервер установится в течение нескольких минут и отобразится во вкладке «Мои серверы» со всеми данными, которые необходимы для подключения по RDP.


Подключаемся к серверу по RDP и приступаем к дальнейшей настройке.

▍ Установка и настройка SteamCMD

Хоть процесс установки идентичен для всех проектов, настройки у разных игровых серверов отличаются и в первую очередь подстроены под особенности той или иной игры. В этой статье я приведу пример запуска сервера для двух проектов: V Rising и Valheim.

Для начала необходимо скачать и установить приложение «steamcmd». После скачивания архива переходим в корень «диска С», создаём в нём папку с именем «steamcmd» и разархивируем в неё саму программу.


Теперь откроем командную строку, перейдём в созданную папку и запустим установку приложения. Делается это следующими командами:

cd C:\steamcmd
steamcmd


Мы получили доступ к приложению «steamcmd» и можем приступать к установке игрового сервера. Для начала нам необходимо создать папку (я буду использовать имя «v-rising»), в которой будет храниться наш сервер. Делается это командой:

force_install_dir ./имя папки/

Также нам необходимо авторизоваться в учётной записи steam, чтобы иметь возможность скачивать нужные нам приложения. Авторизацию будем производить под логином «anonymous». Вводим команду:

login anonymous


Далее нам необходимо скачать сам игровой сервер. Для установки конкретного приложения нам потребуется его ID. Его мы можем посмотреть на сайте steamdb.info

В поиске на сайте указываем название нужной нам игры (в моём примере это будут игры V Rising и Valheim), в поле «App Type» выбираем «tool» и в списке находим приложение с припиской «dedicated server».


Вводим одну из команд:

app_update 1829350 //для установки V Rising
app_update 896660 //для установки Valheim

Сервер скачается и установится, после чего можно будет закрыть «steamcmd». Выполняем команду:

quit

Со следующего этапа появляются отличия в настройке проектов, но логика у них схожая и разобраться нетрудно. Мы рассмотрим сначала пример с проектом V Rising, а затем с проектом Valheim.

▍ Запуск сервера на примере V Rising

Теперь, перейдя в ранее созданную папку, мы сможем увидеть файлы игрового сервера. В первую очередь нас интересует файл с расширением «bat». Он содержит параметры запуска сервера. В случае с V Rising это файл «start_server_example.bat». Выбираем его правой кнопкой мыши и жмём «Изменить».


«VRisingServer.exe» — файл, который будет запускаться при запуске bat-файла. «serverName» — имя, которое будет отображаться в списке всех серверов, и по которому можно будет найти наш сервер. «saveName» — имя файла, в котором будут храниться сохранения нашего игрового мира. В первую очередь нас интересует имя «serverName». Меняем его по своему усмотрению.


В некоторых проектах (например, Valheim, который рассмотрим далее) в этом файле можно также указать дополнительную информацию, такую как пароль от сервера, номер порта, пароль администратора и т. д., но в случае с V Rising, эта информация редактируется в отдельных файлах. Сохраняем изменения и закрываем файл. Переходим в папку «VRisingServer_Data» — «StreamingAssets» — «Settings» и находим файлы «ServerGameSettings.json» и «ServerHostSettings.json».


В первом файле возможно настроить игровые параметры сервера (тип сервера, количество добываемых ресурсов и т. д.), а во втором — параметры хоста (порт сервера, пароль от сервера, количество пользователей и т. д.). Откроем второй файл с помощью любого текстового редактора (например, блокнота). Основная информация, которая тут нас интересует, это номера портов. Их нам необходимо открыть в брандмауэре Windows, чтобы сервер можно было найти и подключиться к нему. По умолчанию это порты 9876, 9877 и 25575, но при желании можно указать другие.


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

▍ Открытие портов в брандмауэре

Теперь нам необходимо настроить брандмауэр и открыть порты, которые были указаны в файле конфигурации хоста. Нажимаем на клавиатуре Win+R (или щёлкните правой кнопкой мыши по меню «Пуск», выберите «Выполнить»), введём firewall.cpl и в открывшемся окне переходим в дополнительные параметры.


Нам необходимо создать правила для входящих и исходящих подключений. Жмём «создать правило».


В пункте «Тип правила» выбираем «Для порта».


Далее выбираем протокол и нужные порты (мы будем открывать и TCP и UDP, поэтому данную процедуру необходимо будет повторить). Выбираем протокол и вводим необходимые порты через запятую.


Далее выбираем «Разрешить подключение».


Соглашаемся со следующим пунктом, указываем название правила и жмём «Готово».


Проделываем те же действия для UDP, а также для исходящих подключений (суммарно мы добавили 4 правила: 2 для исходящих и 2 для входящих подключений). Закрываем окно брандмауэра и переходим к запуску сервера.

▍ Запуск сервера V Rising

Настройки завершили, теперь мы можем запустить сам сервер и затем подключиться к нему. Запуск осуществляется через bat-файл («start_server_example»), который мы редактировали несколько шагов назад. Запускаем его.


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


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

▍ Настройка сервера на примере Valheim

Теперь рассмотрим вариант с настройкой сервера для игры Valheim. По аналогии с V Rising у нас уже есть готовый bat-файл, который содержит в себе настройки для запуска сервера. В некоторых проектах этот файл может отсутствовать, но при необходимости его можно создать вручную. Просто создаём текстовый файл и указываем расширение «bat». Откроем его с помощью текстового редактора, нажав правой кнопкой мыши и выбрав «Изменить».


В этом файле нас интересует самая последняя строка. Как и в V Rising, она содержит имя файла, который будет запускаться (valheim_server), и имя нашего сервера (name). Также тут можно сразу указать порт, который будет использовать наш сервер и пароль от сервера. По умолчанию установлен порт 2456, а рекомендуемые порты для открытия 2456-2458 (но это не значит, что нельзя использовать другие порты).


Редактируем файл по своему усмотрению (меняем порт, пароль и т. д.) и закрываем его. Переходим в брандмауэр, и как в прошлом примере создаём 4 правила (2 для исходящих и 2 для входящих подключения). Указываем порты 2456-2458.


Закрываем брандмауэр и запускаем файл «start_headless_server».


Сервер запущен, и теперь мы можем к нему подключиться. Запускаем игру, переходим на страницу с серверами, выбираем «Присоединиться к игре» и жмём «Добавить сервер». В открывшемся окне вводим IP нашего сервера (в нашем случае это IP нашего VDS-сервера, на котором расположен игровой сервер) и через двоеточие указываем порт, который был прописан в файле запуска (в нашем случае это 2456).


Жмём «Добавить сервер», и он отобразится у нас в списке. Выбираем его и нажимаем «Подключиться». Затем вводим пароль, который мы указывали в файле запуска, и жмём «Enter».


Готово! Мы успешно подключились к серверу и можем начинать игру.

▍ Пара слов в заключение

Как мы смогли увидеть, в запуске своего игрового сервера нет ничего сложного, а сделать это можно всего за 10-15 минут. К сожалению, полностью универсальное руководство под все игровые проекты сделать невозможно, т. к. каждый из них имеет свои уникальные настройки, но, надеюсь, описанные в этой статье примеры помогут разобраться и в других проектах.

Telegram-канал с розыгрышами призов, новостями IT и постами о ретроиграх 🕹️


 

Источник

Читайте также