server.properties: полный справочник всех опций (Minecraft 2026)

server.properties: полный справочник всех опций (Minecraft 2026)

Файл server.properties лежит в корне сервера и читается ровно один раз: при запуске. Поменял строку на горячую, не перезапустил сервер, удивился, что ничего не изменилось. С версии 1.20.5 файл прирос новыми ключами, в 1.21 добавились transfer packet и пара security-флагов. В одном справочнике разберём каждую строку: что делает, какое значение по умолчанию даёт vanilla, и какие значения реально ставят на SMP, минигеймы, хардкор и крупные паблик-проекты.

Где лежит файл и как он устроен

Файл создаётся при первом запуске сервера в той же папке, где лежит paper.jar или server.jar. Формат тривиальный: key=value, по одной паре на строку, комментарии начинаются с #. Все ключи в нижнем регистре через дефис, никаких пробелов вокруг =. Кодировка UTF-8 без BOM, переводы строк LF (если редактируете на Windows и потом видите кракозябры в motd - проблема в кодировке).

Сервер читает файл один раз при старте. Любое изменение требует перезапуска или, на Paper, команды /minecraft:reload для подмножества опций (большинство всё равно требует рестарта). После запуска неизвестные ключи игнорируются, отсутствующие дописываются со значениями по умолчанию. Если файл удалить - vanilla сгенерирует новый, со свежим level-seed= пустым и предложением принять EULA в eula.txt.

Комментарии и порядок строк сервер не сохраняет: после первого запуска файл пересохраняется в каноническом виде (на ванилле - алфавитный порядок). Если нужны комментарии - держите их в отдельной заметке, в самом файле они умрут.

Network: сеть, порты, MTU и анти-прокси

Сетевой блок отвечает за то, как сервер слушает входящие соединения и как обрабатывает пакеты.

  • server-port - TCP-порт, по умолчанию 25565. Можно ставить любой свободный, но если поменяли - клиенты должны указывать его явно (mc.example.com:25577) или использовать SRV-запись DNS. Для скрытия от Shodan-сканов смена порта почти не помогает: атакующие сканируют диапазоны.
  • server-ip - на каком интерфейсе слушать. Пусто по умолчанию, что значит «все интерфейсы». Если на дедике несколько IP и нужно прибиндить сервер к одному - пишите IP сюда. На VPS с одним IP оставляйте пустым.
  • network-compression-threshold - размер пакета в байтах, после которого включается zlib-сжатие. По умолчанию 256. Ставьте 512 если у вас сильный CPU и слабый канал, -1 (отключить компрессию) если играете в локалке или у вас 10G аплинк и хочется сэкономить такты.
  • prevent-proxy-connections - при true сервер пытается распознать VPN/прокси через Mojang-API. Звучит хорошо, по факту лагает (synchronous-блокирующий запрос на каждом коннекте) и не ловит современные residential-прокси. Оставляйте false, фильтрацию делайте на уровне DDoS-защиты или плагина.
  • rate-limit - максимум пакетов в секунду от одного клиента. По умолчанию 0 (без лимита). Поставьте 300 на паблике, чтобы ботнеты не валили коннекшен флудом изнутри сессии.
  • enable-status - отвечать ли на ping-запросы (Server List Ping). По умолчанию true. Если хочется скрыть сервер от публичных трекеров - false, но плеер-список тоже исчезнет.
  • hide-online-players - добавлен в 1.18. При true в Server List Ping отдаётся только число игроков, без ников. Полезно против ботов, скрейпящих ники для целевого spam/харасса.

World: мир, генерация, формат регионов

  • level-name - папка, в которой лежит мир. По умолчанию world. Меняйте чтобы переключаться между мирами без удаления старого: оставили world_old, поставили level-name=world_new - на старте сгенерится новый.
  • level-seed - сид для генерации мира. Пусто = случайный. Сюда же можно положить как число, так и строку (строка хешируется в long).
  • level-type - тип генератора. С 1.19 формат сменился на namespaced ID: minecraft:normal, minecraft:flat, minecraft:large_biomes, minecraft:amplified, minecraft:single_biome_surface. Старые ключи DEFAULT/FLAT/LARGEBIOMES/AMPLIFIED ещё работают через legacy-маппер, но Mojang просит использовать новый формат.
  • generator-settings - JSON-настройки кастомной генерации (для flat-мира список слоёв, для single_biome - биом). Большинство владельцев SMP оставляет пустым.
  • generate-structures - генерировать ли деревни, крепости, трейл-руины. По умолчанию true. Ставьте false если хотите голый мир для сурвайвл-шоу или тестов.
  • world-creation-seed - добавлен для нового generator-pipeline в 1.20+, дублирует level-seed для совместимости с datapacks, которые читают именно этот ключ.
  • region-file-compression - алгоритм сжатия region-файлов. С 1.20.5 поддерживается deflate (по умолчанию), lz4 и none. На крупных мирах LZ4 даёт +20-30% к скорости загрузки чанков ценой +5-10% к размеру на диске. Если диск не NVMe и I/O слабое - переключайте на lz4.
  • max-world-size - радиус мира в блоках от спавна. По умолчанию 29999984 (vanilla cap). Снижайте до 5000-10000 для миниgame-арен, чтобы игроки не уходили далеко.
  • allow-nether - генерация и доступ в нижний мир. По умолчанию true. На skyblock/bedwars обычно false.
  • spawn-monsters - спавн враждебных мобов. По умолчанию true. Ставьте false на креативе или на хабе.
  • spawn-animals - пассивные мобы.
  • spawn-npcs - деревенские жители.

Gameplay: режим, сложность, респаун

  • gamemode - стартовый режим: survival (0), creative (1), adventure (2), spectator (3). Можно писать как слово, так и число.
  • force-gamemode - при true каждый игрок при коннекте сбрасывается в gamemode из конфига. Полезно на сурвайвл-серверах, где админ временно ставил себе creative и не хочет, чтобы оно сохранилось.
  • difficulty - peaceful, easy, normal, hard. Хардкор-режим выставляется отдельным флагом.
  • hardcore - при true смерть в сурвайвле = бан или принудительный спектатор-режим (зависит от настроек), хелс не реген, сложность зафиксирована на hard. Ставится один раз - обратно безболезненно не вернёшь, мир уже в hardcore-флаге.
  • pvp - при false игроки не могут наносить урон друг другу прямой атакой. Косвенно (TNT, fall damage от пуш-блоков) урон проходит, такие сценарии закрывают плагинами.
  • allow-flight - разрешить плагину или предмету (Elytra, креатив) включать полёт без анти-чит-кика. По умолчанию false. Если у вас плагины с jetpack/grappling, ставьте true.
  • spawn-protection - радиус в блоках вокруг точки спавна, где не-операторы не могут ломать или ставить блоки. По умолчанию 16. Для SMP без спавна-крепости ставьте 0, для паблик-хабов - 64-128.
  • op-permission-level - стартовый уровень привилегий новых ОП-ов. От 1 до 4. По умолчанию 4 (полный доступ). На больших проектах ставьте 2 и выдавайте 4 руками только владельцу: уровень 4 даёт /op, /deop, /stop и доступ к командному блоку.
  • function-permission-level - уровень доступа для команд внутри функций (mcfunction). По умолчанию 2.
  • default-resource-pack - URL ресурс-пака, который сервер предложит клиенту скачать (с 1.20.3 поддерживается несколько паков, но через server-resource-pack-prompt и серию полей).
  • require-resource-pack - при true клиент кикается, если отказался скачать пак.
  • resource-pack-sha1 - SHA-1 архива пака для проверки целостности. Обязательное поле если хочется чтобы клиенты не получили MITM-подделку.

Performance: view-distance, simulation-distance, тики

Здесь живут самые горячие настройки. Ошибочный view-distance=32 положит сервер на 30+ игроках, правильный - даёт буст в TPS на ровном месте.

  • view-distance - радиус в чанках, который сервер отправляет клиенту. По умолчанию 10. На SMP до 50 игроков ставьте 8-10, на 100+ - 6-8, на минигейме-арене - 4-5 (всё равно карта маленькая).
  • simulation-distance - радиус в чанках, в котором тикаются мобы, фермы, рост растений и редстоун. Введён в 1.18 как отдельная от view метрика. По умолчанию 10. Ставьте 6-8: дальше игрок всё равно не взаимодействует с фермами, а CPU экономится драматически.
  • entity-broadcast-range-percentage - процент от view-distance, на котором клиент видит сущности (мобы, item-frames). По умолчанию 100. Снижайте до 50-70 на сервере с лагающими сущностями: визуально игрок их меньше видит, нагрузка на сеть и клиента падает.
  • max-tick-time - миллисекунды, в течение которых тик может выполняться, прежде чем watchdog убьёт сервер. По умолчанию 60000 (60 секунд) на ванилле, -1 на Paper (отключено). Если вы не на ванилле и watchdog убивает сервер посреди ночи - переключите на -1 и разбирайтесь с лагом через /spark.
  • max-chained-neighbor-updates - лимит на каскад редстоун-обновлений за один тик. По умолчанию 1000000 в 1.21. На SMP, где игроки строят гигантские TNT-дюпы и редстоун-конвееры, снижайте до 100000-300000: длинные цепочки физики обрываются, лаг-машины не работают, обычные фермы - работают.
  • entity-broadcast-range-percentage повторно: про сущности писали выше.
  • sync-chunk-writes - записывать чанки синхронно (true, по умолчанию) или async (false). На SSD оставляйте true - async ломает сохранность мира при крэше. На HDD под высокой нагрузкой false снижает спайки, но риск повреждения чанка реален.
  • entity-tracking-range - на ванилле зашит, на Paper в paper-world.yml. В server.properties его нет, не пишите туда.

Security: online-mode, secure-profile, whitelist, log-ips, accept-transfers

  • online-mode - самая важная строка во всём файле. При true сервер сверяет UUID и сессию с Mojang/Microsoft API. При false любой клиент может зайти под любым ником. По умолчанию true. Ставьте false ТОЛЬКО если перед сервером стоит прокси (Velocity/BungeeCord) и online-mode=true стоит на прокси.
  • enforce-secure-profile - добавлен в 1.19, релевантен в 1.21. При true клиент должен иметь подписанный Mojang ключ для сообщений в чате. Под BedRock-клиентами через Geyser выключайте (false), иначе биджевые игроки не зайдут.
  • prevent-proxy-connections уже описан в network.
  • white-list - при true пускает только ники из whitelist.json. По умолчанию false. Для приватных SMP - must-have.
  • enforce-whitelist - при true админ, добавивший игрока в вайт-лист, не может потом отозвать его, пока он онлайн (игрок останется в игре до выхода). При true игроки, удалённые из вайт-листа, кикаются мгновенно. Звучит контринтуитивно, но именно так: vanilla-логика.
  • log-ips - добавлен в 1.20.2. При true (по умолчанию) IP игрока пишется в latest.log при каждом коннекте. Для GDPR-совместимости и снижения утечек - ставьте false. Логи всё равно нужны для модерации, но IP туда не попадёт.
  • accept-transfers - добавлен в 1.20.5. Разрешает приём transfer-packet от другого сервера: игрок, на исходном сервере выполнивший /transfer, попадает к вам без диалога коннекта. Огромный security-риск, если вы не контролируете сеть исходных серверов: оставляйте false на одиночном сервере, ставьте true только в проксированной сети, где transfer - фича лобби.
  • op-permission-level уже разобрали в gameplay.
  • text-filtering-config - путь к JSON-конфигу для cloud text filter (Microsoft). По умолчанию пусто, не нужно.

Query, RCON и админские интерфейсы

  • enable-query - UDP-протокол GameSpy-стиля для отдачи статистики (TPS, плееры, версия) на сторонние трекеры. По умолчанию false. Включайте только если вам реально нужно отдавать статистику в monitor-сервис: лишний открытый UDP - лишняя поверхность атаки.
  • query.port - порт UDP query, по умолчанию 25565 (тот же что server-port). Меняйте на отдельный, если включили.
  • enable-rcon - TCP-протокол удалённого администрирования. По умолчанию false. Если включаете - ставьте сильный пароль (rcon.password) и блокируйте порт фаерволом, открывая только с админ-IP. RCON ходит без TLS: на публичной сети - туннелируйте через SSH или Wireguard.
  • rcon.port - порт RCON, по умолчанию 25575.
  • rcon.password - пустой по умолчанию, пустой пароль = RCON отключён даже при enable-rcon=true. Ставьте 24+ символов случайных, не используйте пароль от хостинга.
  • broadcast-rcon-to-ops - при true команды, выполненные через RCON, дублируются в чат всем ОП-ам онлайн. Полезно для аудита (видно, что команда пришла извне).
  • broadcast-console-to-ops - то же для команд из консоли.
  • enable-jmx-monitoring - JVM-метрики через JMX. Полезно для Prometheus с jmx-exporter. По умолчанию false.

MOTD и брендинг

  • motd - строка под названием сервера в списке. До 59 символов на строку, две строки разделяются \n. Цвета через \u00A7 плюс код (например \u00A7e для жёлтого) или legacy & если у вас Paper с включённым decoder. JSON-формат с 1.16+ поддерживается через unicode-эскейп, но проще писать через плагин (animated-motd).
  • server-icon - на самом деле это не строка в server.properties, а файл server-icon.png 64×64 в корне сервера. Раз пять в году кто-то открывает .properties, ищет icon и не находит.
  • pause-when-empty-seconds - добавлен в 1.21.2. После скольких секунд без игроков сервер «паузит» тик-цикл (мобы не двигаются, время не идёт, IO почти ноль). По умолчанию 60. На SMP с автофермами ставьте 0 (не паузить - иначе фермы не работают пока вы оффлайн), на публичном хабе - 60-300.
  • player-idle-timeout - минут без активности, после которых игрок кикается. По умолчанию 0 (не кикать). На паблике с ограничением слотов - 15-30.

Reference table

ОпцияDefaultSMP (50 ppl)Minigame (200 ppl)HardcorePublic hub
online-modetruetruetruetruetrue (false если за proxy)
enforce-secure-profiletruetruetruetruefalse (если Geyser)
view-distance1085106
simulation-distance107485
entity-broadcast-range-percentage100806010070
max-players205020010500
spawn-protection1600064
pvptruetruetruetruefalse
difficultyeasyhardnormalhardeasy
hardcorefalsefalsefalsetruefalse
allow-nethertruetruefalsetruefalse
spawn-monsterstruetruefalsetruefalse
white-listfalsetruefalsetruefalse
enforce-whitelistfalsetruefalsetruefalse
log-ipstruefalsefalsefalsefalse
accept-transfersfalsefalsetrue (на лобби)falsetrue
enable-rconfalsetruetruefalsetrue
network-compression-threshold256256512256256
rate-limit003000500
region-file-compressiondeflatedeflatelz4deflatelz4
max-chained-neighbor-updates100000030000010000001000000200000
pause-when-empty-seconds60060060
op-permission-level42242

FAQ

Безопасно ли ставить online-mode=false? Одиночный сервер с online-mode=false доступен любому школьнику, который введёт ник Notch: войти, заломать спавн, выйти. Безопасный сценарий ровно один: за вашим сервером стоит Velocity/BungeeCord прокси с online-mode=true, а на бэкенд-серверах false плюс firewall, который пускает только IP прокси. Любая другая конфигурация - открытая дверь.

view-distance или simulation-distance важнее для TPS? Для TPS - simulation-distance. Тики мобов, рост посевов, редстоун завязаны именно на него. view-distance грузит сеть и память (количество отправленных клиенту чанков), но не тик. Снижайте simulation-distance агрессивно (до 4-6), view-distance оставляйте близко к стандарту.

Что делать с accept-transfers? Если у вас одиночный сервер без прокси - оставляйте false. Включение значит, что любой сторонний сервер с командой /transfer может перебросить к вам игрока, у которого ещё не сброшена сессия. На прокси-сетях с собственным контролем входов - включайте только на лобби-сервере.

enforce-secure-profile=true ломает Geyser/Bedrock? Да. Геo-игроки не имеют Mojang-подписанного ключа, поэтому при true сервер их кикает с Multiplayer Disabled. На чисто Java-сервере оставляйте true (защита от подделки сообщений в чате), на гибридном Geyser-сервере - false.

Можно ли менять server.properties без перезапуска? На ванилле - нет, файл читается только при старте. На Paper команда /minecraft:reload перечитывает datapacks и часть config-полей (whitelist, ops). Большинство ключей (view-distance, simulation-distance, online-mode, gamemode по умолчанию) требуют полный рестарт. План любых изменений - в окне минимума онлайна.

Где живут паркур- и хабовые опции вроде entity-tracking-range? Не в server.properties. На Paper они в paper-world.yml и paper-global.yml, на Spigot в spigot.yml, на ванилле их нет вовсе. server.properties - это базовый ванильный конфиг, всё что специфично для Paper/Spigot/Purpur лежит в их собственных файлах.

Хорошо настроенный server.properties экономит часы дебага и десятки тикетов от игроков. Один проход по этому списку перед запуском сервера в паблик закрывает половину типовых проблем: лаги, недопонимание с ботами, утечки IP, дыры в авторизации. Возвращайтесь к файлу после каждого major-апдейта Minecraft: с 1.20.5 за каждый релиз приезжает по две-три новые строки, и значения по умолчанию у новых опций не всегда те, которые нужны вашему серверу.


Sunucunuzu DDoS Saldırılarından Koruyun

5 dakikada kurulumla ücretsiz koruma. 1 TB bant genişliği dahil.

Ücretsiz Deneyin


İlgili Makaleler