Как создать сервер Minecraft?

Хочешь создать свой сервер в Minecraft, чтобы поиграть с друзьями, либо открыть крупный игровой проект? Расскажем, что для этого может потребоваться, затронем Java Edition и немного Bedrock Edition.

Прежде, чем мы приступим

В первую очередь нужно понимать, что сервер в Minecraft - это программа, которая, как и любая другая, может быть запущена на твоём компьютере. Она обрабатывает все соединения с игроками и позволяет каждому из них видеть, что делают другие игроки.

Однако все мы хотим, чтобы сервер работал не только когда включен наш компьютер. Более того, если запускать сервер локально (на твоём персональном компьютере), можно столкнуться с рядом дополнительных проблем. Например, с открытием портов, получением "белого" IP адреса от провайдера и т.п. Самый простой способ их решить - обратиться к хостинг-провайдерам, например, к нам. Мы позаботимся о том, чтобы твой сервер был доступен круглосуточно, и все желающие могли к нему подключиться.

Создадим простейший сервер

Давай начнём с простого. Создадим самый обычный сервер в Minecraft Java Edition и запустим его на компьютере.

Скачиваем сервер

Самое главное, что тебе пригодится, - сам исполняемый файл сервера, его также называют "ядром". В нашей статье есть удобная табличка со всеми популярными ядрами и ссылками на их скачивание. Для примера рассмотрим классический вариант - Paper. Конкретно он предоставляет некоторые оптимизации, позволяющие работать ему быстрее, чем обычный, "ванильный", сервер, а также позволяет устанавливать плагины, в т.ч. разработанные для Bukkit и Spigot.

Разработчики Paper взяли за основу для своего проекта Spigot, в основе которого в свою очередь лежит Bukkit, который уже основан на официальном сервере Minecraft. Именно поэтому основная часть функционала, добавляемая Bukkit и Spigot доступна в Paper, а плагины для Bukkit и Spigot совместимы с Paper. Есть и другие проекты, основанные уже на Paper, о них ты можешь прочитать отдельно.

Для начала перейдём на страницу загрузки и скачаем .jar файл. На Bedrock Edition сервера, разработанные на Java, встречаются реже, и можно столкнуться с другими типами исполняемых файлов. Наиболее схожим процесс установки будет серверов семейства Nukkit (PowerNukkit, PowerNukkitX).

Далее рекомендуем создать отдельную папку, куда мы поместим скачанный файл. Отдельная папка пригодится, поскольку сервер создаст большое количество дополнительных файлов "рядом" с собой.

Папка с ядром

Для запуска .jar файлов нам потребуется Java. Minecraft последних версий требует версии Java версии 17 и выше. Установи последнюю версию JDK (Java Development Kit), если она у тебя ещё не установлена, прежде, чем продолжить.

Подготовка к запуску сервера

Иногда сервер можно запустить из папки прямо двойным кликом. В таком случае тебе будет доступен простой графический интерфейс для управления сервером. Однако обычно гораздо удобнее управлять сервером через консоль, поэтому сразу рассмотрим только этот вариант.

В той же папке, куда ты перенёс .jar файл сервера, создай новый текстовый файл. В будущем ты будешь использовать его для запуска сервера. Открыв этот файл в любом удобном тебе текстовом редакторе, напиши в нём следующий текст:

java -Xmx4G -jar <файл> --nogui
pause

В Linux и MacOS строку с pause стоит опустить.

В этом тексте замени <файл> на название скачанного файла с расширением. В нашем случае это будет paper-1.19.4-530.jar. Сохрани файл, после чего переименуй его в start.bat. Название может быть любым, однако расширение обязательно должно быть .bat, если ты на Windows, либо .sh, если ты на Linux или MacOS.

В Windows может потребоваться включить отображение расширений файлов, чтобы переименовать файл должным образом. Если твой файл запуска будет и дальше открываться в текстовом редакторе, включи отображение расширений файлов, убедись, что название файла не заканчивается на .txt и попробуй снова.

На Linux и MacOS может возникнуть необходимость выдать права на запуск файла, для этого используй команду:

chmod +x start.sh

Остановимся подробнее на содержимом файла. В примере есть 4 части. Ты мог встречать и другие вариации содержимого для этого файла, но некоторые вещи в них будут неизменны, а именно:

  • java - название программы, которую мы запускаем. В случае с большинством серверов для Java Edition это java.
  • -jar <файл> - указание на то, какой файл нужно запустить.
  • --nogui - указание на то, что нам не нужен графический интерфейс; мы будем работать с сервером только через консоль.

Также мы указали флаг -Xmx4G, он ограничивает использование оперативной памяти нашим сервером. В данном случае мы установили лимит в 4 ГБ. При желании этот флаг можно не указывать.

Слово pause является командой в Windows, которая позволяет подождать, пока пользователь нажмёт на клавиатуре какую-либо клавишу, прежде, чем завершить программу. Без неё при возникновении каких-либо ошибок окно с консолью сервера сразу закроется, и будет сложно что-либо понять.

Запускаем сервер

Теперь мы можем запустить сервер, просто открыв наш start.bat. При первом запуске вы увидите в логах сервера примерно такой текст:

Downloading mojang_1.19.4.jar
Applying patches
Starting org.bukkit.craftbukkit.Main
System Info: Java 17 (OpenJDK 64-Bit Server VM 17.0.5+8-LTS) Host: Linux 6.1.27-1-lts (amd64)
Loading libraries, please wait...
[00:00:01 ERROR]: Failed to load properties from file: server.properties
[00:00:01 WARN]: Failed to load eula.txt
[00:00:01 INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

Последняя строчка говорит нам о том, что для использования сервера нам нужно подтвердить согласие с условиями использования Minecraft. Для этого открываем файл eula.txt в любом текстовом редакторе и заменяем строчку eula=false на eula=true. После чего сохраняем файл и запускаем сервер опять.

На запуск сервера уйдёт некоторое время. Если всё сделано правильно, то в конце мы увидим строчку

[00:02:18 INFO]: Done (4.803s)! For help, type "help"

Она означает, что сервер запустился, и мы можем к нему подключиться. Для этого нужно зайти в игру и подключиться по адресу 127.0.0.1 или localhost, который указывает на текущий компьютер, где и запущен наш сервер.

По умолчанию сервер Minecraft использует порт 25565. В то же время, если мы не указываем порт при подключении, клиент Minecraft автоматически подставляет порт 25565.

Настраиваем сервер

Основной файл настроек сервера - server.properties. Его также нужно открыть в текстовом редакторе. Ты увидишь ряд параметров, определяющих основное поведение сервера. Их описание можно найти на Minecraft Wiki (более полное описание в английской версии).

При желании параметры можно изменить, после чего файл нужно сохранить, а сервер - перезагрузить.