Как изменить расстояние прорисовки (View Distance)
Введение
Расстояние прорисовки (View Distance) определяет, на сколько чанков вокруг игрока сервер отправляет данные о мире. Значение по умолчанию — 10 чанков. Увеличение улучшает обзор, но линейно нагружает CPU, RAM и канал сети. На выделенном сервере Ubuntu под управлением панели proxify.cloud (Proxmox) изменение параметра требует доступа к консоли контейнера/ВМ и правки конфигурационных файлов ядра сервера (Paper, Spigot, Purpur, Fabric/Forge с модами).
1. Подготовка и доступ к серверу
1.1. Вход в панель proxify.cloud
- Откройте https://proxify.cloud и авторизуйтесь.
- В левом меню выберите Серверы → нужный выделенный сервер (Dedicated Server).
- Убедитесь, что статус — Running. Если сервер выключен — нажмите Start.
1.2. Получение доступа к консоли (Shell)
Есть два способа: через веб-консоль Proxmox или по SSH.
Вариант А — Веб-консоль Proxmox (noVNC):
- В панели proxify.cloud перейдите на вкладку Console выбранного узла (CT или VM).
- Нажмите Launch noVNC (или xterm.js).
- Войдите под
root(пароль указан в письме при заказе или в разделе Access панели).
Вариант Б — SSH (рекомендуется для скорости):
ssh root@<IP-вашего-сервера>
# Пример:
ssh root@192.0.2.45
При первом подключении подтвердите отпечаток ключа (yes). Введите пароль root.
Важно: Если Minecraft запущен в Docker-контейнере внутри Ubuntu — подключайтесь к хосту (Ubuntu), а затем заходите в контейнер (см. шаг 2.3). Если сервер запущен напрямую на Ubuntu (systemd/screen/tmux) — работайте в текущей сессии.
2. Локализация файлов сервера
2.1. Стандартные пути установки
На выделенных серверах proxify.cloud чаще всего используются следующие директории:
/opt/minecraft/— ручная установка / скрипты управления./home/minecraft/— пользовательminecraftдля безопасности./var/lib/docker/volumes/<volume_name>/_data/— если используется Docker (панель Pterodactyl, CubeCoders или кастомный compose).
2.2. Поиск точной папки
Выполните:
find / -name "server.properties" -type f 2>/dev/null | head -20
Типичный вывод:
/opt/minecraft/survival/server.properties
/opt/minecraft/creative/server.properties
/home/minecraft/paper/server.properties
Запомните путь к нужному инстансу (например, /opt/minecraft/survival/).
2.3. Если используется Docker
Посмотрите запущенные контейнеры:
docker ps --format "table {{.Names}}\t{{.Image}}\t{{.Status}}"
Пример:
NAMES IMAGE STATUS
mc-survival itzg/minecraft-server Up 3 days
Зайдите внутрь:
docker exec -it mc-survival bash
# Теперь вы внутри контейнера, файлы обычно в /data
cd /data
3. Остановка сервера перед правкой
Никогда не редактируйте server.properties на работающем сервере — изменения перезапишутся при сохранении мира (auto-save) или перезагрузке.
3.1. Остановка через systemd (если настроено)
systemctl stop minecraft-survival
# или
systemctl stop minecraft@survival
3.2. Остановка через screen/tmux (ручной запуск)
# Найдите сессию
screen -ls
# Пример вывода: 12345.minecraft-survival (Detached)
screen -S minecraft-survival -X stuff "stop\n"
# Ждите 10-15 секунд до полной остановки
3.3. Остановка Docker-контейнера
docker stop mc-survival
4. Редактирование server.properties
4.1. Открытие файла
nano /opt/minecraft/survival/server.properties
# или внутри Docker:
nano /data/server.properties
4.2. Поиск параметра
Найдите строку:
view-distance=10
Если её нет (старые версии) — добавьте в конец файла.
4.3. Рекомендуемые значения
| Профиль нагрузки | Значение | Комментарий |
|---|---|---|
| Экономия ресурсов (слабый CPU, 8-16 ГБ RAM) | 4-6 | Для больших онлайнов 50+ |
| Баланс (стандарт) | 7-9 | Дефолт Paper/Spigot часто 10 |
| Качественная графика (мощный CPU, 32+ ГБ RAM) | 10-12 | Не ставьте >12 — возврат падает экспоненциально |
| Мини-игры / Лобби | 3-5 | Игроки не нуждаются в обзоре |
Совет: На Paper/Purpur есть второй параметр —
simulation-distance. Он отвечает за тикинг сущностей/блоков. Ставьтеsimulation-distanceна 1-2 меньшеview-distance(например,view-distance=10,simulation-distance=8).
4.4. Пример блока настроек
# Network & View
view-distance=8
simulation-distance=6
max-chunk-section-height=384
network-compression-threshold=256
# Performance
ticks-per=animal-spawns:400,monster-spawns:1
4.5. Сохранение и выход
Ctrl+O→Enter(запись)Ctrl+X(выход)
5. Дополнительная оптимизация (Paper / Purpur / Spigot)
Изменение view-distance в вакууме дает меньше эффекта, чем комплексная настройка paper-world-configuration.yml (или purpur.yml).
5.1. Путь к файлу
/opt/minecraft/survival/paper-world-configuration.yml
# или
/opt/minecraft/survival/purpur.yml
5.2. Ключевые параметры для снижения нагрузки от чанков
Откройте файл и найдите/раскомментируйте:
# paper-world-configuration.yml
chunks:
# Отключает отправку пустых чанков (воздуха) клиенту — экономит трафик
send-chunk-load-distance: true
# Максимальное кол-во чанков в пакете за тик (дефолт 10, ставьте 5-8 при лагах)
max-chunks-per-tick: 8
# Отключает обработку сущностей за пределами simulation-distance
entities:
activation-range:
animal: 16
monster: 24
raider: 48
misc: 8
water: 4
villagers: 16
flying: 16
5.3. Настройка spigot.yml (для Spigot/Paper)
# spigot.yml
settings:
view-distance: default # Берет из server.properties, можно зафиксировать числом
simulation-distance: default
chunk-gc:
period-in-ticks: 400
entity-tracking-range:
players: 48
animals: 48
monsters: 48
misc: 32
other: 64
entity-tracking-rangeне должен превышатьview-distance * 16(блоков). Приview-distance=8(128 блоков) значения 48-64 безопасны.
6. Запуск сервера и проверка
6.1. Запуск
# systemd
systemctl start minecraft-survival
# screen (пример скрипта)
cd /opt/minecraft/survival
screen -dmS minecraft-survival bash -c 'java -Xms8G -Xmx8G -jar paper.jar nogui'
# docker
docker start mc-survival
6.2. Проверка логов на ошибки
# systemd
journalctl -u minecraft-survival -f
# screen
screen -r minecraft-survival
# docker
docker logs -f mc-survival
Ищите строки:
[Server thread/INFO]: Loaded 7 recipes
[Server thread/INFO]: Starting Minecraft server version 1.20.4
[Server thread/WARN]: view-distance (8) is higher than simulation-distance (6). This may cause issues with entity tracking.
Предупреждение нормально, если разница 1-2. Если view-distance < simulation-distance — исправьте.
6.3. Проверка в игре
- Зайдите на сервер.
- Нажмите
F3(дебаг-скрин). - Строка Chunk Cache (или Client Chunk Cache) покажет радиус в чанках.
- При
view-distance=8должно быть около 289 чанков (пик) / ~200-250 стабильно. - Формула:
(2*d+1)^2. Для d=8:(17)^2 = 289.
- При
7. Мониторинг ресурсов после изменения
7.1. CPU / RAM (htop / glances)
htop
# Или установите glances: apt update && apt install glances
glances
Смотрите за:
- CPU Load (1-min avg) — не должен превышать кол-во ядер * 0.7 постоянно.
- RAM Used — Java Heap + Metaspace + Direct Memory + OS Cache. Оставляйте 2-4 ГБ под ОС.
7.2. Сеть (iftop / nethogs)
apt install iftop -y
iftop -i eth0
При увеличении view-distance исходящий трафик (TX) растет пропорционально квадрату радиуса. view-distance=10 → ~2.25x трафика от view-distance=6.
7.3. Тикинг (Spark / Timings)
Установите плагин Spark (Paper/Spigot):
# В консоли сервера или через RCON
/plugman load Spark
# или киньте spark.jar в plugins/ и рестарт
Запуск профиля:
/spark profiler --timeout 30
Откройте ссылку в браузере. Смотрите Chunk Packet Send и Player Chunk Map Update — они должны быть в топе при высоком view-distance.
8. Автоматизация через скрипт (опционально)
Создайте скрипт для быстрой смены профиля нагрузки:
cat > /usr/local/bin/mc-view-distance << 'EOF'
#!/bin/bash
# Usage: mc-view-distance <profile> [instance_path]
# Profiles: low, balanced, high, ultra
INSTANCE="${2:-/opt/minecraft/survival}"
PROPS="$INSTANCE/server.properties"
case "$1" in
Комментарии (0)