Как создать сервер в Майнкрафт
Собственный сервер даёт полный контроль над миром и правилами игры. Это возможность играть с друзьями без оплаты ежемесячных подписок…
Собственный сервер даёт полный контроль над миром и правилами игры. Это возможность играть с друзьями без оплаты ежемесячных подписок, устанавливать любые модификации, создавать мини-игры или технические сборки. Сервер запускается как отдельная программа на компьютере: он обрабатывает логику игры, а клиенты игроков подключаются к нему. Процесс создания состоит из выбора ядра, базовой настройки конфигов и открытия доступа к сети.
Выбор серверного ядра
Тип ядра определяет функционал сервера. Невозможно установить Forge-моды на Paper или плагины на Vanilla.
Тип ядра | Поддержка | Для чего подходит |
Vanilla | Только датапаки | Чистое выживание, спидраны. Худшая оптимизация. |
Paper | Плагины (Bukkit/Spigot/Paper) | Публичные серверы, выживание с друзьями, мини-игры. Отличная оптимизация. |
Purpur | Плагины (Paper) + свой конфиг | Как Paper, но с тонкой настройкой механик (например, разрешить езду на пчёлах). |
Fabric | Моды (Fabric) | Технические серверы (Carpet mod), ванильные+ сборки, оптимизация (Lithium). |
NeoForge / Forge | Моды (Forge/NeoForge) | Тяжёлые модпаки с новыми измерениями, механизмами, магией. |
Для 90% приватных серверов без больших глобальных модов Paper является оптимальным выбором. Он не требует установки модов на клиенты игроков (всё заходит с ванильного клиента), поддерживает плагины для привата территорий и работает быстрее официального ядра.
⚠️ Важно: Гибридные ядра (Arclight, Mohist), которые поддерживают и моды, и плагины одновременно, часто ломают механики модов и вызывают нестабильность. Выбирай что-то одно: либо плагины, либо моды.
Требования к системе и подготовка
Сервер потребляет оперативную память (RAM) и ресурс процессора. Видеокарта для сервера не имеет значения — генерация мира идёт исключительно на CPU.
Для 2–5 игроков (Paper):
RAM: 2–3 ГБ выделенной памяти.
CPU: любой современный процессор от 4 ядер.
Для 10+ игроков или тяжёлых модпаков (NeoForge):
RAM: 6–8 ГБ выделенной памяти.
CPU: высокая производительность на одно ядро.
Установка Java
Minecraft 1.21+ требует Java 21 (для версий 26.1+ нужна Java 26). Сервер не использует встроенную в клиент Java, её нужно устанавливать в систему отдельно.
Скачай JDK 21 (или JDK 26) с официального сайта Oracle.
Установи, обязательно активировав опцию “Add to PATH” в инсталляторе.
Проверь в терминале: java -version. Должно вывести версию 21.0.x.
Базовая установка и запуск
Пример установки для ядра Paper:
Шаг 1. Скачивание ядра
Перейди на официальный сайт papermc.io, выбери версию игры (например, 26.1) и скачай файл. Создай пустую папку для сервера и перемести файл туда. Переименуй его в server.jar для удобства.
Шаг 2. Создание файла запуска
Сервер не запускается двойным кликом. Нужно выделить ему память через скрипт.
Создай в папке сервера текстовый документ start.txt,
открой его и вставь код:
DOS
java -Xmx4G -Xms4G -jar server.jar nogui
pause
Параметр -Xmx4G устанавливает максимальный лимит оперативной памяти (4 ГБ). -Xms4G – стартовый объём. Сохрани файл и измени его расширение с .txt на .bat (для Windows).
На Linux/macOS создай start.sh и добавь #!/bin/bash первой строкой.
Шаг 3. Принятие EULA
Запусти start.bat. Консоль откроется на несколько секунд и закроется. Открой новый файл eula.txt. Измени строку eula=false на eula=true. Это официальное согласие с лицензионным соглашением разработчиков.
Шаг 4. Полноценный запуск
Снова запусти start.bat. Сервер сгенерирует мир и файлы конфигурации. В консоли появится сообщение Done!. Останавливай сервер исключительно командой stop в консоли, иначе мир может повредиться.
Настройка server.properties
Файл server.properties содержит главные настройки сервера. Чтобы открыть его, нажмите ПКМ (правой кнопкой мыши) по файлу и выберите “Открыть с помощью…”, после выберите “Блокнот” или любой другой текстовый редактор.\
Ниже таблица с дефолтными настройками server.properties и описанием каждого параметра:
Параметр | Значение | Описание |
accepts-transfers | FALSE | Определяет, принимает ли этот сервер перенаправления (трансферы) игроков с других серверов. |
allow-flight | FALSE | Разрешает или запрещает полёты на сервере в режиме выживания (если игрок использует сторонние модификации). При false сервер будет кикать таких игроков. |
broadcast-console-to-ops | TRUE | Если включено, результаты выполнения консольных команд будут отправляться в чат всем операторам (администраторам) сервера. |
broadcast-rcon-to-ops | TRUE | То же, что и предыдущее, но для команд, отправленных через удалённый доступ (RCON). |
bug-report-link | (пусто) | Ссылка, которая будет показана игрокам на экране при отключении от сервера из-за ошибки или сбоя. |
debug | FALSE | Включает режим отладки (debug mode) для расширенного логирования ошибок. |
difficulty | easy | Уровень сложности на сервере (peaceful — мирно, easy — легко, normal — нормально, hard — сложно). |
enable-code-of-conduct | FALSE | Требовать ли от игроков согласия с правилами поведения Microsoft (Code of Conduct) при подключении. |
enable-jmx-monitoring | FALSE | Разрешает использование JMX (Java Management Extensions) для мониторинга производительности сервера. |
enable-query | FALSE | Включает протокол GameSpy4 (Query), который позволяет сторонним сайтам-мониторингам получать информацию о сервере (онлайн, плагины). |
enable-rcon | FALSE | Включает удалённый доступ к консоли сервера (RCON) для управления без прямого доступа к терминалу машины. |
enable-status | TRUE | Позволяет серверу отображаться как «онлайн» в списке серверов клиента игры. |
enforce-secure-profile | TRUE | Требует, чтобы у игроков были подписанные публичные ключи профиля Mojang (защита от подделки сообщений в чате). |
enforce-whitelist | FALSE | Если true, сервер принудительно выгонит игроков, которых нет в «белом списке» (whitelist), когда этот список активируется. |
entity-broadcast-range-percentage | 100 | Контролирует дальность (в процентах), на которой сервер отправляет клиенту данные о сущностях (мобах, других игроках, предметах). |
force-gamemode | FALSE | Принудительно устанавливает игрокам игровой режим по умолчанию при каждом подключении к серверу. |
function-permission-level | 2 | Уровень прав доступа (от 1 до 4) для функций, выполняемых через датапаки (datapacks). |
gamemode | survival | Игровой режим по умолчанию (survival, creative, adventure, spectator). |
generate-structures | TRUE | Определяет, будут ли генерироваться структуры в мире (деревни, подземелья, храмы и т. д.). |
generator-settings | {} | Специальные настройки для генератора мира (обычно используется для кастомных миров). |
hardcore | FALSE | Режим «Хардкор». Если true, после смерти игрок переходит в режим наблюдателя навсегда. |
hide-online-players | FALSE | Если true, скрывает список ников активных игроков в меню многопользовательской игры. |
initial-disabled-packs | (пусто) | Список датапаков, которые будут отключены при создании нового мира. |
initial-enabled-packs | vanilla | Список датапаков, включённых по умолчанию (базовая игра «vanilla»). |
level-name | world | Название папки, в которой хранятся файлы вашего мира. |
level-seed | (пусто) | Сид (числовое зерно) для генерации мира. Если пусто, сгенерируется случайный. |
level-type | minecraft\:normal | Тип генерации мира (normal — обычный, flat — плоский, large_biomes — крупные биомы, amplified — горный). |
log-ips | TRUE | Определяет, будут ли записываться IP-адреса игроков в лог-файлы сервера. |
management-server-* | (разные) | Группа параметров (порты, ключи, настройки) для внешних инструментов управления сервером (используется редко). |
max-chained-neighbor-updates | 1000000 | Лимит цепных обновлений блоков (например, при взрыве ТНТ или сложных схемах редстоуна) для предотвращения зависания сервера. |
max-players | 20 | Максимальное количество игроков, которые могут одновременно находиться на сервере. |
max-tick-time | 60000 | Максимальное время (в миллисекундах) выполнения одного «тика». Если сервер «задумается» дольше этого времени, он автоматически выключится (защита от «мёртвого» зависания). |
max-world-size | 29999984 | Максимальный радиус границы мира (в блоках). |
motd | A Minecraft Server | Message Of The Day. Описание/название сервера, которое игроки видят в списке серверов. |
network-compression-threshold | 256 | Минимальный размер пакета (в байтах), после которого сервер начнёт его сжимать для экономии интернет-трафика. |
online-mode | TRUE | Очень важный параметр. Если true — пускает только игроков с лицензионной игрой. Если false — позволяет заходить игрокам с «пиратских» лаунчеров. |
op-permission-level | 4 | Уровень прав операторов по умолчанию (1-4, где 4 даёт доступ ко всем командам, включая stop). |
pause-when-empty-seconds | -1 | Время простоя (в секундах), после которого сервер ставит мир «на паузу», если нет игроков (-1 означает отключено). |
player-idle-timeout | 0 | Время (в минутах), после которого неактивного (AFK) игрока автоматически кикает. 0 — отключено. |
prevent-proxy-connections | FALSE | Запрещает подключение игроков, использующих VPN или прокси (работает в связке с системой аутентификации Mojang). |
query.port | 25565 | Порт для протокола Query (если он включён параметром enable-query). |
rate-limit | 0 | Максимальное количество пакетов от клиента к серверу. Используется для защиты от спама пакетами (0 — отключено). |
rcon.password | (пусто) | Пароль для удалённого доступа к консоли сервера (нужно заполнить, если enable-rcon=true). |
rcon.port | 25575 | Порт для RCON-соединения. |
region-file-compression | deflate | Алгоритм сжатия файлов мира (регионов). deflate является стандартным и самым распространённым. |
require-resource-pack | FALSE | Если true, игрок не сможет зайти на сервер, пока не согласится загрузить серверный ресурспак. |
resource-pack | (пусто) | Прямая ссылка (URL) на .zip архив ресурспака сервера, который будет предложен игрокам. |
resource-pack-id | (пусто) | Уникальный идентификатор ресурспака (UUID). |
resource-pack-prompt | (пусто) | Сообщение, которое увидит игрок при предложении загрузить ресурспак (например: «Пожалуйста, загрузите пак для лучшей игры»). |
resource-pack-sha1 | (пусто) | SHA-1 хеш архива с ресурспаком. Нужен для того, чтобы клиент не загружал пак заново, если он не изменился. |
server-ip | (пусто) | IP-адрес для «привязки» сервера. Обычно оставляют пустым, чтобы сервер работал на всех сетевых интерфейсах машины. |
server-port | 25565 | Основной порт сервера, по которому будут подключаться игроки. |
simulation-distance | 10 | Радиус (в чанках) вокруг игрока, в пределах которого симулируется мир (растут растения, ходят мобы, работают механизмы). |
spawn-protection | 16 | Радиус защиты зоны спавна (в блоках). В этой зоне обычные игроки не могут ломать или ставить блоки. |
status-heartbeat-interval | 0 | Интервал отправки расширенных данных о статусе сервера (обычно не используется). |
sync-chunk-writes | TRUE | Делает сохранение чанков на диск синхронным (более надёжно для избежания потери данных мира при сбоях, но может немного замедлить сервер). |
text-filtering-config | (пусто) | Настройка сторонней системы фильтрации нецензурных слов в чате. |
text-filtering-version | 0 | Версия API для системы фильтрации текста. |
use-native-transport | TRUE | Позволяет серверу использовать оптимизированные сетевые библиотеки системы (например, epoll для Linux), что улучшает производительность сети. |
view-distance | 10 | Дальность прорисовки (в чанках), отправляемая сервером клиенту (на что опирается дальность видимости игрока). |
white-list | FALSE | Включение «белого списка». Если true, на сервер смогут зайти только игроки, чьи ники добавлены в этот список (командой /whitelist add <ник>). |
⚠️ Важно: Если ставишь online-mode=false, любой игрок сможет зайти под ником администратора. Обязательно устанавливай плагин на авторизацию (например, AuthMe Reloaded) для защиты.
Как установить плагины
Плагины расширяют возможности сервера без необходимости устанавливать моды игрокам. Работают только на Paper, Purpur и Spigot.
Скачай плагин в формате .jar.
Помести файл в папку plugins внутри сервера.
Перезапусти сервер (stop -> start.bat).
В папке plugins появится папка с конфигами плагина, где редактируются его настройки (обычно в файле config.yml).
Как установить моды
Для игры с модами нужно ядро Fabric или NeoForge. Все игроки должны иметь идентичный набор модов в своём клиенте.
Для Fabric:
Скачай инсталлятор с fabricmc.net.
Запусти его, выбери вкладку «Server», укажи версию игры и пустую папку. Нажми «Install».
Запускай скачанный fabric-server-launch.jar через start.bat.
Кидай моды в сгенерированную папку mods. Для Fabric обязательно нужен мод Fabric API.
Для NeoForge:
Скачай инсталлятор с neoforged.net.
Запусти, выбери «Install server» и укажи папку.
После установки запусти файл run.bat (инсталлятор сам его создаёт).
Размести серверные моды в папке mods.
Клиентские моды (миникарты, шейдеры, оптимизация отображения вроде Sodium) ставить на сервер запрещено — они вызывают краш ядра при запуске.
Как впустить игроков на сервер
Способ 1: Port Forwarding
Лучший способ с наименьшим пингом. Требует доступа к роутеру.
Зайди в панель настроек роутера (192.168.1.1 в браузере).
Найди раздел «Port Forwarding» или «NAT».
Создай правило: порт 25565, протокол TCP/UDP, локальный IP — адрес твоего компьютера (узнай через ipconfig).
Игроки подключаются по твоему внешнему IP-адресу (сайт 2ip.ua).
Способ 2: Туннели (Playit.gg)
Если провайдер блокирует порты.
Скачай программу с playit.gg.
Запусти её вместе с сервером. Она откроет страницу в браузере.
Зарегистрируйся, и сервис выдаст публичный адрес (например, auto-bridge.playit.gg).
Игроки вводят этот адрес в игру.
Способ 3: Radmin VPN
Установи Radmin VPN на всех компьютерах.
Создай сеть и дай друзьям название.
Они присоединяются к сети.
Игроки подключаются по IP-адресу твоего ПК, указанному в Radmin VPN.
Технические детали / Как это работает внутри
Сервер Minecraft является однопоточным приложением. Основной игровой цикл (tick loop), который обрабатывает движение мобов, физику и механизмы, выполняется исключительно на одном ядре процессора.
Игра пытается выполнять 20 тиков в секунду (TPS — Ticks Per Second). На один тик выделяется 50 миллисекунд. Если расчёты занимают больше времени, TPS падает и игроки ощущают задержки. Именно поэтому для сервера тактовая частота одного ядра важнее общего количества ядер.
Многопоточность в ядрах вроде Paper используется только для асинхронной загрузки чанков с диска и сетевой обработки, но сама логика игры остаётся в одном потоке.
Базовые команды администратора
Вводятся в консоли сервера (без /).
Действие | Команда |
Выдать права оператора | op [ник] |
Забрать права | deop [ник] |
Включить белый список | whitelist on |
Добавить в белый список | whitelist add [ник] |
Кикнуть игрока | kick [ник] [причина] |
Забанить игрока | ban [ник] [причина] |
Сохранить мир вручную | save-all |
Хостинг как альтернатива
Если домашний компьютер слабый, сервер можно арендовать.
Тип | Представители | Преимущества | Ограничения |
Бесплатные | Aternos, FalixNodes | Не нужно платить | Очереди на запуск, лаги при нагрузке, сервер выключается без игроков. |
Платные бюджетные | PebbleHost, Bloom.host | От 1$ за ГБ, работа 24/7 | Нужно платить ежемесячно. |
VDS/VPS | Hetzner, Oracle | Полный контроль над машиной | Требует навыков администрирования Linux. |
Частые ошибки и как их избежать
Ошибка 1: FAILED TO BIND TO PORT. Сервер не запускается, потому что порт 25565 уже занят. Часто бывает при запуске двух start.bat. Открой диспетчер задач и закрой все процессы Java(TM) Platform SE binary.
Ошибка 2: UnsupportedClassVersionError. Версия Java устарела. Для 1.20.5+ нужна Java 21, а для 1.16.5 — Java 11.
Ошибка 3: Лаги при быстром полёте. Сервер не успевает генерировать новые чанки. Установи плагин Chunky и предварительно сгенерируй мир в радиусе 5000 блоков.
Ошибка 4: Краш сервера Fabric/Forge при запуске. В папку mods попал клиентский мод (миникарта, Sodium). Сервер не имеет графического интерфейса и падает при попытке их загрузить.
Ошибка 5: Ошибка Invalid session при подключении. Игрок использует пиратский лаунчер при включённом online-mode=true. Измени значение на false в server.properties.
Вывод
Собственный сервер на базе Paper является оптимальным выбором для приватного выживания с друзьями, поскольку обеспечивает отличную производительность и позволяет добавлять плагины без изменения клиента игры. Для больших сборок с новыми механиками придётся использовать Fabric или NeoForge, которые требуют синхронизации модов между сервером и игроками. Главный вызов в настройке домашнего сервера — правильное открытие портов, но использование сервисов вроде Playit.gg решает проблему с закрытыми портами провайдера. Если производительности домашнего ПК не хватает, переход на недорогой платный хостинг гарантирует стабильный доступ 24/7.
Пока нет комментариев. Будьте первым.