Rust:Установка сервера. Команды и переменные
Как создать свой сервер в Rust
Руководство по запуску сервера версии release (основная) и staging. Инструкция предназначена для тех кто хочет создать сервер на своём компьютере или сервере. На хостингах этот процесс происходит автоматически. Установка и запуск своего сервера не займет много времени. Данное руководство написано только для запуска сервера на Windows.
Системные требования
Сервер Rust легко запустить на своем компьютере, он не очень требователен к ресурсам, если вы, конечно, не собираетесь пригласить на свой сервер 100 и более игроков. Чистая карта в 3 квадратных километра (стандартный размер карты) потребует примерно 2-3 ГБ свободной оперативной памяти, но после 150 тысяч обьектов на сервере, он может уже начать требовать более 6 ГБ свободной оперативной памяти. Лучше иметь 4-8 ГБ оперативной памяти выделенной для работы одного сервера.
Установка и обновление SteamCMD
Консольный клиент Steam или SteamCMD - утилита для установки и обновления выделенных серверов через интерфейс командной строки.
-
Создайте папку на жестком диске для SteamCMD, например C:\steamcmd
-
Создайте папку для вашего сервера, например C:\rustserver
-
Распакуйте архив в папку, которую вы создали для SteamCMD
-
Запустите файл steamcmd.exe
Этот файл после запуска скачает, установит и обновит до последней версии SteamCMD.
Установка SteamCMD закончена.
Установка выделенного сервера Rust
Для того, чтобы SteamCMD скачал на ваш компьютер сервер для Rust, напишите в консоли следующие команды:
login anonymous force_install_dir "c:\rustserver\" app_update 258550 validate quit
Этого достаточно, чтобы скачать "Классический" сервер, для мод серверов необходимо проделать немного больше работы.
Установка staging ветки сервера
Для того, чтобы скачать staging сервер, чтобы посмотреть изменения и обновления игры до того момента, как разработчики официально ее выпустят в первый четверг месяца, то необходимо изменить команду app_update следующим образом:
app_update 258550 -beta staging validate
Настройка и запуск сервера
Чтобы запустить сервер, вам необходимо создать пакетный файл. Для этого создайте новый текстовый документ и сохраните его как RustServer.bat в папке сервера (C:\rustserver), после чего кликните по нему правой кнопкой и измените его.
Пакетный файл
Пакетный файл - это текстовый документ, в котором хранится список команд, которые будут выполняться последовательно. Основное использование пакетного файла для размещения сервера заключается в том, чтобы позволить владельцу сервера убедиться, что его сервер обновлен, и если сервер аварийно завершает работу, он возобновится. Самый простой способ сделать это - использовать инструкцию GOTO. GOTO позволит вам прыгать в вашем пакетном сценарии в любую другую часть пакетного файла.
Важно отметить, что Rust иногда зависает, а не полностью закрывается. В этом случае сервер не перезапустится, если процесс зависает, потому что процесс фактически не остановился. Пакетные сценарии ждут завершения команды (в данном случае RustDedicated.exe), но если этот процесс никогда не завершится, пакетный скрипт будет просто оставаться на месте.
Большая часть настройки сервера происходит именно в этом пакетном файле. Конфигурационные файлы не всегда работают, поэтому лучше понимать за что отвечает каждая строка в файле. Вот пример:
echo off :start C:\steamcmd \steamcmd.exe +login anonymous +force_install_dir c:\rustserver\ +app_update 258550 validate + quit RustDedicated.exe -batchmode +server.port 28015 +server.level «Procedural Map» +server.seed 1234 +server.worldsize 4000 +server.maxplayers 10 +server.hostname «Server Name» +server.description «Server Description" +server.url "http://leprogames.com" +server.headerimage "http://yourwebsite.com/logo.jpg" +server.identity "server1" +rcon.port 28016 +rcon.password 123 + rcon.web 1 goto start
А теперь пояснения для каждой строки.
echo off
Это запрещает окну консоли отображать каждую команду в пакетном файле по мере их выполнения.
:start
Это метка для начальной точки цикла.
C:\steamcmd\steamcmd.exe +login anonymous +force_install_dir c:\rustserver\ +app_update 258550 +quit
Заставляет SteamCMD проверить наличие обновлений сервера и применить при необходимости.
RustDedicated.exe -batchmode +server.port 28015 +server.level «Procedural map» +server.seed 1234 +server.worldsize 4000 +server.maxplayers 10 +server.hostname «Имя сервера» +server.description «Описание сервера при подключении" +server.url http://вашсайт.ру +server.headerimage http://yourwebsite.com/логотип_при_подключении.jpg +server.identity "server1" +rcon.port 28016 +rcon.password letmein +rcon.web 1 goto start
-batchmode
Открывает Unity в режиме без GUI и устраняет необходимость любого ручного вмешательства
+server.port 28015
Порт подключения клиента Rust.
+server.level «Procedural map»
Выбор карты сервера, в Rust четыре типа карт: "Procedural map", "Barren", "HapisIsland”, ”SavasIsland”.
+server.seed 1234
Сид карты, который будет использоваться для процедурной карты или карты Barren (используется вместе с командой server.worldsize). Значения могут быть от -2,147,483,647 до 2,147,483,647.
+server.worldsize 4000
Размер процедурной карты и Barren (используется вместе с server.seed). Значения могут быть от 1000 до 6000.
+server.maxplayers 10
Количество игроков, которые могут быть подключены на сервер.
+server.hostname «Имя сервера, отображаемое в списке клиентских серверов»
Имя сервера, которое будет видно в списке серверов клиента игры.
+server.description "Описание сервера"
Описание, которое будет показано в окне подключения сервера клиента игры.
+server.url http://yourwebsite.com
Ссылка на сайт сервера.
+server.headerimage http://yourwebsite.com/логотип_при_подключении.jpg
Логотип сервера при подключении. Используйте JPG картинку размером of 512 x 256 пикселей.
+server.identity «server1»
Имя каталога, в который будут сохранятся все файлы сервера. Не используйте пробелы или специальные символы.
+rcon.port 28016
Порт подключения через удаленную консоль.
+rcon.password 1234
Пароль, необходимый для доступа через Rcon (удаленную консоль). Не используйте пробелы или специальные символы.
+rcon.web 1
Использует режим подключения websocket для rcon (рекомендуется).
goto start
Указывает командному файлу переходить на строку «start». Удалите эту строку, если вы не хотите, чтобы ваш сервер автоматически перезапускался после его завершения.
Подключение к серверу
Запустите клиент Rust, в зависимости от того, какой сервер вы установили, если staging ветку, то запустите Rust Staging Branch в вашем стиме. Обратите внимание, что ваш сервер не будет отображаться во вкладке «Локальная сеть». Вместо этого нажмите F1 и перейдите к клиентской консоли. Если вы использовали порт по умолчанию 28015, то введите следующую команду для подключения к вашему серверу:
client.connect localhost: 28015
либо
client.connect
Если вы использовали другой порт, измените его соответствующим образом.
Владельцы и модераторы
Как только сервер будет запущен, вы должны сделать себя владельцем сервера, чтобы получить доступ к "админке". Это делается с помощью команды ownerid. Вам понадобится ваш 17-тизначный номер SteamID. Самый простой способ узнать его - войти на сервер и прописать команду users в консоли, вы получите список всех игроков, находящихся на сервере, находите себя и копируйте стимайди. Затем введите следующу команду в консоль сервера:
ownerid 12345678901234567
Вы можете сделать то же самое для модераторов с помощью команды moderatorid.
moderatorid 12345678901234567
Обязательно используйте команду writecfg после этого, чтобы получить привилегии владельца или модератора, необходимо перезайти на сервер. Эти два разрешения почти идентичны. Владельцы могут создавать, удалять и запрещать модераторов, если это необходимо, но модераторы не могут повлиять на владельцев.
Как зайти друзьям на ваш сервер Rust
Если вы хотите, чтобы другие игроки могли подключаться к вашему серверу, вам нужно будет иметь выделенный IP-адрес, такая услуга предоставляется провайдерами, иногда бесплатно, а также необходимо пробросить порты 28015 и 28016 на вашем роутере. Как это сделать, есть в инструкции к вашему роутеру, либо можете позвонить в техническую поддержку вашего провайдера и попросить это сделать удаленно за вас, если они могут это сделать. Рекомендуем эти инструкции для пробрасывания портов (на английском языке).
Даже если ваш сервер не отображается в списке серверов, игроки могут подключиться к вам через команду client.connect IP:PORT, если они знают ваш публичный IP-адрес. Брандмауэр также может влиять на возможность подключения из внешнего интернета. Если вы это подозреваете, то попробуйте отключить на время ваш брандмауэр. Или сделать исключения для Rust.
Ссылки