На современном Paper (и Purpur) настройки ядра лежат в папке config/:
paper-global.yml− на весь сервер: прокси, лимиты пакетов, нагрузка на чанки, spark;paper-world-defaults.yml− дефолты для миров: anti-xray, сущности, сейв чанков. Переопределение мира − вworlds/<имя_мира>/paper-world.yml.
На старых сборках мог быть один paper.yml в корне.
Связанные конфиги: bukkit.yml, spigot.yml, server.properties.
Меняйте при остановленном сервере или сразу перезапускайте после сохранения. Перед экспериментами рекомендуется сделать бэкап.
paper-global.yml: proxies
velocity − Modern Forwarding для Velocity:
enabled− включить forwarding;online-mode− как у Velocity (обычноtrue);secret− общий секрет с прокси.
bungee-cord: online-mode− как трактовать UUID за BungeeCord/Waterfall (как у прокси).
paper-global.yml: защита от флуда
packet-limiter.all-packets − базовый антифлуд пакетов:
interval− окно в секундах;max-packet-rate− сколько пакетов от игрока допускается за окно;action− что делать при превышении:KICKилиDROP;kick-message− текст кика (если action = KICK).
spam-limiter− пороги спама пакетов, tab-complete и кликов по рецептам;misc: max-joins-per-tick− сколько игроков максимум завершают вход за один тик.
Эти параметры дополняют базовую защиту, но не заменяют её.
paper-global.yml: чанки и нагрузка
chunk-loading-basic − лимиты на игрока (-1 = без лимита):
player-max-chunk-send-rate− скорость отправки чанков клиенту;player-max-chunk-load-rate− скорость загрузки чанков;player-max-chunk-generate-rate− скорость генерации новых чанков.
player-auto-save:
rate− как часто сохранять данные игроков (в тиках;-1= как в bukkit.yml);max-per-tick− сколько игроков максимум сейвить за один тик.
paper-global.yml: полезное ещё
unsupported-settings − разрешить ванильные эксплойты:
allow-headless-pistons− поршни без головки;allow-piston-duplication− дуплы через поршни (TNT, рельсы, ковры…);allow-permanent-block-break-exploits− ломание неломаемых блоков.
misc: enable-nether− включён ли Незер;spark: enabled− встроенный spark;messages: kick.*− тексты киков (часто MiniMessage).
paper-world-defaults.yml: anti-xray
anticheat: anti-xray − обфускация руд для игрока (подмена внешнего вида невидимых руд):
enabled− включить anti-xray;engine-mode− алгоритм обфускации:1− подменяет скрытые блоки «обычным» камнем мира (stone/deepslate, netherrack, end stone). Обычно хватает и легче всего для сервера;2− раскидывает фейковые руды/блоки изhidden-blocksпо чанку (и hidden, и replacement). Сильнее против x-ray, заметно тяжелее для процессора и сети;3− как режим 2, но на каждом вертикальном слое чанка один случайный блок из списка. Тоже тяжёлый.
hidden-blocks− какие блоки прятать/подменять;replacement-blocks− чем заменять (для режимов 2/3).
paper-world-defaults.yml: чанки и сущности
chunks:
auto-save-interval− интервал сейва мира (перекрывает autosave из bukkit.yml);max-auto-save-chunks-per-tick− сколько чанков сейвить за тик;prevent-moving-into-unloaded-chunks− не пускать в ещё не загруженный чанк.
collisions: max-entity-collisions− после скольких коллизий сущностей дальше не считать;entities: armor-stands: tick− тикать ли стойки для брони (falseпомогает на картах с тысячами стоек);entities: behavior: nerf-pigmen-from-nether-portals− упростить поведение пиглинов из порталов.
Грубая настройка поведения сущностей − в
spigot.yml (entity-activation-range).
При лагах можно использовать spark для отладки.