Pterohost docs

Выбор ядра сервера Minecraft 2026 - полное руководство

Детальное сравнение ядер Minecraft серверов в 2026: Paper, Purpur, Pufferfish, Folia. Выбор лучшего ядра для производительности, плагинов и игры.

Что такое ядро сервера Minecraft?

Ядро сервера (server core) - это программное обеспечение, которое управляет вашим Minecraft сервером. От выбора ядра зависит производительность, совместимость с плагинами, потребление ресурсов и функциональность сервера.

В 2026 году выбор ядра критически важен:

  • Minecraft стал более требовательным к ресурсам
  • Появились многопоточные ядра (Folia)
  • Оптимизации достигли новых высот
  • Совместимость плагинов стала сложнее

Правильный выбор ядра может улучшить производительность на 200-300% по сравнению с Vanilla!


Категория 1: Базовые ядра

Vanilla (официальное ядро Mojang)

Общая информация

Описание: Официальный сервер от разработчиков Minecraft без каких-либо модификаций.

Версия в 2026: 1.21.x и выше

Технические характеристики

ПараметрЗначение
Язык программированияJava
Поддержка плагиновНет
Поддержка модовНет (только датапаки)
ПроизводительностьБазовая
МногопоточностьОграниченная

Преимущества

✅ Официальная поддержка

  • Разрабатывается Mojang Studios
  • Получает обновления в день релиза новых версий
  • Гарантированная совместимость со всеми клиентами

✅ Абсолютная стабильность

  • Нет сторонних модификаций
  • Минимум багов
  • Предсказуемое поведение

✅ Vanilla механики

  • 100% оригинальный геймплей
  • Все механики работают как задумано
  • Идеально для технических серверов

Недостатки

❌ Низкая производительность

  • Однопоточная обработка мира
  • Нет оптимизаций редстоуна
  • Медленная загрузка чанков
  • Высокое потребление RAM

❌ Отсутствие расширений

  • Нельзя установить плагины
  • Нет админ-команд
  • Ограниченная настройка

❌ Слабая защита

  • Нет встроенного античита
  • Базовая защита от эксплойтов
  • Уязвим к лагам

Для кого подходит

Используйте Vanilla если:

  • Нужен чистый Minecraft без модификаций
  • Технический сервер с редстоуном
  • Speedrun практика
  • Хотите играть “как задумано”

Не используйте если:

  • Нужны плагины или моды
  • Требуется высокая производительность
  • Планируется 20+ игроков

Установка и запуск

# Скачать официальный сервер
wget https://piston-data.mojang.com/v1/objects/[hash]/server.jar

# Запуск с базовыми флагами
java -Xmx4G -Xms4G -jar server.jar nogui

Spigot - базовое ядро с плагинами

Общая информация

Описание: Первое популярное ядро с поддержкой Bukkit API и базовыми оптимизациями.

Создатель: md_5 (SpigotMC Team)

Год создания: 2012

Статус в 2026: Устаревшее, но поддерживается

Архитектура и патчи

Базовые патчи Spigot:

  1. Entity Activation Range

    • Отключает обработку далеких мобов
    • Снижает нагрузку на CPU
    • Настраивается в spigot.yml
  2. View Distance Optimization

    • Динамическая дистанция прорисовки
    • Снижает нагрузку на сеть
    • Адаптируется под TPS
  3. Hopper Optimization

    • Оптимизация воронок
    • Снижение проверок на тик
    • Уменьшение лагов от ферм

Производительность

Метрики производительности:

ТестVanillaSpigotУлучшение
TPS (50 игроков)14-1617-19+20%
RAM (4GB)100%85%-15%
Chunk load time100%70%-30%
Hopper tick time100%60%-40%

Особенности конфигурации

spigot.yml - ключевые настройки:

world-settings:
  default:
    # Дистанция активации мобов
    entity-activation-range:
      animals: 32  # Животные
      monsters: 32  # Монстры
      raiders: 48   # Рейдеры
      misc: 16      # Остальное
      water: 16     # Водные мобы
    
    # Оптимизация тиков
    entity-tracking-range:
      players: 48
      animals: 48
      monsters: 48
      misc: 32
      other: 64
    
    # Лимиты роста
    growth:
      cactus-modifier: 100
      cane-modifier: 100
      melon-modifier: 100
      mushroom-modifier: 100
      pumpkin-modifier: 100
      sapling-modifier: 100
      beetroot-modifier: 100
      carrot-modifier: 100
      potato-modifier: 100
      wheat-modifier: 100
    
    # Merge радиус для энтити
    merge-radius:
      item: 2.5
      exp: 3.0

Преимущества

✅ Bukkit/Spigot API

  • Огромная библиотека плагинов
  • Тысячи бесплатных плагинов на SpigotMC
  • Простая разработка плагинов

✅ Базовые оптимизации

  • Лучше чем Vanilla
  • Стабильные патчи
  • Проверенные временем

✅ Большое сообщество

  • Миллионы пользователей
  • Множество гайдов
  • Активная поддержка

Недостатки

❌ Устаревшие оптимизации

  • Paper значительно быстрее
  • Отсутствуют современные патчи
  • Медленная асинхронная обработка

❌ Медленные обновления

  • Обновления выходят позже Vanilla
  • Нужно компилировать BuildTools
  • Долгая адаптация к новым версиям

Для кого подходит

Используйте Spigot если:

  • Старые версии Minecraft (1.8-1.12)
  • Paper вызывает проблемы (редко)
  • Нужна максимальная совместимость со старыми плагинами

Не используйте если:

  • Современная версия (1.20+)
  • Нужна максимальная производительность
  • Доступен Paper

В 2026 году Spigot используется редко. Paper превосходит его во всем.


Категория 2: Производительные ядра

Paper - золотой стандарт производительности

Общая информация

Описание: Высокопроизводительный форк Spigot с сотнями оптимизаций и улучшений.

Создатель: PaperMC Team (Aikar, electronicboy и др.)

Год создания: 2016

Статус в 2026: Самое популярное ядро (60% серверов)

Архитектура

Основа:

  • Форк Spigot
  • Все патчи Spigot включены
  • 300+ собственных патчей
  • Активная разработка

Философия разработки:

  • Производительность без ущерба стабильности
  • Фикс эксплойтов и багов Vanilla
  • Расширенный API для разработчиков
  • Обратная совместимость с Spigot

Ключевые патчи и оптимизации

1. Асинхронная загрузка чанков

Проблема в Vanilla/Spigot:

  • Чанки загружаются в главном потоке
  • Блокирует обработку мира
  • Вызывает фризы при телепорте

Решение Paper:

// Асинхронная загрузка в отдельных потоках
CompletableFuture<Chunk> loadChunkAsync(int x, int z);

Результат:

  • Загрузка чанков в 3-5 раз быстрее
  • Нет фризов при телепорте
  • Плавный геймплей

2. Оптимизация Entity AI (мобов)

Патчи Paper для AI:

a) Умная активация мобов

# paper-world.yml
entities:
  behavior:
    # Мобы вне зоны видимости обновляются реже
    baby-zombie-movement-modifier: 0.5
    disable-chest-cat-detection: true
    spawner-nerfed-mobs-should-jump: false

b) Оптимизация Pathfinding (поиск пути)

  • Кэширование путей
  • Асинхронный расчет
  • Умная отмена поиска

Результат:

  • До 40% меньше нагрузки от мобов
  • Плавное поведение AI
  • Поддержка 1000+ мобов без лагов

3. Редстоун оптимизация

Проблема Vanilla:

  • Редстоун обновления каскадируют
  • Один блок вызывает сотни проверок
  • Лагают большие схемы

Paper патчи:

a) Умная обработка редстоуна

# paper-world.yml  
redstone-implementation: EIGENCRAFT

b) Оптимизация компонентов:

  • Поршни обрабатываются быстрее
  • Компараторы кэшируют состояния
  • Повторители оптимизированы

Результат:

  • Редстоун схемы работают на 30% быстрее
  • Меньше лагов от больших ферм
  • Стабильный TPS

4. Chunk System Optimization

Полная переработка системы чанков:

a) Асинхронная генерация

  • Генерация в отдельных потоках
  • Не блокирует главный поток
  • Быстрая первая загрузка мира

b) Умный unload (выгрузка)

chunk-loading:
  max-concurrent-sends: 4  # Лимит отправки чанков
  autoconfig-send-distance: true  # Автонастройка

c) Chunk priority system

  • Приоритет чанкам около игроков
  • Быстрая загрузка важных областей
  • Плавное исследование

5. Anti-Xray (защита от X-Ray)

Встроенная защита руд:

# paper-world.yml
anticheat:
  anti-xray:
    enabled: true
    engine-mode: 2  # 1 = простой, 2 = продвинутый
    hidden-blocks:
      - copper_ore
      - deepslate_copper_ore
      - gold_ore
      - deepslate_gold_ore
      - iron_ore
      - deepslate_iron_ore
      - coal_ore
      - deepslate_coal_ore
      - lapis_ore
      - deepslate_lapis_ore
      - redstone_ore
      - deepslate_redstone_ore
      - diamond_ore
      - deepslate_diamond_ore
      - emerald_ore
      - deepslate_emerald_ore
    replacement-blocks:
      - stone
      - deepslate

Как работает:

  • Engine mode 1: Заменяет скрытые блоки на камень
  • Engine mode 2: Добавляет фальшивые руды
  • Отправляет настоящие блоки только при раскопке

6. Timings и диагностика

Встроенный профайлер:

# Запустить профилирование
/timings on

# Подождать 5-10 минут

# Получить отчет
/timings paste

Что показывает:

  • Нагрузка по плагинам
  • Время обработки энтити
  • Графики TPS
  • Рекомендации по оптимизации

Расширенный API

Дополнительные возможности для разработчиков:

1. Async Entity Tracking

// Отслеживание энтити без блокировки
player.getTrackedEntities().forEach(entity -> {
    // Обработка
});

2. Entity Tick Events

// Кастомная обработка тиков
@EventHandler
public void onEntityTick(EntityTickEvent event) {
    // Ваш код
}

3. Paper Components API

// Современная работа с текстом
Component message = Component.text("Привет!")
    .color(NamedTextColor.GREEN)
    .decorate(TextDecoration.BOLD);

Конфигурация Paper

paper-global.yml - глобальные настройки:

# Сеть и пакеты
packet-limiter:
  all-packets:
    action: KICK
    interval: 7.0
    max-packet-rate: 500.0
  kick-message: "Превышен лимит пакетов"

# Производительность
async-chunks:
  threads: 4  # Потоки для загрузки чанков

# Безопасность
packet-limiter:
  overrides:
    ServerboundPlaceRecipePacket:
      action: DROP
      interval: 4.0
      max-packet-rate: 5.0

# Консоль
console:
  enable-brigadier-highlighting: true
  enable-brigadier-completions: true

paper-world.yml - настройки мира:

# Сущности
entities:
  behavior:
    door-breaking-difficulty:
      husk:
      - HARD
      zombie:
      - HARD
    ender-dragons-death-always-places-dragon-egg: false
    mobs-can-always-pick-up-loot:
      skeletons: false
      zombies: false
    nerf-pigmen-from-nether-portals: false
  spawning:
    all-chunks-are-slime-chunks: false
    alt-item-despawn-rate:
      enabled: true
      items:
        cobblestone: 300  # Булыжник деспавнится через 15сек
        netherrack: 300
        sand: 300
        gravel: 300
        dirt: 300

# Чанки
chunks:
  auto-save-interval: 6000  # 5 минут
  delay-chunk-unloads-by: 10s
  entity-per-chunk-save-limit:
    arrow: 16
    ender_pearl: 8
    experience_orb: 16
    fireball: 8
    small_fireball: 8
    snowball: 8

# Коллизии
collisions:
  allow-player-cramming-damage: false
  allow-vehicle-collisions: true
  fix-climbing-bypassing-cramming-rule: true
  max-entity-collisions: 8
  only-players-collide: false

# Редстоун
hopper:
  cooldown-when-full: true
  disable-move-event: false
  ignore-occluding-blocks: false
redstone-implementation: VANILLA  # или EIGENCRAFT

# Оптимизации
tick-rates:
  behavior:
    villager:
      validatenearbypoi: 60  # Раз в 3 секунды
  container-update: 1
  grass-spread: 4
  mob-spawner: 2
  sensor:
    villager:
      secondarypoisensor: 80

Производительность Paper

Сравнительные тесты (2026):

МетрикаVanillaSpigotPaperУлучшение vs Vanilla
TPS (100 игроков)12-1416-1719-20+50%
RAM usage (8GB)100%85%65%-35%
Chunk load (64 чанка)4.2s3.1s1.4s-67%
Entity tick time45ms38ms22ms-51%
Redstone lagВысокийСреднийНизкий-60%

Реальные кейсы:

Кейс 1: Средний выживание сервер

  • Игроки: 80 онлайн
  • Железо: Intel i7, 16GB RAM
  • Vanilla: 14 TPS, лаги
  • Paper: 19.8 TPS, плавно

Кейс 2: Мини-игры сервер

  • Игроки: 200 онлайн
  • Миры: 15 арен
  • Spigot: 16 TPS, фризы при загрузке
  • Paper: 19.5 TPS, плавная загрузка

Установка Paper

Метод 1: Прямое скачивание

# Скачать последнюю версию
wget https://api.papermc.io/v2/projects/paper/versions/1.21.1/builds/latest/downloads/paper-1.21.1-latest.jar -O paper.jar

# Запуск с оптимальными флагами (Aikar Flags)
java -Xmx8G -Xms8G \
  -XX:+UseG1GC \
  -XX:+ParallelRefProcEnabled \
  -XX:MaxGCPauseMillis=200 \
  -XX:+UnlockExperimentalVMOptions \
  -XX:+DisableExplicitGC \
  -XX:G1NewSizePercent=30 \
  -XX:G1MaxNewSizePercent=40 \
  -XX:G1HeapRegionSize=8M \
  -XX:G1ReservePercent=20 \
  -XX:G1HeapWastePercent=5 \
  -XX:G1MixedGCCountTarget=4 \
  -XX:InitiatingHeapOccupancyPercent=15 \
  -XX:G1MixedGCLiveThresholdPercent=90 \
  -XX:SurvivorRatio=32 \
  -XX:+PerfDisableSharedMem \
  -XX:MaxTenuringThreshold=1 \
  -jar paper.jar nogui

Метод 2: Автообновление скрипт

#!/bin/bash
# update-paper.sh

VERSION="1.21.1"
API_URL="https://api.papermc.io/v2/projects/paper/versions/${VERSION}"

# Получить последний билд
LATEST_BUILD=$(curl -s ${API_URL} | jq -r ".builds[-1]")

# Скачать
wget "${API_URL}/builds/${LATEST_BUILD}/downloads/paper-${VERSION}-${LATEST_BUILD}.jar" -O paper.jar

echo "Paper обновлен до билда ${LATEST_BUILD}"

Миграция на Paper

Из Spigot:

  1. Создайте бэкап сервера
  2. Замените spigot.jar на paper.jar
  3. Запустите сервер
  4. Paper автоматически конвертирует конфиги
  5. Проверьте плагины

Из Vanilla:

  1. Бэкап мира
  2. Установите Paper
  3. Скопируйте world, world_nether, world_the_end
  4. Запустите сервер
  5. Установите нужные плагины

Совместимость плагинов

Paper совместим с:

  • ✅ 99% Bukkit плагинов
  • ✅ 99% Spigot плагинов
  • ✅ Paper-специфичные плагины
  • ⚠️ Некоторые NMS плагины требуют обновления

Проблемные плагины:

  • Плагины использующие дюпы
  • Старые NMS плагины (до 1.18)
  • Плагины ломающие Vanilla механики

Для кого Paper - идеальный выбор

✅ Используйте Paper если:

  • Нужна высокая производительность
  • Сервер с 20+ игроками
  • Используете Bukkit/Spigot плагины
  • Хотите стабильность + производительность
  • Нужна защита от эксплойтов
  • Важна активная поддержка

✅ Paper подходит для:

  • Survival серверов
  • SMP серверов
  • Мини-игр
  • RPG серверов
  • Креатив серверов
  • Любых типов серверов с плагинами

Paper - лучший выбор для 80% Minecraft серверов в 2026 году!


Pufferfish - экстремальная производительность

Общая информация

Описание: Форк Purpur с фокусом на максимальную производительность через агрессивные оптимизации.

Создатель: PufferfishMC Team (Kevin Raneri и др.)

Базируется на: Purpur (который базируется на Paper)

Статус в 2026: Лучший выбор для высоконагруженных серверов

Иерархия форков

Vanilla
  └─ Spigot
      └─ Paper
          └─ Purpur
              └─ Pufferfish

Что наследуется:

  • Все патчи Paper ✅
  • Все патчи Purpur ✅
  • Уникальные оптимизации Pufferfish ✅

Революционные патчи Pufferfish

1. DAB (Dynamic Activation of Brain) - умная активация AI

Проблема стандартных ядер:

  • EAR (Entity Activation Range) просто отключает мобов за дистанцией
  • Мобы либо активны на 100%, либо заморожены
  • Нет гибкости

Решение Pufferfish DAB:

Концепция: Мобы имеют 3 уровня активности вместо 2:

  1. Full tick - полная обработка (рядом с игроками)
  2. Reduced tick - обработка раз в N тиков (средняя дистанция)
  3. Minimal tick - минимальная обработка (далеко от игроков)

Как работает:

# pufferfish.yml
dab:
  enabled: true
  # Как часто тикать далеких мобов
  max-tick-freq: 20  # Раз в 20 тиков = раз в секунду
  
  # Множитель дистанции активации
  activation-dist-mod: 7
  
  # Максимальное расстояние для неактивных мобов
  deactivation-dist-mod: 7

Пример работы:

Игрок на координате X=0

Моб на X=10:  Full tick каждый тик (1/20 сек)
Моб на X=50:  Reduced tick раз в 10 тиков (0.5 сек)
Моб на X=100: Minimal tick раз в 20 тиков (1 сек)

Результат:

  • До 60% снижение нагрузки от AI мобов
  • Поддержка 2000+ мобов без лагов
  • Мобы остаются “живыми” но не лагают

2. Async Mob Spawning - асинхронный спавн мобов

Проблема:

  • Спавн мобов происходит в главном потоке
  • Блокирует обработку мира
  • Лагает при спавне большого количества

Решение:

# pufferfish.yml
enable-async-mob-spawning: true

Что происходит:

  1. Проверка условий спавна - асинхронно
  2. Выбор места спавна - асинхронно
  3. Создание моба - в главном потоке (быстро)

Результат:

  • Нет лагов от спавна мобов
  • Плавный геймплей в новых чанках
  • Быстрая генерация мира

3. Inactive Goal Selector Throttle

Что это: Ограничение обновления целей (goals) у неактивных мобов.

inactive-goal-selector-throttle: true

Как работает:

  • Активные мобы: обновляют goals каждый тик
  • Неактивные мобы: обновляют goals раз в N тиков

Результат:

  • -20% нагрузка от AI
  • Плавное поведение мобов
  • Нет визуальных багов

4. Оптимизация Suffocation (удушье)

Проблема:

  • Игра проверяет suffocation каждый тик для каждой энтити
  • Много вычислений коллизий

Решение:

enable-suffocation-optimization: true

Оптимизация:

  • Проверка suffocation только когда энтити внутри блока
  • Кэширование результатов
  • Умная проверка коллизий

5. Улучшенная оптимизация структур

Async Structure Generation:

async-structure-generation: true

Что оптимизировано:

  • Генерация деревень - асинхронно
  • Генерация храмов - асинхронно
  • Генерация крепостей - асинхронно
  • Поиск структур - кэшируется

Результат:

  • Быстрая генерация новых чанков
  • Нет фризов при исследовании
  • Плавная телепортация

Конфигурация Pufferfish

pufferfish.yml - основной конфиг:

# DAB система
dab:
  enabled: true
  max-tick-freq: 20
  activation-dist-mod: 7
  deactivation-dist-mod: 7
  blacklisted-entities: []  # Энтити игнорируемые DAB

# Асинхронные операции
enable-async-mob-spawning: true
enable-async-structure-generation: true

# Оптимизации AI
inactive-goal-selector-throttle: true
enable-suffocation-optimization: true

# Оптимизация активации энтити
entity-activation-range-modifications:
  villager: 16  # Жители активны на меньшей дистанции
  flying-monsters: 32
  water: 16
  villagers-work-immunity-after: 100  # Жители работают после X тиков
  villagers-work-immunity-for: 20
  villagers-active-for-panic: true

# Оптимизация pathfinding
enable-async-pathfinding: true
max-async-pathfinding-threads: 4

# Лимиты
projectile-load-save-per-chunk-limit: 16  # Лимит снарядов в чанке

Производительность

Бенчмарки (2026):

МетрикаPaperPurpurPufferfishУлучшение
TPS (200 игроков)17-1817-1819-20+12%
AI tick time100%100%40%-60%
Mob spawning lagСреднийСреднийНет-100%
RAM (2000 мобов)8GB8GB5GB-37%
Max мобов без лагов8008002000+150%

Реальный кейс:

Сервер: Survival с 150 игроками

  • Железо: Ryzen 9 5900X, 32GB RAM
  • Paper: 17 TPS, лаги в часы пик
  • Pufferfish: 19.5 TPS, стабильно

До Pufferfish:

  • 800 мобов на сервере
  • Лаги при спавне
  • TPS падает до 15

После Pufferfish:

  • 2000+ мобов
  • Нет лагов при спавне
  • Стабильные 19-20 TPS

Установка Pufferfish

# Скачать Pufferfish
wget https://ci.pufferfish.host/job/Pufferfish-1.21/lastSuccessfulBuild/artifact/build/libs/pufferfish-paperclip-1.21.1-R0.1-SNAPSHOT-reobf.jar -O pufferfish.jar

# Запуск с оптимальными флагами
java -Xmx12G -Xms12G \
  -XX:+UseG1GC \
  -XX:+ParallelRefProcEnabled \
  -XX:MaxGCPauseMillis=130 \
  -XX:+UnlockExperimentalVMOptions \
  -XX:+DisableExplicitGC \
  -XX:G1NewSizePercent=28 \
  -XX:G1MaxNewSizePercent=40 \
  -XX:G1HeapRegionSize=16M \
  -XX:G1ReservePercent=20 \
  -XX:G1HeapWastePercent=5 \
  -XX:G1MixedGCCountTarget=3 \
  -XX:InitiatingHeapOccupancyPercent=10 \
  -XX:G1MixedGCLiveThresholdPercent=90 \
  -XX:SurvivorRatio=32 \
  -XX:+PerfDisableSharedMem \
  -XX:MaxTenuringThreshold=1 \
  -XX:+AlwaysPreTouch \
  -jar pufferfish.jar nogui

Для кого Pufferfish

✅ Используйте Pufferfish если:

  • Сервер с 100+ игроками онлайн
  • Много мобов (фермы, RPG)
  • Нужна максимальная производительность
  • Готовы настраивать агрессивные оптимизации
  • Ограниченные ресурсы сервера

❌ Не используйте если:

  • Маленький сервер (<30 игроков)
  • Paper достаточно производителен
  • Нужна 100% совместимость с некоторыми плагинами

Pufferfish - король производительности для больших серверов в 2026!


Категория 3: Ядра с расширенными функциями

Purpur - кастомизация и настройки

Общая информация

Описание: Форк Paper с акцентом на расширенные настройки и дополнительные функции.

Создатель: PurpurMC Team

Базируется на: Paper

Философия: “Paper + больше возможностей для администраторов”

Уникальные функции Purpur

1. Детальная настройка мобов

purpur.yml - настройки мобов:

mobs:
  # Зомби
  zombie:
    ridable: true  # Можно оседлать
    ridable-in-water: false
    ridable-max-speed: 0.75
    aggressive-towards-villager-when-lagging: false
    jockey:
      only-babies: true
      chance: 0.05
      try-existing-chickens: true
  
  # Жители
  villager:
    ridable: true
    # "Лоботомия" - отключить AI у далеких жителей
    lobotomize:
      enabled: true
      check-interval: 100  # Проверка раз в 5 секунд
    brain-ticks: 1  # Как часто тикать мозг
    search-radius:
      acquire-poi: 48  # Радиус поиска работы
      nearest-bed-sensor: 48
  
  # Крипер
  creeper:
    ridable: true
    allow-griefing: true
    bypass-mob-griefing: false
    charged-spawn-chance: 0.0
  
  # Эндермен
  enderman:
    ridable: false
    allow-griefing: true
    can-despawn-with-held-block: false
    ignore-projectiles: false
  
  # Свиночеловек
  piglin:
    ridable: true
    portal-spawn-modifier: 2000  # Реже спавнятся из порталов
  
  # Скелет
  skeleton:
    ridable: true
    feed-wither-roses: 0  # Шанс превратиться в иссушителя

2. Игровые механики

Настройка голода, урона, опыта:

gameplay-mechanics:
  player:
    # Голод
    hunger:
      starvation-damage: 1.0  # Урон от голода
    
    # Телепортация
    teleport-if-outside-border: true
    
    # АФК
    idle-timeout:
      kick-if-idle: true
      timeout: 900  # 15 минут
      count-as-sleeping: false
    
    # Критический удар
    critical-damage-multiplier: 1.5
    
    # Урон от падения
    fall-damage-multiplier: 1.0
    
    # Опыт
    exp-dropped-on-death:
      equation: expLevel * 7  # Формула дропа опыта
  
  # Мир
  daylight-cycle-ticks:
    daytime: 12000
    nighttime: 12000
  
  # Рост растений
  use-better-mending: false
  trident-loyalty-void-return-height: 0.0

3. Команды администратора

Дополнительные команды Purpur:

# Демо режим
/demo <игрок>  # Включить демо режим

# Кредиты
/credits <игрок>  # Показать титры

# Пинг
/ping  # Показать свой пинг
/ping <игрок>  # Пинг другого игрока

# ТПС
/tpsbar  # Показать TPS в боссбаре

# Компас
/compass  # Показать направление взгляда

4. Anvil (наковальня) настройки

anvil:
  allow-colors: true  # Цвета в названиях
  allow-minimessage-tags: true  # MiniMessage форматирование
  cumulative-cost: true  # Накопительная стоимость
  iron-ingots-used-for-repair: 0  # Сколько слитков = 25% прочности
  obsidian-used-for-damage: 0  # Обсидиан для починки
  allow-unsafe-enchants: false  # Небезопасные зачарования

5. Настройки блоков

blocks:
  # Сундуки
  chest:
    open-with-solid-block-on-top: false
  
  # Ender chest
  ender_chest:
    six-rows: false  # 6 рядов вместо 3
    use-permissions-for-rows: false
  
  # Воронки
  hopper:
    disable-move-event: false
  
  # Bed (кровать)
  bed:
    explode: true  # Взрыв в аду/энде
    explode-on-villager-sleep: false
  
  # Barrel (бочка)
  barrel:
    six-rows: false
  
  # Dispenser
  dispenser:
    apply-cursed-to-armor-slots: true

Производительность

Purpur vs Paper:

  • Производительность: идентична (базируется на Paper)
  • RAM: +5-10% из-за дополнительных функций
  • Совместимость: 100% Paper плагинов

Для кого Purpur

✅ Используйте Purpur если:

  • Нужны детальные настройки геймплея
  • Хотите кастомизировать мобов
  • Нужны дополнительные админ-команды
  • Paper недостаточно гибкий

❌ Не используйте если:

  • Стандартного Paper достаточно
  • Не нужны дополнительные настройки

Purpur = Paper + огромное количество настроек для тонкой кастомизации сервера.


Категория 4: Экспериментальные ядра

Folia - многопоточная революция

Общая информация

Описание: Экспериментальное ядро от Paper Team с революционной многопоточной обработкой регионов.

Создатель: PaperMC Team (Spottedleaf)

Год создания: 2023

Статус в 2026: Экспериментальное, но стабилизируется

Революционная архитектура

Традиционная архитектура (Paper, Purpur, Pufferfish):

┌─────────────────────────────┐
│   Главный поток (1 core)    │
│  - Обработка всего мира     │
│  - Все энтити               │
│  - Все чанки                │
│  - Редстоун                 │
│  - Физика                   │
└─────────────────────────────┘

Остальные CPU ядра простаивают

Проблема:

  • Не важно сколько у вас ядер CPU
  • Используется только 1 ядро для мира
  • Лимит ~20 TPS независимо от железа

Архитектура Folia:

Мир разделен на регионы (8x8 чанков)

┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ Region 1 │ │ Region 2 │ │ Region 3 │ │ Region 4 │
│ Thread 1 │ │ Thread 2 │ │ Thread 3 │ │ Thread 4 │
└──────────┘ └──────────┘ └──────────┘ └──────────┘
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ Region 5 │ │ Region 6 │ │ Region 7 │ │ Region 8 │
│ Thread 5 │ │ Thread 6 │ │ Thread 7 │ │ Thread 8 │
└──────────┘ └──────────┘ └──────────┘ └──────────┘

Каждый регион обрабатывается независимо!

Преимущества:

  • Использование всех ядер CPU
  • Масштабирование с количеством ядер
  • Теоретически - безлимитная производительность

Как работают регионы

Регион:

  • Размер: 8x8 чанков (128x128 блоков)
  • Независимая обработка
  • Собственный поток
  • Собственный тик-цикл

Пример:

Сервер с 200 игроками на CPU с 16 ядрами:

Paper:  1 ядро обрабатывает всех → 15 TPS
Folia: 16 ядер обрабатывают по региону → 20 TPS

Механизм работы

1. Разделение мира

Мир делится на регионы:
[0,0] - [7,7]   = Region 1
[8,0] - [15,7]  = Region 2
[0,8] - [7,15]  = Region 3
...

2. Планировщик регионов

Region Scheduler:

  • Распределяет регионы по потокам
  • Балансирует нагрузку
  • Переносит регионы между потоками

Пример:

Thread 1: Region 1, Region 5
Thread 2: Region 2, Region 6
Thread 3: Region 3, Region 7
Thread 4: Region 4, Region 8

3. Обработка межрегиональных взаимодействий

Проблема: Как обрабатывать взаимодействия между регионами?

Решение Folia:

a) Перенос энтити:

// Энтити переходит из региона в регион
Entity crosses border → Transfer to new region thread

b) Блоки на границе:

Редстоун сигнал через границу:
Region 1 → Queue signal → Region 2 обрабатывает

c) Синхронизация:

  • Минимальная блокировка
  • Lock-free структуры данных
  • Атомарные операции

Производительность Folia

Теоретический потенциал:

CPU ядерPaper TPSFolia TPS (идеал)Folia TPS (реально)
4 ядра208035-40
8 ядер2016060-80
16 ядер20320100-140
32 ядра20640150-200

Реальные тесты (2026):

Сценарий 1: Игроки распределены

  • 200 игроков по всему миру
  • CPU: Ryzen 9 7950X (16 ядер)
  • Paper: 12 TPS (перегруз)
  • Folia: 19 TPS (стабильно)

Сценарий 2: Игроки в одном месте

  • 200 игроков на спавне (1 регион)
  • CPU: Ryzen 9 7950X
  • Paper: 12 TPS
  • Folia: 13 TPS (нет прироста, все в одном регионе)

Вывод:

Folia эффективна только если игроки распределены по миру!

Ограничения и проблемы Folia

1. Совместимость плагинов - КРИТИЧЕСКАЯ ПРОБЛЕМА

Почему плагины ломаются:

Проблема A: Планировщики

// НЕ РАБОТАЕТ в Folia
Bukkit.getScheduler().runTask(plugin, () -> {
    // Этот код может выполниться в любом регионе!
});

// РАБОТАЕТ в Folia
entity.getScheduler().run(plugin, (task) -> {
    // Выполнится в регионе этой энтити
}, null);

Проблема B: Доступ к миру

// НЕ РАБОТАЕТ
World world = Bukkit.getWorld("world");
world.getBlockAt(x, y, z).setType(Material.STONE);
// Может быть другой регион!

// РАБОТАЕТ
region.execute(() -> {
    world.getBlockAt(x, y, z).setType(Material.STONE);
});

Проблема C: Итерация энтити

// НЕ РАБОТАЕТ - race condition
for (Entity entity : world.getEntities()) {
    // entity может переместиться в другой регион!
}

// РАБОТАЕТ
region.getEntities().forEach(entity -> {
    // Безопасно в рамках региона
});

Статистика совместимости (2026):

  • ✅ Работают: ~15% плагинов (адаптированные)
  • ⚠️ Частично: ~25%
  • ❌ Не работают: ~60%

Популярные плагины:

ПлагинСтатусПримечание
EssentialsXТребует переработки
WorldEdit⚠️Частично работает
VaultНе поддерживает регионы
LuckPermsАдаптирован
CoreProtectНе поддерживает
CitizensТребует переработки

2. Производительность не всегда лучше

Когда Folia НЕ помогает:

a) Игроки кучкуются

  • Спавн сервер: все в одном месте
  • Мини-игры: арены в одном регионе
  • PvP: бои в одной зоне

b) Малое количество игроков

  • <50 игроков: Paper достаточно
  • Overhead от многопоточности не окупается

c) Много взаимодействий между регионами

  • Большие редстоун схемы через регионы
  • Частые телепортации
  • Синхронизация замедляет

3. Сложность разработки

Для разработчиков плагинов:

  • Нужно переписывать весь код
  • Думать о thread-safety
  • Использовать Folia API
  • Тестировать race conditions

Пример адаптации:

// Старый код (Bukkit/Paper)
public void teleportPlayer(Player player, Location loc) {
    player.teleport(loc);
}

// Новый код (Folia)
public void teleportPlayer(Player player, Location loc) {
    // Получить регион назначения
    io.papermc.paper.threadedregions.scheduler.RegionScheduler scheduler = 
        Bukkit.getRegionScheduler();
    
    // Выполнить телепорт в правильном регионе
    scheduler.execute(plugin, loc, () -> {
        player.teleport(loc);
    });
}

Настройка Folia

folia.yml - специфичные настройки:

# Размер региона (не рекомендуется менять)
region-size: 8  # чанков

# Потоки
threads:
  # -1 = auto (кол-во ядер CPU)
  worker-threads: -1
  
# Планировщик
tick-executor:
  # Как часто проверять регионы
  tick-rate: 50  # миллисекунд (20 TPS)

# Миграция энтити между регионами
entity-scheduler:
  # Макс. перемещений за тик
  max-transfers-per-tick: 100

Установка Folia

# Скачать Folia
wget https://api.papermc.io/v2/projects/folia/versions/1.21.1/builds/latest/downloads/folia-1.21.1-latest.jar -O folia.jar

# Запуск (нужно МНОГО RAM для многопоточности)
java -Xmx24G -Xms24G \
  -XX:+UseG1GC \
  -XX:+ParallelRefProcEnabled \
  -XX:MaxGCPauseMillis=100 \
  -XX:+UnlockExperimentalVMOptions \
  -XX:+DisableExplicitGC \
  -XX:G1NewSizePercent=40 \
  -XX:G1MaxNewSizePercent=50 \
  -XX:G1HeapRegionSize=16M \
  -XX:G1ReservePercent=15 \
  -XX:InitiatingHeapOccupancyPercent=20 \
  -XX:+AlwaysPreTouch \
  -XX:+UseNUMA \
  -jar folia.jar nogui

Для кого Folia

✅ Используйте Folia если:

  • Огромный открытый мир
  • Игроки распределены по миру (SMP, survival)
  • Мощный CPU (12+ ядер)
  • Минимум плагинов
  • Готовы жертвовать совместимостью ради производительности
  • Понимаете риски экспериментального ПО

❌ НЕ используйте Folia если:

  • Нужна совместимость с плагинами
  • Мини-игры (игроки кучкуются)
  • Маленький/средний сервер (<100 игроков)
  • Спавн-сервер
  • Нужна стабильность

Идеальный кейс для Folia:

Тип: Огромный SMP сервер
Игроки: 500+ распределены по 10000x10000 миру  
CPU: AMD EPYC 32 ядра
Плагины: Минимум (только LuckPerms, адаптированные)
Результат: 20 TPS стабильно, Paper бы давал 10 TPS

Folia - это будущее, но в 2026 году еще не готово для массового использования.


Категория 5: Специализированные форки

Leaves - китайский инновационный форк

Общая информация

Описание: Форк Purpur от китайского сообщества с уникальными патчами и функциями.

Создатель: LeavesMC Team (Китай)

Базируется на: Purpur

Статус: Активно развивается в Китае

Уникальные особенности

1. Дополнительные оптимизации

Leaves патчи:

  • Улучшенная оптимизация редстоуна
  • Дополнительные кэши для энтити
  • Оптимизация китайских символов в чате
  • Улучшенная компрессия пакетов

2. Специальные функции

# leaves.yml
leaves-carpet-support: true  # Поддержка Carpet мода
fix-update-suppression: false  # Фикс update suppression
bbor-protocol-support: true  # Поддержка BBOR

Для кого Leaves

✅ Используйте если:

  • Понимаете китайский язык
  • Хотите экспериментировать
  • Нужны специфичные фиксы

❌ Не используйте если:

  • Не знаете китайский
  • Нужна англоязычная документация
  • Предпочитаете популярные ядра

Scissors - анти-эксплойт форк

Общая информация

Описание: Purpur с фокусом на патчи безопасности и анти-дюп меры.

Создатель: AtlasMediaGroup

Базируется на: Purpur

Цель: Максимальная защита от эксплойтов

Ключевые патчи безопасности

1. Анти-дюп патчи

Зафикшенные дюпы:

  • TNT дюп
  • Carpet дюп
  • Rail дюп
  • Gravity block дюп
  • End portal дюп
  • Donkey/Llama дюп

Настройка:

# scissors.yml
fixes:
  tnt-duplication: true
  carpet-duplication: true
  rail-duplication: true
  end-portal-duplication: true
  donkey-duplication: true
  gravity-block-duplication: true

2. Анти-чит патчи

Защита от:

  • Packet exploits
  • Book ban
  • Sign crash
  • Item NBT exploits
  • Chat exploits

3. Лимиты и ограничения

limits:
  max-book-page-size: 2560  # Анти book ban
  max-sign-line-length: 80   # Анти sign crash
  max-nbt-size: 2097152      # 2MB лимит NBT

Для кого Scissors

✅ Используйте если:

  • Анархия сервер
  • PvP сервер
  • Важна защита от дюпов
  • Нужен максимальный уровень безопасности

❌ Не используйте если:

  • Технический сервер (некоторые механики сломаны)
  • Разрешены дюпы
  • Нужна полная Vanilla совместимость

Scissors жертвует некоторыми механиками ради безопасности.


Итоговое сравнение всех ядер 2026

Полная таблица сравнения

ЯдроПроизвод.ПлагиныСтабильностьСообществоОсобенностиРекомендация
Vanilla2/100/1010/10ОгромноеОфициальноеТолько vanilla
Spigot4/109/109/10ОгромноеБазовые оптимизацииУстарело
Paper7/109/1010/10ОгромноеЗолотой стандарт⭐ Лучший выбор
Purpur7/109/109/10БольшоеГибкие настройкиДля кастомизации
Pufferfish9/108/108/10СреднееDAB, макс. производ.⭐ Для нагрузки
Folia10/10*2/106/10МаленькоеМногопоточностьЭкспериментально
Leaves7/109/108/10МаленькоеКитайские патчиДля энтузиастов
Scissors7/108/108/10МаленькоеАнти-эксплойтыДля PvP/Анархии

*при распределенных игроках

Рекомендации по выбору 2026

По размеру сервера

1-30 игроков:

Рекомендация: Paper
Почему: Идеальный баланс, не нужно больше

30-100 игроков:

Рекомендация: Paper или Pufferfish
Paper: Если много плагинов
Pufferfish: Если нужна производительность

100-500 игроков:

Рекомендация: Pufferfish
Почему: Максимальная производительность
Настройки: Включить все оптимизации DAB

500+ игроков:

Рекомендация: Folia или кластер Pufferfish
Folia: Если игроки распределены
Кластер: Если игроки кучкуются (BungeeCord)

По типу сервера

Survival/SMP:

1 выбор: Paper
2 выбор: Pufferfish (если лаги)
3 выбор: Folia (если 500+ игроков)

Мини-игры:

1 выбор: Paper
2 выбор: Purpur (для настроек)
НЕ используйте: Folia (игроки кучкуются)

Анархия:

1 выбор: Scissors
2 выбор: Pufferfish + анти-чит плагины

Креатив:

1 выбор: Paper
2 выбор: Purpur (больше настроек)

RPG/MMO:

1 выбор: Purpur (настройки мобов)
2 выбор: Pufferfish (производительность)

Технический (редстоун):

1 выбор: Vanilla или Paper
НЕ используйте: Scissors (ломает механики)

Чек-лист выбора

Ответьте на вопросы:

  1. Сколько игроков онлайн?

    • <30: Paper
    • 30-100: Paper/Pufferfish
    • 100+: Pufferfish
    • 500+: Folia
  2. Нужны плагины?

    • Да, много: Paper
    • Да, немного: Pufferfish
    • Нет: Vanilla/Folia
  3. Какой тип сервера?

    • Survival: Paper
    • Мини-игры: Paper
    • Анархия: Scissors
    • RPG: Purpur
  4. Какое железо?

    • Слабое: Pufferfish
    • Среднее: Paper
    • Мощное (16+ ядер): Folia
  5. Нужны настройки геймплея?

    • Да: Purpur
    • Нет: Paper

Полезные ссылки

Официальные сайты:

Инструменты:

Документация:

Сообщества:


Заключение

Главные выводы 2026:

  1. Paper - король для 80% серверов

    • Лучший баланс производительности и совместимости
    • Активная разработка
    • Огромное сообщество
  2. Pufferfish - для высоких нагрузок

    • Максимальная производительность
    • DAB система уникальна
    • Идеален для 100+ игроков
  3. Folia - будущее, но не сейчас

    • Революционная технология
    • Проблемы с плагинами
    • Подходит для специфичных кейсов
  4. Purpur - для перфекционистов

    • Тонкая настройка всего
    • Дополнительные функции
    • Paper + расширения

Начните с Paper. Если нужно больше - переходите на Pufferfish или Purpur. Folia только для экстремальных случаев!

Что НЕ использовать:

  • ❌ Vanilla (если нужны плагины)
  • ❌ Spigot (устарело)
  • ❌ CraftBukkit (мертво)
  • ❌ Yatopia (заброшено)
  • ❌ Airplane (заброшено)

Финальная рекомендация:

Сомневаетесь? → Используйте Paper
Нужна производительность? → Pufferfish  
Нужны настройки? → Purpur
Экспериментируете? → Folia