Серия «Minecraft»

14

Размышлизмы о Minecraft: создание своего сервера

Серия Minecraft

Пенного всем, а на связи Уханов. Поговорим о создании своего сервера. Тут и далее мы говорим про Java версию игры.

Всё описанное ниже основано на собственном опыте создания Minecraft серверов.

Идея как двигатель мотивации.

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

Идея в этом контексте должна определять вектор развития игрового сервера. ТЫ должен дать чёткий ответ на вопрос: чем твой сервер отличается от остальных? Заметь, я употребляю слово отличается. Он не обязательно должен быть лучше других серверов. Да и на начальном этапе точно таким не станет. Идея же важна с самого запуска. Почему игроки должны идти играть к тебе, а не куда-либо ещё? Твой сервер должен выделяться из большинства.

Мой ответ на этот вопрос:

Когда-то давно, в 2012 году я играл на сервере Шестой с модом SimCraft проекта minecraft.ru. Играл и играл, даже задонатил чутка. На сервере были некоторые ограничения по механизмам и строительству. Раздражало, но не слишком. В 2013 году проект пропал и сервера были отключены. Я упоминал его в прошлом посте. Собственно я отправился на поиски нового сервера для игры. И тут меня ждало разочарование: то донаты дикие, то донаты, нарушающие баланс игры, то конские ограничения по механизмам, а то и вовсе отключённый нижний мир! Так я познакомился с CraftBukkit и компанией.

Годы проб и ошибок, десяток самодельных сборок и провальных идей вылились в текущий проект. А получилось это всё тогда, когда появилась понятная и простая идея:

  • Нет ограничений в строительстве и механизмах

  • Нет доната. При желании игроки могут помочь, докупив алмазиков на рейтингах или пожертвовав на хостинг.

  • Небольшой онлайн. Вытекает из предыдущих пунктов, ведь широкие возможности, помноженные на большой онлайн = высокие мощности.

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

Доменное имя

Важный момент твоего сервера. В отличии от ip адреса, имя намного проще вводить. Сайт опять-же не помешает. Важный момент, если игровой хостинг предоставляет игровой порт, отличный от 25565, ты сможешь настроить в DNS SRV запись и игрокам не придётся указывать нестандартный порт.

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

На этом моменте я накололся, купив доменное имя batyacraft.tech. Домен купил за 900 рубей, а продление оказалось 9000 рублей. Пришлось менять доменное имя на batyamine.ru, что как понимаешь процесс непростой.

Хостинг

Основа игрового проекта. Тебе стоит определиться, где держать сервер: дома или арендовать мощности.

Если ты решишь на начальном этапе держать сервер дома, то стоит арендовать белый ip адрес у провайдера, найти подходящий для этого компьютер с хорошим процессором частотой от 3 Ггц, установить ИБП и озаботиться защитой от внешних атак. Для этих целей подойдёт роутер Mikrotik. Его можно вообще не покупать, а воспользоваться Mikrotik CHR и запустить его на виртуальной машине сервера. Перебор портов, и DDOS ждут тебя.

Собственно сервер

Это может быть как железка, так и виртуальная машина. Не VirtualBox конечно-же, Hyper-V или KVM вполне пойдёт. В качестве операционной системы лично я использую Debian. Как файловую систему под проект использую BTRFS. Её снапшоты очень выручают. Могу потом рассказать подробнее.

Далее, всё это безобразие должно выполнять код на Java. Если сервер будет с плагинами и модами, то рекомендуется использовать JDK, а не JRE. Стало быть, open-jre, входящая в дистрибутив не пойдёт, но так как с лицензией Oracle JDK есть нюансы использования, рекомендую использовать JDK Azul Zulu.

Запустили сервер, работает! Расслабляться рано, ведь нам нужен автозапуск сервера, его потребуется перезапускать по расписанию и с случае внезапной остановки. Рекомендую к применению скрипт для Systemd или Init.d. Скрипт брать тут. Мануал по нему там-же. Можно взять Minecraft Remote Toolkit. Он позволит перезапускать сервер по расписанию и в случае краха, а так-же даст telnet к консоли сервера, что приятно. Но учти, что Minecraft Remote Toolkit не запустится сам собой, воспользуйся скриптам выше. Схема такая: скрипт запускает Minecraft Remote Toolkit, а он запускает Minecraft. Minecraft Remote Toolkit я использую для запуска сервера на версии 1.5.2 из-за того, что Systemd не может корректно его перезапустить и тупо закрывает сервер без сохранения карты.

VPS

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

VPS. Технически - это виртуальная машина. Обрати внимание на скорость процессора, количество ядер и объём памяти. По настройке см. выше. Не забудь настроить Firewall, защитив SSH. Если тебе интересно, то я использую VPS от Infobox и SmartApe. Неплохо и недорого, если ты не будешь жестить с модами.

Игровой хостинг

Не используй бесплатный хостинг вроде Aternos. Это для поиграть с друзьями, ведь они зачастую выключают сервера, если там нет игроков.

Посоветовать что-либо конкретно сложно, но обрати внимание на частоту процессора, наличие MySQL, количество доступных портов и наличие планировщика, бекапов, sftp. Почитай отзывы, загугли как выглядит панель управления. Тебе же с ней работать! Немаловажным фактором будет возможность изменения ресурсов сервера в обе стороны.

Выбор ядра

Вспомни свою идею. Чего ты хочешь? Сервер с модами или плагинами? Или и то и другое? Это первое, с чем нужно определиться. Так ты сузишь круг ядер и уже там сможешь смотреть доступные версии и их стабильность.

Если нужны только моды без плагинов, то ставишь Forge или Fabric и погнал. Но зачастую администратору требуются плагины. Учитывай поддерживаемые версии ядер выбранных тобой модов. Не торопись качать самые последние версии. Собери таблицу в Excel. Так ты сможешь определиться с версией ядра. Например, захотел ты сервер на базе мода Electrical Age, а он только на версии 1.7.10. Вот ты и вышел на ядро Crucible.

Размышлизмы о Minecraft: создание своего сервера

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

Выбор таких ядер и их версий огромен, перечислю некоторые из них. Учти, что Sponge использует свои плагины.

Ядра только для плагинов:

Зачастую требуется совместить плагины и моды в одном сервере. Здесь выбор более ограничен. Такие ядра обновляются реже. При выборе ядра учти, что некоторые из них уже не поддерживаются. Так-же учитывай совместимость и стабильность ядер. например, команда Mohist ранее выпускала ядро 1.7.10. сейчас разработка прекращена, а совместимость ядра с модами и плагинами очень плохая, о чём они и заявляют, рекомендуя использовать для 1.7.10 ядро Crucible. Самое стабильное их ядро 1.12.2, но наработки они передали команде Magma, хоть и закрывают критические уязвимости. Ядро 1.16.5 в стадии активной разработки и его можно использовать в проде. Тем временем Magma прекратили разработку 1.16.5 и сконцентрировались на 1.12.2 и 1.18. Тем временем Crucible 1.7.10 развивается и продолжает радовать.

Ядра для серверов с плагинами и модами:

  • Mohist

  • Magma

  • Sponge Forge

  • Crucible MC

  • MCPC+

  • Cauldron

  • KCauldron

  • Thermos

    Знающие люди спросят, зачем я тут старья накидал вроде MCPC+, но отвечу, что они хоть и не обновляются, но работают. Сам держу один из серверов на 1.5.2.

Тематика сервера

Ты уже определился с идеей? Тогда давай определим тематику:

  • Технический сервер

  • Магический сервер

  • Может техномагический?

  • Или MMORPG?

  • Мини игры будут?

  • Может полёты в космос?

    Вариантов очень много, а нюансов и того больше! не мешай всё в одну кучу, так будет неинтересно.

Я сделал так:

  • Техномагический сервер RetroSpace 1.5.2

  • Технический сервер Machines 1.12.2

  • Технический сервер FlyWheel 1.16.5 (Построен на базе Create и Immersive Engineering)

ONLINE Статус сервера

Помнишь в конфиге есть такой параметр online-mode=true? Он определяет, смогут-ли к тебе заходить игроки без лицензии. Сложный вопрос и нет на него правильного ответа. Пустишь всех - будет больше игроков, но наличие лицензии фильтрует неадекватов и осложняет обход бана.

Далее подробнее поговорим защите от гриферства.

Показать полностью 1
33

Воспоминания о первом сервере и мысли о настоящем

Серия Minecraft

Всем привет, на связи Уханов.


Расскажу сегодня про то, что увлекает меня уже более десяти лет. Про Minecraft. Собственно играть я начал в далёком уже 2012 году благодаря своему начальнику. Он мне всё показал и рассказал, мне всё показалось странным: графика квадратная, крафты какие-то, но я решил попробовать.

Так я зарегистрировался на сервере minecraft.ru. Там было семь серверов различной тематики.

Были сервера: классический, Industrial Craft 2, mcMMO, Mo’Creatures, Simcraft и Terra Firma Craft. Собственно обитал я на сервере с модом Simcraft — он назывался «Шестой». Первым делом был куплен статус игрока. Это такой донат на минималках: убирал префикс newb в чате и увеличивал регион привата. Привилегий никаких, но и стоил недорого — рублей сто единоразово.

Играть было весело, народу было очень много. На сервере процветал натуральный обмен товарами, я зарабатывал строительством домов. Помню популярный вопрос в чате: кто приютит? Это нубы, не умеющие строить просились в чужой приват. Опасное дело кстати, ведь ты не знаешь: грифер он или нет?

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

Дальше лаунчер уже не мог никуда подключиться, а вместо сайта открывался пустая страница. Во ВКонтакте было много групп и энтузиастов, которые собирались воскресить Minecraft.ru. Почему-то именно Шестой сервер. Наверное из-за множества красивых построек.


Видео не моё, да ещё и Пикабу его обрезал:

В 2022 году на этом доменном имени открылся новый проект, но это уже совсем не то.

И вот на дворе 2013 год, у меня забрали игрушку. Так я познакомился с CraftBukkit, Modloader и Forge. Первый сервер просто крутился на компе, потом переехал на Debian 6 под VirtualBox, далее на Ubuntu 20 под Hyper-V. Я пробовал разные моды и плагины и со временем появилась идея.


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


Недавно мне написал один игрок, у которого взорвался реактор. Спросил, нет-ли у меня бекапа. Ниже скриншот карты после аварии.

Я всё вернул на место, и не вижу в этом никаких проблем. Мне самому комфортно играть без ограничений и я вижу, что игроки на сервере тоже неплохо себя реализуют. Люди играют, но не очень много. Так-ли востребован подобный формат сервера?

Как лучше привлечь игроков? Имеет смысл заниматься сервером Bedrock Edition? Не доната ради (его нет), а веселья для.


Ссылок приводить не буду. Кому нужно - найдёте у меня на сайте по ссылке в профиле.

Показать полностью 4 1
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества