Перейти к содержимому

Как разместить кастомную карту Rust на сервере

Коротко: загрузите файл .map туда, где есть прямая ссылка на скачивание по https, впишите server.levelurl "<эта ссылка>" в строку запуска сервера или в его server.cfg, уберите server.seed и server.worldsize и перезапустите сервер. Сервер и каждый игрок скачивают карту по этой ссылке.

  • Кастомная карта в виде файла .map, из Crucible Heightmap, Creator или RustEdit.
  • Место для файла, которое даёт прямую ссылку на скачивание: если открыть ссылку в браузере, скачивание начинается сразу, без страницы или кнопки между ними. Ссылка должна быть https.
  • Сервер Rust, который можно перезапустить, и открытая для правки строка запуска или server.cfg.

Пройдитесь по карте раньше всех остальных. Crucible Local Server запускает её на вашем ПК вообще без ссылки: перетащите .map в его окно, нажмите Назначить, запустите сервер и нажмите Подключиться. Проверьте, что игроки появляются, монументы стоят на земле и ничто не перегораживает дороги. Полный разбор: проверка карты на локальном сервере Rust.

Когда карта загружена (шаг 2), проверьте ссылку так же. На вкладке Карта выберите URL размещения, вставьте ссылку в URL уровня (прямая ссылка на .map) на вкладке Конфиг и запустите сервер. Если карта загрузилась, ссылка работает.

  • Скачивание должно начинаться сразу. Страница файлообменника с кнопкой «Скачать» не подойдёт: сервер получит страницу вместо карты.
  • На Dropbox ссылка для доступа заканчивается на dl=0, и она открывает страницу. Замените на dl=1.
  • Держите ссылку живой. Каждый новый игрок скачивает по ней карту при первом входе, так что мёртвая ссылка не пускает новых игроков, пока сервер работает на этой карте.
  • Проверьте её: вставьте ссылку в браузер. Должен скачаться файл с расширением .map того же размера, что и ваш.

В строке запуска сервера:

Окно терминала
RustDedicated.exe -batchmode +server.identity "my_server" +server.port 28015 +server.levelurl "https://example.com/maps/mymap.map" +server.maxplayers 100 +rcon.port 28016 +rcon.password "your-own-password" +rcon.web 1

Или строкой в server.cfg, в папке cfg сервера (server/<identity>/cfg/, рядом с RustDedicated.exe):

server.levelurl "https://example.com/maps/mymap.map"
  • Уберите server.seed и server.worldsize. Они создают процедурную карту. С URL уровня мир задаёт файл карты.
  • Возьмите ссылку в кавычки.
  • Если и строка запуска, и server.cfg задают это значение, побеждает строка запуска.

Подробнее про оба места: пример Rust server.cfg и аргументы запуска.

Rust читает карту один раз, при запуске сервера, поэтому перезапустите его. Затем в консоли появится:

Loading custom map from https://example.com/maps/mymap.map

а в списке серверов карта будет значиться как Custom Map. Если скачивание не удалось, в консоли появится Couldn't Download Level: с названием карты и причиной, и сервер завершит работу. Сообщения сервера Rust в справочнике ошибок объясняют, что значит каждое и что менять.

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

  • Новое имя файла. Загрузите её как mymap_v2.map и направьте server.levelurl на новую ссылку. Все скачают её заново. Rust называет сохранение мира кастомной карты по имени файла карты, так что это ещё и начинает новый мир.
  • То же имя файла с новой ссылкой. Чтобы сохранить мир после небольшой правки, оставьте имя файла и измените только конец ссылки, например https://example.com/maps/mymap.map?v=2. Сначала откройте новую ссылку в браузере и убедитесь, что хостинг и с ней отдаёт карту.

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

Когда карта нужна на сервере, который работает без вашего ПК, у Drizzza партнёрство с Pine Hosting: pine.host/drizzza.

Поднимите свой сервер Rust на Pine Hosting за несколько минут, с защитой от DDoS и установщиком плагинов uMod. Скидка 30% по коду DRIZZZA.

Шаги на этой странице на хостинговом сервере те же: загрузите карту, задайте server.levelurl там, где хостинг позволяет править строку запуска или server.cfg, и перезапустите.

Обычный сервер Rust запускает рельеф, слои и префабы любой .map. Дополнения, которые некоторые редакторы сохраняют в файле, оживают только с серверным дополнением: загадки и спавнеры RustEdit требуют расширения RustEdit на сервере Carbon или Oxide, а проводка, объёмы и профили лута Creator требуют серверного расширения Creator. См. карты с кастомными данными и RustEdit и что читает обычный сервер.