Найти в Дзене
Minecraft Devs

Кейс создания сервера Minecraft BE [Nukkit/PowerNukkit] #1

Всех ещё раз приветствую! Это первая официальная часть нашего кейса по разработке проекта на ядре PowerNukkit с нуля до выгрузки на хостинг. Кто не читал прошлую статью, обязательно прочтите её для того, чтобы быть уверенными, что все инструменты у вас есть. Не будем тянуть время, поехали! Что сперва? Итак, начнём мы естественно с основы: начнём мы пожалуй делать сервер на своём ПК, если таковой позволяет, хотя Nukkit много не есть в отличии от Java. Создадим папку, в которой будет наш сервер, я создам папку на рабочем столе. Естественно открываем папку и закидываем туда наше ядро (файл с ядром я переименовал в server.jar, для удобства) Далее создаём файл с расширением *.bat, я назову файл start.bat. P.S. У кого нет расширения файлов, перейдите в Параметры -> Обновление и Безопасность -> Для разработчиков и поставьте галочку на пункт "Изменить параметры так, чтобы показывать расширения файлов. Открываем файл с помощью блокнота (или Notepad++, но я его не ставил, так как не вижу надоб

Всех ещё раз приветствую! Это первая официальная часть нашего кейса по разработке проекта на ядре PowerNukkit с нуля до выгрузки на хостинг.

Кто не читал прошлую статью, обязательно прочтите её для того, чтобы быть уверенными, что все инструменты у вас есть.

Не будем тянуть время, поехали!

Что сперва?

Итак, начнём мы естественно с основы: начнём мы пожалуй делать сервер на своём ПК, если таковой позволяет, хотя Nukkit много не есть в отличии от Java.

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

Папка, которую я буду использовать.
Папка, которую я буду использовать.

Естественно открываем папку и закидываем туда наше ядро (файл с ядром я переименовал в server.jar, для удобства)

-3

Далее создаём файл с расширением *.bat, я назову файл start.bat.

P.S. У кого нет расширения файлов, перейдите в Параметры -> Обновление и Безопасность -> Для разработчиков и поставьте галочку на пункт "Изменить параметры так, чтобы показывать расширения файлов.

Открываем файл с помощью блокнота (или Notepad++, но я его не ставил, так как не вижу надобности).

И вводим следующий текст:

java -Xmx2G -Xms2G -jar [имя_файла_ядра].jar

Важно! Цифры в Xmx и Xms это ваша оперативная память, не обязательно выделять всю, но ставьте с умом, от количества памяти зависит работоспособность сервера.

Я установил 2 Гигабайта оперативной памяти, мне этого хватит.

Далее, сохраняем файл и закрываем его, двумя кликами активируем сервер. Если вы правильно установили (или установили вообще) JDK 8 (Java 8), то сервер запустится без проблем.

Первым делом сервер предложит выбрать язык вашего сервера:

Напишите код языка в консоль, если вы хотите русский, то пишите rus
Напишите код языка в консоль, если вы хотите русский, то пишите rus

Вы можете выбрать любой удобный вам язык, я выберу Русский:

Вот в таком формате напишите код языка в консоль.
Вот в таком формате напишите код языка в консоль.

Наш сервер начнёт запуск:

-6

Данный релиз совсем новый и пока что не является стабильным, так что будет немного ошибок:

Не переживайте, на скорости работы сервера ошибки не отразятся, просто не все блоки поддерживает серверное ПО, в этом есть ошибки у всех ядер.
Не переживайте, на скорости работы сервера ошибки не отразятся, просто не все блоки поддерживает серверное ПО, в этом есть ошибки у всех ядер.

Парочка неподдерживаемых новых блоков является лишь недоработкой релиза, так как он выпущен в формате Beta, ну мы же с вами первооткрыватели, верно?)

А значит игнорируем данную проблему и идём дальше.

Сервер успешно запущен!

-8

У нас появились все необходимые файлы сервера:

-9

О всех файлах по пордку:

  • logs - сюда сохраняются все логи сервера (копия консоли)
  • players - сюда сохраняются файлы игроков (содержимое инвентаря, CID, позиция и т.д.)
  • plugins - сюда мы будем загружать плагины для нашего сервера
  • resource_packs - здесь мы будем загружать наши ресурс-паки для сервера
  • services - здесь хранится часть системных файлов, данная папка нам не пригодится в редактировании
  • worlds - в отличии от Java Edition, все миры будут хранится тут
  • banned-ips.json - тут будет список заблокированных по IP игроков
  • banned-players.json - тут будут ники всех заблокированных игроков
  • nukkit.yml - настройки ядра, к ним мы вернёмся позже
  • ops.txt - тут находится список всех операторов сервера
  • server.jar - наше ядро
  • server.properties - основной конфиг нашего сервера
  • start.bat - файл запуска
  • white-list.txt - тут хранятся ники всех игроков, находящиеся в "белом списке"

Итак, переходим к основным настройкам сервера!

Открываем файл server.properties.

У нас есть набор строк:

-10

О каждой строке по порядку.

  • motd - отображение сервера в списке серверов (текст)
  • sub-motd - вторая строка описания (если требуется)
  • server-port - порт сервера, по умолчанию 19132
  • server-ip - айпи сервера, рекомендуется оставлять ВСЕГДА 0.0.0.0
  • view-distance - дальность прорисовки (максимальная, игрок не сможет поставить дальность прорисовки выше, чем установлено на сервере, я оставлю 10)
  • white-list - включить/выключить белый список, я оставлю выключенным, ибо мне это ни к чему
  • achievements - достижения, я пожалуй включу (чтобы включить настройку, поставьте после символа "=" слово "on", а чтобы выключить - "off"
  • announce-player-achievement - уведомлять игрока о достижении
  • spawn-protection - защита спавна (игроки не смогут ломать блоки в заданном радиусе), мне это ни к чему, ибо далее я поставлю плагин на приваты, поэтому ставлю 0
  • max-players - максимальное количество игроков, ставьте по мощности вашего оборудования, я поставлю 75
  • allow-flight - разрешить полёт? Рекомендую оставить false, иначе игроки смогут использовать читы на полёт.
  • spawn-animals - спавн мобов (ставьте по мере требования, я отключу)
  • spawn-mobs - спавн монстров (ставьте по мере требования, я отключу)
  • gamemode - игровой режим по умолчанию, я оставлю 0 (выживание), есть ещё режимы (1 - креатив, 2 - приключение)
  • force-gamemode - принудительный игровой режим (рекомендую не трогать)
  • hardcode - если игрок будет умирать, его будет блокировать на сервере
  • pvp - пвп между игроками
  • difficulty - сложность
  • generator-settings - не рекомендую трогать
  • level-name - название основного мира
  • level-seed - сид мира
  • level-type - тип мира
  • allow-nether - включить или выключить незер
  • enable-query - библиотека запросов (если вы планируете размещение на мониторинге, то оставьте включённым, если нет, рекомендую отключить)
  • enable-rcon - обязательно включите, если вы будете устанавливать систему донатов
  • rcon-password - пароль для rcon, позже будем задавать другой, можете не редактировать пока что
  • auto-save - автосохранение мира
  • force-resource - вкратце, если у вас установлен ресурс-пак, игрок может выбрать, установить его или нет, если вы активируете данную функцию, то игрок должен будет обязательно установить ресурс пак для входа на сервер.
  • xbox-auth - будет ли обязателен Xbox для входа, вы можете выключить, чтобы игроки могли входить только по Xbox, я оставлю включённым (у меня это будет за место регистрации)
  • disable-auto-bug-report - будет ли сервер автоматически отправлять репорт об ошибке.

Сохраняем файл и закрываем.

В принципе основные настройки сервера заверены, можете запустить ещё раз сервер и посмотреть его работу.

А на этом первая часть заканчивается, всем спасибо, кто дочитали до конца, если остались вопросы - задавайте их в комментариях, всем поможем. Если статья была интересная, пожалуйста, не пожалейте лайк, а с вами была наша редакция, желаем вам хорошего дня, о связи!