Rust Руководство

Как выбрать размер карты Rust по доступной памяти

Соотнесите размер процедурной карты Rust с доступной оперативной памятью VPS, исключив падения из-за Navmesh и роста сущностей.

Как выбрать размер карты Rust по доступной памяти

Выбор слишком большой карты на недорогом VPS приводит к падению сервера при генерации мира или зависаниям через несколько дней после вайпа. Потребление оперативной памяти сервером Rust зависит не только от количества игроков, но и от площади процедурной карты и плотности спавна сущностей.

Инструкция предназначена для администраторов серверов Rust на Linux. На 27 октября 2026 года размер процедурной карты server.worldsize задаётся в метрах, где стандартное значение 4500 требует значительно больше ресурсов, чем компактные карты на 3000–3500 метров.

Как площадь карты влияет на оперативную память#

Параметр +server.worldsize определяет линейный размер стороны квадратной карты. Площадь мира растёт квадратично, что напрямую отражается на требованиях к памяти:

Размер worldsizeПлощадь картыБазовая RAM при стартеРекомендуемый объём VPSТипичный формат
2500–30006.25–9.0 км²~5–7 ГБ8–10 ГБSolo / Duo / Trio, быстрое PvP
3250–375010.5–14.0 км²~8–10 ГБ12–16 ГБНебольшие сообщества (до 70 игроков)
4000–450016.0–20.25 км²~11–14 ГБ16–24 ГБСтандартный Vanilla (100–200 игроков)
5000+25.0+ км²~15–18+ ГБ24–32 ГБКрупные клановые серверы

Карта размером 4500 метров занимает площадь 20.25 км² — это более чем в два раза больше, чем карта 3000 метров (9 км²). Серверу приходится держать в оперативной памяти больше деревьев, камней, монументов, дорог и ячеек навигационной сетки AI.

Скачок памяти при генерации Navmesh#

Наиболее критический момент потребления памяти происходит во время первой генерации мира и построения сетки навигации животных и ученых (Navmesh).

Если параметр nav_disable оставлен в значении false (по умолчанию), сервер выполняет полный расчёт навигационной сетки. На картах 4500+ этот процесс может вызвать резкий скачок потребления памяти на дополнительные 3–5 ГБ. Если у хоста нет достаточного запаса свободной памяти, ядро Linux отправляет процессу сигнал SIGKILL (Out of Memory Killer), и сервер падает с ошибкой Killed.

Проверить доступную память и текущее использование можно стандартными средствами:

bash
free -h
sudo dmesg -T | grep -i -E 'oom[-_]killer|killed process'

Для серверов с ограниченным объёмом оперативной памяти (например, 8–12 ГБ) рекомендуется снизить worldsize до 3250–3500 метров вместо попытки отключить navmesh, так как отключение навигации ломает поведение NPC.

Потребление памяти сервером Rust складывается из базового мира, генерации navmesh и роста сущностей за время вайпа.

Рост сущностей в процессе вайпа#

Свежесгенерированный сервер Rust потребляет минимальный объём памяти. По мере того как игроки возводят постройки, устанавливают турели, ящики и спальные мешки, общее количество сущностей (entities) на сервере непрерывно растёт.

Каждые 50 000 дополнительных сущностей добавляют примерно 1.5–2.5 ГБ к активному потреблению оперативной памяти. Проверить общее количество сущностей на работающем сервере можно в консоли:

bash
save
entity.count

Если к середине недели вайпа число сущностей превышает 200 000, сервер на карте 4500 метров потребует не менее 16–18 ГБ RAM. Если вы используете VPS на 8 или 10 ГБ, к выходным сервер неизбежно столкнётся с нехваткой памяти.

Настройка размера карты в строке запуска#

Укажите размер карты и фиксированный сид в скрипте запуска сервера:

bash
./RustDedicated -batchmode \
  +server.port 28015 \
  +server.worldsize 3500 \
  +server.seed 148290 \
  +server.maxplayers 75

Создайте файл подкачки (swap) объёмом 4–8 ГБ на быстром NVMe SSD. Подкачка не заменит быструю оперативную память во время игры, но предотвратит аварийное завершение процесса ядром Linux при пиковых нагрузках во время генерации карты.

Если вы проектируете серверный кластер с помощью Nexardo, подбирайте конфигурации виртуальных машин под реальную площадь игрового мира: запас по оперативной памяти предотвращает внезапные перезагрузки в разгар онлайна.

Источники#