MultiCommand — мощный плагин для автоматизации команд в Minecraft
На каждом сервере Minecraft рано или поздно возникает необходимость выполнять цепочки команд: настроить время, выдать предметы, отправить сообщения и запустить мини-игру одним кликом. Писать макросы в командных блоках не всегда удобно, а стандартные средства сервера ограничены. Плагин MultiCommand решает эту задачу элегантно — он позволяет объединять любое количество команд в один настраиваемый список и запускать их одной короткой инструкцией. Вы получаете гибкий инструмент для администрирования, автоматизации событий и создания собственных алиасов без глубоких знаний программирования.
Что такое MultiCommand и зачем он нужен
MultiCommand — это серверный плагин для Bukkit/Spigot, который даёт возможность создавать собственные команды-контейнеры. Внутри такого контейнера вы прописываете последовательность стандартных команд Minecraft с поддержкой переменных, задержек и выполнения от имени консоли. Например, можно сделать команду /event, которая меняет время на ночь, включает дождь, выдаёт всем игрокам зелье ночного зрения и выводит сообщение в чат. Всё это произойдёт мгновенно по одной команде, а права доступа настраиваются отдельно для каждого созданного списка.
Плагин активно использует анонимную статистику через Metrics для отслеживания использования, что помогает разработчику улучшать продукт. Никакие личные данные не передаются — только обезличенная информация о версии сервера и количестве вызовов.
Установка и первые шаги
Процесс установки предельно прост. Скачайте файл MultiCommand.jar и поместите его в папку /plugins вашего сервера. После перезапуска или перезагрузки сервера плагин сгенерирует конфигурационный файл config.yml в папке /plugins/MultiCommand. Именно там в дальнейшем можно будет настраивать ярлыки и менять количество доступных переменных. Кстати, если вы предпочитаете управлять модификациями через единый лаунчер, обратите внимание на foxygame.net — этот современный инструмент позволяет загружать плагины и моды прямо из меню, гибко комбинируя их в удобные сборки для сервера или клиента.
После установки базовые команды плагина становятся доступны с правами по умолчанию, но для полноценной работы потребуется настроить разрешения через любой менеджер прав (LuckPerms, PermissionsEx и другие).
Создание и наполнение списка команд
Работа с MultiCommand строится вокруг главной команды /muco. Чтобы создать новый список, выполните:
/muco create <имя_списка>
Например, /muco create morning создаст пустой контейнер с именем morning. Теперь его нужно наполнить. Для добавления команды используется:
/muco add <имя_списка> <команда_со_слешем>
Важно: первой всегда добавляется та команда, которая выполнится первой. Слеш в начале обязателен, но при вызове списка из консоли он автоматически удаляется. Допустим, мы хотим, чтобы утро наступало красиво:
/muco add morning /time set 0/muco add morning /weather clear/muco add morning /say Наступает рассвет!
Теперь любой игрок с правом MultiCommand.use.morning может написать /muco morning и запустить всю цепочку.
Переменные и динамические параметры
Статические команды полезны, но настоящая мощь плагина раскрывается с переменными. MultiCommand поддерживает до пяти (по умолчанию) позиционных переменных: $1, $2, $3, $4, $5. Их количество можно увеличить в config.yml через параметр maxvariables. Переменные подставляются из аргументов, переданных при вызове списка. Например, создадим список greet:
/muco create greet
/muco add greet /say $1 $2
Вызов /muco greet Привет Игрок отправит в чат «Привет Игрок». Можно комбинировать переменные с обычным текстом: /muco add greet /give $1 diamond $2 — тогда /muco greet Player 5 выдаст игроку Player 5 алмазов.
Необязательные параметры
MultiCommand умеет работать с опциональными аргументами. Для этого используются квадратные скобки. Правила просты:
/command $1 [$2]— $1 обязателен, $2 опционален./command [$1] [$2]— оба параметра необязательны.- Нельзя ставить обязательный параметр после опционального:
/command $1 [$2] $3вызовет ошибку.
При вызове списка с опциональными переменными вы просто передаёте нужное количество аргументов, а отсутствующие будут проигнорированы. Это особенно удобно для команд с вариативным синтаксисом.
Предопределённые переменные и задержки
Плагин предоставляет несколько готовых переменных, которые подставляются автоматически:
$playername— имя игрока, вызвавшего список.$playerworld— название мира, в котором находится игрок.$serveronlineplayers— количество игроков онлайн.$servermaxplayers— максимальное количество слотов сервера.
С их помощью можно создавать информативные сообщения или гибкие команды. Например, /muco add info /say Игрок $playername в мире $playerworld.
Ещё одна сильная сторона MultiCommand — задержки. Чтобы добавить паузу перед выполнением команды, укажите в начале строки время в секундах в квадратных скобках: [2]/say Подождали 2 секунды. Это позволяет делать обратный отсчёт, отложенные предупреждения или синхронизировать действия с игровыми механиками. Задержки можно комбинировать с выполнением от консоли.
Выполнение от имени консоли и отключение команд
Некоторые команды требуют прав сервера, которых у обычного игрока нет. Для этого перед командой (и перед задержкой, если она есть) ставится префикс [$c]. Тогда команда исполнится от имени консоли, обходя ограничения прав игрока. Пример: [$c][3]/say Я консоль, и я знал это сообщение за 3 секунды до вас. Это незаменимо при автоматическом обслуживании сервера, выдаче предметов или изменении геймплейных правил.
MultiCommand также позволяет блокировать отдельные команды, чтобы их нельзя было использовать вне созданных списков. Подсистема отключения управляется через /muco disable:
/muco disable disable <команда>— запрещает выполнение указанной команды./muco disable enable <команда>— снимает запрет./muco disable list— показывает все заблокированные команды.
Блокировка работает по началу строки: если запретить /say, то любые варианты /say привет или /say пока тоже перестанут работать. Игроки с правом MultiCommand.ignoreDisabledCommands не подвержены этим ограничениям.
Ярлыки (Shortcuts) и управление правами
В файле config.yml можно задать сокращения для любых команд. Например, чтобы вместо /time set 13000 писать просто /t set 13000, добавьте в секцию Shortcuts:
Shortcuts: t: time kill: ban
Теперь /t будет автоматически дополняться до /time, а /kill превратится в /ban. Это работает и в консоли, но будьте осторожны: ярлык может переопределить существующие команды, а проверка прав остаётся за тем плагином, который предоставляет целевую команду.
Права доступа в MultiCommand очень детализированы. Основные узлы разрешений:
MultiCommand.use.<имя>— выполнение конкретного списка.MultiCommand.list— просмотр всех списков.MultiCommand.show.<имя>— просмотр содержимого списка.MultiCommand.create.<имя>— создание нового списка.MultiCommand.remove.<имя>— удаление команд из списка.MultiCommand.delete.<имя>— удаление всего списка.MultiCommand.reload— перезагрузка конфигурации.MultiCommand.all— полный доступ ко всем функциям.
Также существуют групповые разрешения вроде MultiCommand.create.all для массовой выдачи прав. Плагин совместим со всеми основными системами прав, что делает его универсальным решением для любого сервера.
Заключение
MultiCommand превращает рутинное администрирование в творческий процесс. Возможность создавать сложные последовательности команд с переменными, задержками и консольным исполнением открывает простор для автоматизации событий, мини-игр и серверных ритуалов. Гибкая система прав и ярлыков позволяет делегировать функции модераторам, не раскрывая полный доступ к опасным командам. Плагин активно поддерживается, а его исходный код открыт на GitHub — вы всегда можете изучить внутреннее устройство или предложить улучшение. Если вы ищете способ сократить количество ручных действий и сделать управление сервером удобнее, MultiCommand определённо заслуживает места в вашей сборке.