Minecraft Server (CraftBukkit) — базовая настройка

Настроенные плагины для minecraft

Это первая и вводная статья по настройке сервера Minecraft на базе лучшего серверного мода игры — СraftBukkit.

  • Подготовка
  • Установка и русификация
  • Запуск сервера
  • Настройка
  • Общая информация по плагинам
  • Базовые плагины

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

Желательны Nginx и Mysql, базовое понимание утилиты Screen.

Установка и русификация #

Эти операции можно автоматизировать, но перед тем как перейдём к скрипту — немного теории:

Последний рекомендуемый билд сервера — http://ci.bukkit.org/job/dev-CraftBukkit/promotion/latest/Recommended/. Нужен именно последний рекомендуемый билд, а не просто последний. Иначе делайте ручкой плагинам.

Из русификатора нужно взять папку lang и font.txt и заменить ими файлы внутри файла .jar сервера. Это удобно сделать в менеджере архивов, так как .jar почти обычный .zip.

Скрипт делает всё это автоматически. К сожалению автор русификатора не предоставляет постоянную ссылку на последнюю версию, поэтому когда русификатор обновляется — ссылку в скрипте нужно править.

  • Скрипт скачивает последний рекомендуемый билд сервера и русификатор во временную папку.
  • Распаковывает и заменяет файлы первого нужными файлами второго.
  • Обновляет .jar файл сервера на получившийся русифицированный и удаляет временную папку.

Делаем скрипт исполняемым и запускаем:

Итак, мы получили рекомендуемый билд и русифицировали его.

Подписка на последний рекомендуемый билд #

Чтобы узнать о выходе новых версий можно использовать эти rss ленты:

Или, если вы предпочитаете получать сообщения на почту, вступить в эту группу:

Запускать сервер тоже будем скриптом и обернём в screen. Скрипт запускает сервер и перезапускает если он уже запущен.

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

Оффлайн режим (ваша гавань открыта для корсаров):

Сложность, диапазон 0-3:

Это вторая строчка, перед подключением к серверу.

В этом файле можно настроить базу данных и алиасы.

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

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

Многие из них предлагают на выбор хранить базу данных в Mysql или локально. Первый вариант всегда лучше. Во-первых он намного быстрее, во-вторых работать с базой будет проще — например если плагин создаст дубликаты записей и вам нужно будет это исправить.

Для удобства храните все данные плагинов в одной базе, но используйте для разных плагинов префиксы, например lwc_ для LWC.

Применение настроек #

Чтобы применить настройки, сервер нужно перезапустить:

Скрипт просто убьёт сервер и запустит заново — изменения мира не сохранятся.

Сейчас это абсолютно не критично, в начале на сервере сидите только вы, да и то не строете, а проверяете работает ли он.

А если бы на сервере играли другие игроки более правильно было бы перезапускать так:

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

Подключитесь к серверу и проверьте всё ли нормально.

Общая информация о плагинах #

Плагины можно найти на dev.bukkit.org. обычно информация об установке и использовании находится в самом топике.

Чтобы включить плагин скопируйте

jar в папку plugins и перезапустите сервер, хотя обычно можно обойтись командой reload. После этого может появиться папка plugins/

в ней хранятся настройки (как правило в .yml) и локальные базы данных.

Некоторые плагины идут сразу с настройками в комплекте (папка

соответсвенно её нужно скопировать в plugins), некоторые работают вообще без папки с настройками.

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

Он удобен, если вы работает в редакторе, который автоматически вставляет табы.

Список всех плагинов покажет команда plugins.

[RemoteToolkit]:(http://forums.bukkit.org/threads/admn-remotetoolkit-r10-a12-restarts-crash-detection-auto-saves-remote-console-1337.674/ ) #

Король перезапуска. Не плагин, а обёртка сервера в комплекте с плагином.

  • Автоматичекий перезапуск сервера через заданные интервалы или в заданное время (позволяет избежать утечек памяти).
  • Перезапуск сервера из игры.
  • Настраиваемые предупреждения о грядущих перезапусках.

Скопируйте содержимое serverdir в корень сервера.

Удалите rtoolkit.bat и открывайте rtoolkit.sh, чтобы изменить его следующим образом:

Это скрипт контейнера, который будет управлять сервером. Теперь, чтобы запускать сервер используйте именно его, а не minecraft.sh.

Отключим удалённый доступ:

И настроим параметры сервера:

Сервер, который будет запускать обёртка:

Предупреждения перед перезапуском и выключением:

Интервал автоматической перезагрузки сервера, чем меньше у вас оперативной памяти, тем чаще нужно перезагружать сервер (оптимальным значением будет 6-8 часов):

Если у вас достаточно оперативной памяти — сервер лучше перезапускать раз в сутки, рано утром, я использую именно этот вариант.

Для этого указываем время в формате HH:MM:

Перезапускайте сервер скриптом rtoolkit.sh и подключайтесь к нему. Теперь вы можете перезапускать его из игры:

Можно не вводить имя, тогда команда будет использовать имя игрока вводящего команду:

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

Количество сохраняемых файлов:

[Plugin Info]:http://dev.bukkit.org/server-mods/plugin-info/ #

Генерирует .txt или выводит в консоль список плагинов и их версий. Позволяет быстро оценить, какой плагин нужно обновить.

Плагин нужен потому, что встроенная команда plugins не показывает версии.

И включите .txt список

И по желанию задайте произвольный путь для генерации списка:

Список можно посмотреть и из консоли:

Minequery:http://minestatus.net/minequery #

Настройки не требует, позволяет использовать информеры.

Чтобы плагин работал — сначала установите WorldEdit:http://dev.bukkit.org/server-mods/worldedit/. внутриигровой редактор карты.

О нём будет сказ в отдельной статье, пока просто скопируйте WorldEdit.jar и CommandHelper.jar в папку plugins и перезагрузите плагины командой reload.

В файле config.txt находится множество примеров базовых скриптов и алиасов, советую переименовать его в config.txt.examples, создать новый пустой файл config.txt и наполнять его по мере необходимости:

Макрос из двух команд: