Nukkit — это интересный проект, который, на мой взгляд, вполне имеет все шансы превратиться в интересную платформу для создания серверов для Minecraft Pocket Edition / Minecraft Windows 10 Edition.

Об этом проекте речь пойдёт ниже, однако сначала давайте остановимся на том, какие вообще существуют платформы для создания сервера для Minecraft Pocket Edition

Серверные платформы для Minecraft Pocket Edition

Официальной платформы для создания сервера Minecraft Pocket Edition / Minecraft Windows 10 Edition не существует. Теоретически, Вы можете запустить на компьютере Minecraft Windows 10 Edition (или попытаться запустить Minecraft Pocket Edition на Linux) и получить такой своеобразный ванильный сервер. Но… мы же ждём от сервера чего-то большего?!

PocketMine

В настоящее время существует, пожалуй, только один реальный способ создания сервера для MCPE — это сервер PocketMine-MP, рекомендуемая версия которого рассчитана на работу с Minecraft Pocket Edition 0.11 — т.е. безнадежно устарела. Когда выйдет версия для 0.13.0 — пока не ясно, при этом есть ещё один нюанс — платформой для проекта является php, т.е. сам сервер и плагины к нему пишутся на этом языке программирования. Конечно, php имеет ряд преимуществ: он достаточно прост в освоении и очень удобен… для создания сайтов. Он для этого и разрабатывался, поэтому делать на нём что-то ещё, на мой взгляд совсем не логично.

На мой взгляд, начиная разработку сервера для любой версии Майнкрафт, нельзя не забывать о bukkit’е — под эту платформу, написано (на Java) огромное множество плагинов. Система, которая позволит их достаточно просто переносить будет иметь явные преимущества перед всеми остальными. Лично мне совсем не хочется переносить какие-то из своих плагинов на PocketMine, а вот если бы он был написан на Java, то перенести практически любой плагин было бы достаточно просто и я с удовольствием этим бы занялся.

Dragonet

Можно попытаться создать сервер и на платформе Dragonet. Это тоже интересный проект: такой своеобразный комбайн, который не только содержит сразу два протокола — классический и для карманного Майнкрафта, но и предполагает запуск различных типов плагинов: Bukkit-плагины, Sponge-плагины и плагины на JavaScript (также планируется поддержка php-плагинов от PocketMine). Звучит впечатляюще, но у меня такой зоопарк доверия не вызывает. Возможно я не прав, но в любом случае к моменту, когда Dragonet превратится в стабильный пригодный для использования продукт у меня будет возможность пересмотреть свое мнение. И я буду только рад, если оно изменится.

MiNET

Серверная платформа, создаваемая с использованием C#. Пока для неё нет плагинов (по крайней мере в открытом доступе найти их не удалось), однако у системы похоже есть одно огромное преимущество: судя по всему по всему проект пользуется поддержкой проекта Hypixel, а такая поддержка многого стоит.

Один из тестовых серверов предлагаемый проектом — это как раз сервер Hypixel для Minecraft Pocket Edition.

Сервер: pe.hypixel.net — почему-то мой скин распространился на других игроков.

Сервер: pe.hypixel.net — почему-то мой скин распространился на других игроков.

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

Мобы, полноценный генератор миров, лодки, рельсы и вагонетки — вот список того, что не поддерживает платформа. Но уже и без этого можно обеспечить работу сервера с мини-играми.

ProtocolSupport — плагин для Spigot

Плагин ProtocolSupport для Spigot, разрабатываемый «отечественным производителем» — известным плагинотворцем Shevchik‘ом. На мой взгляд, это тоже очень интересное направление, которое вполне может дать результат, у которого будет громадное количество преимуществ перед другими проектами. Фактически Spigot+ProtocolSupport, позволят использовать огромнейшее количество плагинов на сервере Minecraft Pocket Edition. На текущий момент времени, как я понимаю, разработку пока ещё нельзя считать завершенной, при этом, тестовый сервер проекта работает очень быстро и по выглядит значительно лучше чем сервер Dragonet (нету глюков с двойной травой и цветами). Это как раз тот проект, за которым я обязательно буду следить и ждать момента, когда на его основе можно будет создать полноценный сервер для MCPE.

Nukkit

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

PocketMine + Bukkit = ?

Проект Nukkit появился относительно недавно: первые строки кода на github были размещены 23 мая, и на текущий момент он всё ещё далек от завершения. Сейчас уже можно попробовать его в действии, правда, у меня с этим возникли проблемы.

Nukkit написан полностью на Java, при этом, судя по всему, он хоть и писался под «впечатлением» от PocketMine — разработчик отдельно отмечает некоторую схожесть проектов, но безусловно у него есть и схожесть с BukkitAPI. По крайней мере, мне показалось, что без bukkit’а тут не обошлось.

На мой взгляд у тех, у кого есть опыт разработки плагинов для bukkit, изучить особенности Nukkit будет достаточно просто. Всё очень похоже и логично. И это безусловно очень большое преимущество.

Автор обещает большую скорость и стабильность сервера, по сравнению с PocketMine. Кроме того, с учетом, схожести с PocketMine, автор говорит о том, что тем кто создавал плагины на php будет довольно просто переписать их на Java. И это безусловно огромный плюс.

Я попробовал запустить сервер. Сначала у меня не получалось — при первой попытке удалось запустить сервер, подсоединиться к нему и повисеть в воздухе — почему-то не прогрузилась карта (возможно она просто не сгенерировалась). Но после того как перекачал билд сервера (разработка идёт полным ходом — новые версии, пусть пока нестабильные, выходят каждый день) всё заработало.

Ну куда же без команды /say :)

Ну куда же без команды /say :)

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

Первый плагин для Nukkit

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

Первый я назвал просто NoSteve, он призван запретить вход на сервер игрокам с именем Steve — ибо на MCPE такое стоит по умолчанию.

Screenshot_2015-12-06-11-09-02

Второй, — это порт ранее написанного (тоже очень просто) плагина SlashConsole, который я когда-то написал для Bukkit.

 

Если говорить о минусах проекта, то тут есть один очень важный: отсутствие достаточной информационной поддержки. Фактически, это своеобразная вещь в себе. Как о нём узнают сейчас люди — я не знаю, похоже вся информация распространяется от человека к человеку — по крайней мере так было со мной. У проекта нет ни форума ни какого-то сайта, на котором все заинтересованные могли бы делиться опытом. И если эта ситуация не изменится — это будет самоубийством хорошего начинания.

Вселяет надежду мысль, что авторы проекта это понимают: похоже в скором времени можно ожидать открытия сайта — доменные имена уже зарезервированы.

Сейчас же скачать и почитать о проекте можно только на GitHub’е, там же можно найти ссылку и скачать сам сервер Nukkit. Обсуждение же возможно пока только в виде комментариев к добавленному коду либо в чате проекта.

Скачать плагины:

NoSteve
SlashConsole
 

Кроме того, в чате проекта обнаружились русскоязычные участники, в кооперации с которыми была создана Группа ВК, куда приглашаю всех, кто заинтересовался новой серверной платформой.