Дальность прорисовки на сервере Minecraft: как увеличить и не убить TPS

Дальность прорисовки на сервере задаётся параметром view-distance в server.properties — это радиус в чанках, которые сервер грузит и отправляет игроку вокруг него (по умолчанию 10, это около 160 блоков). Отдельно есть simulation-distance — радиус, в котором сервер реально считает мобов, редстоун и рост растений, а не просто показывает картинку. Оба параметра напрямую бьют по RAM и CPU: больше чанков в памяти и больше тиков на каждый — ниже TPS (тактов сервера в секунду, норма — 20). Бесплатные хостинги режут эти значения не из жадности, а потому что железо общее на десятки чужих серверов сразу.
Что такое view-distance и simulation-distance
view-distance — сколько чанков вокруг игрока сервер держит загруженными и передаёт клиенту. simulation-distance появился в Java Edition с версии 1.18 отдельно от view-distance: раньше вся видимая зона тикалась одинаково, теперь можно показывать игроку далёкий рельеф, но реально считать редстоун, мобов и рост посевов только в узком кольце вокруг него. Это разделение придумали специально, чтобы не платить производительностью за красивый вид на горизонт.
Как поменять — server.properties
view-distance=10 simulation-distance=10
Файл лежит в корне сервера, значения — целые числа, у view-distance диапазон от 2 до 32. Учти: итоговая дальность на экране игрока — это минимум из серверного view-distance и настройки самого клиента (Настройки → Видео → Дальность прорисовки). Поставишь на сервере 32, а у игрока в клиенте стоит 12 — увидит он всё равно 12, только сервер зря потратит ресурсы на лишние чанки, которые никто не смотрит.
Почему на бесплатных хостингах прорисовку режут

Бесплатные хостинги, включая Aternos, дают доступ к общему железу — одна физическая машина держит десятки чужих серверов одновременно. Каждый загруженный чанк — это память и такты CPU. Если разрешить любому бесплатному серверу задирать view-distance до 20-32, один такой сервер способен забрать себе память и процессор, из-за которых начнёт тормозить весь узел с чужими серверами рядом. Поэтому ограничение — это защита общего железа, а не техническая прихоть. На платном тарифе с выделенными ресурсами такой необходимости нет — там сервер не делит железо с чужими проектами, и повышать прорисовку можно, ориентируясь только на собственный запас RAM и CPU.
Сколько тянет 2 ГБ, а сколько 8 ГБ
Точная цифра занятой памяти на чанк зависит от того, что в нём: пустая равнина весит меньше, чем ферма с сотней хопперов и мобов. Но общая логика простая: площадь загруженной зоны растёт квадратично от view-distance (радиус 10 даёт кольцо чанков заметно больше, чем радиус 6), а на сервере с несколькими игроками эти зоны частично пересекаются, но всё равно суммируются. На 2 ГБ памяти сервер обычно комфортно держит настройки по умолчанию (view-distance 10) для одного-двух игроков — выше этого начинается давление на сборщик мусора Java и просадки. На 8 ГБ есть запас, чтобы поднять view-distance до 14-16 и держать несколько игроков одновременно, не упираясь в память первым делом.
Chunky — предгенерация вместо генерации на лету
Отдельная головная боль — не сама прорисовка, а момент, когда игрок идёт в ещё не сгенерированную часть карты: сервер вынужден генерировать рельеф прямо во время игры, и это создаёт резкие просадки TPS у всех, кто на сервере в этот момент. Плагин Chunky (для Paper и совместимых ядер) решает это иначе: генерирует чанки заранее, в фоне, маленькими порциями, не мешая игрокам. Он не увеличивает саму дальность прорисовки — он убирает лаги от генерации новых чанков, когда игроки исследуют карту с уже включённым большим view-distance.
Как прорисовка убивает TPS
Каждый серверный тик (их 20 в секунду, по 50 мс на тик) сервер обязан обработать все чанки в зоне simulation-distance у каждого игрока: посчитать мобов, редстоун, рост посевов, физику жидкостей. Чем больше simulation-distance и чем больше игроков разбросано по карте, тем больше суммарной работы нужно впихнуть в те же 50 мс. Если не успевает — тик растягивается, TPS падает ниже 20, и игра у всех подвисает одновременно, независимо от того, кто именно вызвал нагрузку. view-distance давит больше на память и сеть (нужно догружать и досылать чанки), simulation-distance — прямо на CPU и TPS. Подробный разбор борьбы с лагами и просадками TPS — в статье как убрать лаги на сервере.
Практические ориентиры
- Соло или вдвоём на 2-4 ГБ — оставить дефолт 10/10, поднимать не стоит
- 4-8 игроков на 8 ГБ — можно пробовать view-distance 12-14, simulation-distance держать на 8-10
- Большая база игроков или тяжёлые фермы редстоуна — не гнаться за дальностью, а следить за simulation-distance и списком мобов
- После любого изменения — смотреть команду /tps и MSPT в консоли, а не ориентироваться на глаз

Сколько памяти вообще закладывать под сервер под конкретное число игроков и модов — разобрано в статье сколько ОЗУ нужно серверу. Ядро сервера тоже влияет на то, как переживает нагрузку от прорисовки — Paper и его форки оптимизируют тикание чанков заметно лучше ванильного ядра, разница описана в статье какое ядро выбрать.
Есть бесплатный тарифСвой сервер Minecraft за минуту
Ядро, плагины и моды ставятся из панели, друзья заходят по адресу за минуту.
Открыть хостингМожно ли поставить view-distance 32?
Технически да — это верхняя граница параметра. Но без достаточного запаса памяти и процессора сервер на такой дальности начнёт заметно проседать по TPS уже с одним-двумя игроками, поэтому на слабом железе это значение бессмысленно.
Что сильнее бьёт по производительности — view-distance или simulation-distance?
simulation-distance напрямую грузит CPU и TPS, потому что каждый тик пересчитывает мобов, редстоун и рост в этой зоне. view-distance в первую очередь давит на память и сеть — чанки нужно держать загруженными и досылать клиенту, даже если в них ничего не тикается.
Почему у друга дальность видна больше, чем у меня, на одном сервере?
Потому что итоговая дальность на экране — это минимум из серверного view-distance и клиентской настройки дальности прорисовки в видеонастройках. Если у друга в клиенте выставлено больше, чем у тебя, при одинаковом серверном значении он увидит дальше именно за счёт своей локальной настройки.
Помогает ли Chunky увеличить саму прорисовку?
Нет, Chunky не меняет view-distance и не обходит его ограничение. Он только заранее генерирует чанки в фоне, чтобы игроки не ловили лаги от генерации новой территории в моменте — это про плавность, а не про дальность видимости. Использовать его имеет смысл вместе с уже выставленным нужным значением view-distance, а не вместо него.


