Команды и права CannonRTP
CannonRTP регистрирует свои команды в пространстве имён cannonrtp.
- Корневая команда:
/cannonrtp - Алиасы:
/crtp,/wc
/wc — короткий алиас, который будут использовать большинство администраторов, но для каждой подкоманды используется одно и то же право cannonrtp.admin.
Команды администратора
create, place, remove, target и center сохраняют конфигурацию до применения изменения. При ошибке сохранения команда сообщает о ней, не выполняет перезагрузку и не применяет изменение. Перед повторной попыткой устраните указанную проблему с файлом.
После успешного изменения эти команды, а также delete, пересобирают все пушки, а не только отредактированную. Активные запуски отменяются, а их игроки возвращаются на место пушки, каждая пушка сбрасывает свою очередь точек назначения и начинает поиск заново, а все задержки запуска обнуляются.
| Команда | Отправитель | Описание |
|---|---|---|
/cannonrtp | Любой | Показывает заголовок справки, за которым следуют все доступные отправителю зарегистрированные подкоманды |
/wc help | Любой | То же, что и /cannonrtp — выводит справочный список |
/wc create <id> | Игрок | Создаёт новую конфигурацию пушки и размещает первый экземпляр в вашей текущей позиции. Отклоняет уже существующий id; чтобы добавить к нему размещение, используйте /wc place. |
/wc create <id> <display_name> | Игрок | То же, что выше, но задаёт пользовательское отображаемое имя (подчёркивания заменяются пробелами) |
/wc place <id> | Игрок | Добавляет ещё одно размещение существующей пушки в вашей текущей позиции |
/wc remove <id> | Игрок | Удаляет ближайшее размещение <id> в вашем текущем мире (файл конфигурации сохраняется) |
/wc delete <id> | Любой | Полностью удаляет файл конфигурации пушки |
/wc target <id> <world> | Игрок | Меняет целевой мир приземления пушки |
/wc center <id> | Игрок | Устанавливает центр поиска пушки на вашу текущую позицию |
/wc list | Любой | Перечисляет все размещения с отображаемым именем, статусом, размером очереди и последней деталью статуса |
/wc status | Любой | Тот же вывод, что и /wc list |
/wc probe | Игрок | Проверяет, прошла бы ваша текущая позиция все включённые проверки защиты |
/wc reload | Любой | Полностью перезагружает CannonRTP: все файлы конфигурации, пушки и адаптеры защиты, а также всё, что ожидает в папке imports/ |
/wc setup | Игрок | Открывает меню браузера контента в стиле Nightbreak (перечисляет установленные и доступные к загрузке пакеты пушек) |
/wc recommendedplugins | Любой | Открывает каталог Nightbreak с рекомендуемыми сопутствующими плагинами для CannonRTP |
/wc downloadpluginupdate | Любой | Загружает более новый jar-файл плагина CannonRTP из Nightbreak. Он применяется после следующего перезапуска сервера или раньше, если nightbreak.applyPluginUpdatesWithoutRestart в config.yml равно when-empty или immediately |
/wc applypluginupdate | Любой | Применяет уже загруженное обновление CannonRTP без перезапуска, перезагружая плагин из нового jar-файла. Команда отклоняется, если действительного более нового обновления в ожидании нет, если от CannonRTP зависит (через depend или softdepend) плагин другого автора или пока выполняется подмена другого плагина. Если новый jar-файл не включается, снова загружается предыдущий, а обновление остаётся в папке обновлений до следующего перезапуска. См. Применение обновлений без перезапуска. |
/wc downloadall | Любой | Загружает обновление плагина CannonRTP и все доступные пакеты контента из Nightbreak |
/wc downloadallcontent | Любой | Загружает все доступные пакеты контента CannonRTP из Nightbreak (только контент, без jar-файла плагина) |
/wc updatecontent | Любой | Загружает обновления для устаревших пакетов контента CannonRTP (алиас: /wc updateallcontent) |
/wc forcereinstallcontent <package|all> | Любой | Повторно загружает контент из Nightbreak, даже если локальная копия уже актуальна — используйте для восстановления повреждённых или отредактированных вручную файлов пакетов. Передайте all для всех уже загруженных пакетов или выберите через автодополнение один слаг пакета Nightbreak (free-cannon-model, cannonrtp-premium-cannon-model). |
/wc initialize открывает меню первоначальной настройки для игроков с cannonrtp.admin. /wc setup открывает каталог контента. Общая процедура инициализации регистрирует обе команды; наличие initialize не зависит от готовых режимов настройки.
Пока настройка не отмечена как завершённая (setupDone в config.yml), игроки с cannonrtp.admin примерно через 10 секунд после входа получают напоминание в чате с кликабельными ссылками на /wc initialize и /wc setup. Любой вариант в меню первоначальной настройки (Recommended Setup, Manual Setup, Use Current Content) устанавливает setupDone в true и отключает напоминание.
Все перечисленные выше команды администратора требуют право cannonrtp.admin.
Эти команды Nightbreak входят в состав CannonRTP
/wc setup,/wc initialize,/wc recommendedplugins,/wc downloadpluginupdate,/wc applypluginupdate,/wc downloadall,/wc downloadallcontent,/wc updatecontentи/wc forcereinstallcontentпредоставляются общей библиотекой MagmaCore, встроенной (shaded) в CannonRTP. Они регистрируются автоматически — вы не увидите их вplugin.yml. Отдельная команда/nightbreaklogin <token>(также из MagmaCore) регистрирует токен вашего аккаунта Nightbreak для премиум-загрузок, а/nightbreaklogoutотвязывает его (см. Отвязка сервера).MagmaCore также регистрирует
/wcchangelog, которая показывает администраторам непрочитанные заметки о выпусках CannonRTP и пакетов пушек. См. Уведомления об изменениях.
Подробности о том, чем именно управляют /wc setup, /wc downloadall и /wc updatecontent, см. на странице Пакеты контента.
createпротивplaceпротивremoveпротивdeleteОдна конфигурация пушки (
plugins/CannonRTP/cannons/<id>.yml) может управлять многими размещениями в мире.createсоздаёт конфиг и добавляет первое размещение.placeдобавляет ещё одно размещение к существующему конфигу.removeудаляет одно размещение (ближайшее к вам в вашем мире), но сохраняет конфиг.deleteполностью удаляет файл конфигурации, удаляя все размещения. Три встроенных файла (example_cannonrtp,cannonrtp_free_cannon,cannonrtp_premium_cannon) при последующей перезагрузке возвращаются со значениями по умолчанию и без размещений.
Взаимодействие с игроком
Для активации пушки нет игровой команды. Игроки используют CannonRTP, входя в радиус срабатывания пушки (triggerRadius, по умолчанию 1,75 блока).
Права
В plugin.yml зарегистрированы два права:
| Право | По умолчанию | Описание |
|---|---|---|
cannonrtp.admin | op | Требуется для каждой подкоманды администратора (включая встроенные команды Nightbreak setup / downloadall / updatecontent) |
cannonrtp.use | true | Требуется, чтобы игрок мог активировать любую пушку |
Общие команды /nightbreaklogin <token> и /nightbreaklogout (предоставляются MagmaCore, не объявлены в plugin.yml CannonRTP) используют собственное право nightbreak.login, по умолчанию op.
Как работает cannonrtp.use
Если у игрока нет права cannonrtp.use, пушка молча игнорирует этого игрока. Никакое сообщение об отказе не отправляется для этой базовой проверки — игрок просто проходит через зону пушки без запуска.
Дополнительное право на конкретную пушку
Конфигурация каждой пушки также может определять поле requiredPermission.
- Если
requiredPermissionпустое (по умолчанию), пушка проверяет толькоcannonrtp.use. - Если
requiredPermissionзадано и у игрока естьcannonrtp.use, но нет права на конкретную пушку, CannonRTP отправляет настроенное сообщениеnoPermission, включающее отображаемое имя пушки. Сообщение ограничено одним отправлением в три секунды на игрока на пушку.
Автодополнение по Tab
Команды, работающие с уже существующей пушкой (place, remove, delete, target, center), автодополняют <id> из списка известных идентификаторов конфигов пушек и принимают только уже существующий id. Исключение — /wc create: её <id> и <display_name> являются свободным текстом, поэтому автодополнение показывает лишь подсказку <id> / <display_name>. Команды, принимающие аргумент <world>, автодополняются из списка имён загруженных в данный момент миров, а /wc forcereinstallcontent автодополняет all и каждый слаг пакета Nightbreak.