Команды и права доступа

Предупреждение

These docs have not been fully updated to SpongeAPI 8 and may be out of date. If you feel like you can help update them, please submit a PR!

Команды — это почти единственный способ, которым операторы могут администрировать сервер и игроки могут взаимодействовать с ним.

In Sponge, commands follow a system of Разрешения. Permissions allow server operators to control who can access what commands. By default, all commands are granted to players with OP status. Players without operator status do not have access to administrative commands or commands that require an assigned permission node. A server operator can fine-tune who can access what commands by adding/negating permission nodes through a permissions plugin.

Примечание

Sponge не может управлять правами. Для добавления и удаления прав игрокам или группам, вы должны найти и установить плагин управления правами.

Команды оператора OP

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

Sponge

Следующие команды доступны игрокам со статусом оператора (или имеющие соответствующие права) на серверах Sponge.

Команда

Описание

Права

/sponge audit

Загружает отгруженные классы для того, чтобы включить отладку mixin.

sponge.command.audit

/sponge blockinfo

Shows the type and some additional information about the block you are looking at.

sponge.command.blockinfo

/sponge chunks

Вывод глобальных данных о чанках, данных в мире или измерении.

sponge.command.chunks

/sponge config

Изменяет глобальные настройки, настройки мира, или измерения.

sponge.command.config

/sponge entityinfo

Shows the type and some additional information about the entity you are looking at.

sponge.command.entityinfo

/sponge heap

Выгружает дамп динамической памяти виртуальной машины Java.

sponge.command.heap

/sponge metrics

Gets or sets whether metric (also known as server stats) collection is enabled for a given plugin.

sponge.command.metrics

/sponge mods

Lists currently installed forge mods. (SpongeForge only)

sponge.command.mods

/sponge plugins list

Lists currently installed Sponge plugins.

sponge.command.plugins

/sponge plugins refresh

Отправляет запрос плагинам на процедуру перезагрузки.

sponge.command.plugins.refresh

/sponge reload

Перезагружает глобальные настройки, настройки мира, или измерения.

sponge.command.reload

/sponge save

Сохраняет глобальные настройки, настройки мира, или измерения.

sponge.command.save

/sponge tps

Отображает количество тактов в секунду (tps) для каждого мира.

sponge.command.tps

/sponge version

Вывод данных о версии Sponge/SpongeAPI в консоль.

sponge.command.version

/sponge which

Prints which plugin provided the command, it’s aliases and alternatives.

sponge.command.which

/sponge:callback

Internally used for callback actions on Components (such as pagination). Not intended to be invoked by hand.

/sponge:help

View information on commands used on the server.

sponge.command.help


Параметры команд Sponge

  • /sponge chunks [-g] [-d dim] [-w world]

  • /sponge config [-g] [-d dim] [-w world] key value

  • /sponge save [-g] [-d dim|*] [-w world|*]

  • /sponge reload [-g] [-d dim|*] [-w world|*]

Command Conflicts

In cases of command conflict, Sponge provides a primary alias mechanism to specify which command is to be used. For example, Minecraft provides the reload command and Sponge provides the reload command. To specify which command to use, prefix it with minecraft or sponge and a :. So, to use Sponge’s reload command above, type in /sponge:reload. This approach can also be used to handle conflicts between mods and/or plugins. Do the same thing, just use the mod-id or the plugin-id and a :. An example is /examplemodid:tp.

Furthermore, the primary alias mechanism can be used to overcome incompatibilities. Let’s say a plugin registers a command, but the command is incompatible with your mod. If you can configure your mod to use a Minecraft native command or another plugin’s command, you can restore the expected behavior or prevent unexpected behaviors.

Примечание

Команда /sponge audit принудительно загружает все классы, которые не загрузились, позволяя просмотреть полный вывод всех переменных отладочной среды mixin. Для этого также требуется параметр mixins.checks, подробнее можно прочитать на Mixin wiki (англ.).

Совет

Here are a few simple examples of the sponge config command in action. Note that at least one target flag must be specified. Please see Настройка Sponge for a more detailed explanation.

  1. /sponge config -d minecraft:nether logging.chunk-load true

Здесь измерение указано, поэтому команда приведёт к изменению конфигурации измерения Nether (и следовательно всех миров Nether).

  1. /sponge config -w DIM1 logging.chunk-load true

Эта команда изменит конфигурацию для мира DIM1.

Sponge provides two permissions for debugging purposes:

  • Allow using Sponge’s block and entity tracking message channel: sponge.debug.block-tracking This message channel is used by the client (if the SpongeForge mod is installed) to display the block and entity owner and notifier in the debug view.

  • Allow hovering of command execution errors to get the stacktrace: sponge.debug.hover-stacktrace

Forge

The following commands are available only when using the SpongeForge coremod on Forge. Other implementations of the SpongeAPI, such as SpongeVanilla, do not include these commands.

Команда

Описание

Права

/forge tps

Отображает количество тактов в секунду (tps) для каждого мира.

forge.command.forge

/forge track

Включение отслеживания сущностей в виде блоков „tile entity“.

forge.command.forge


Для любых модификаций Forge, использующих стандартный API команд, разрешения предоставляются в виде <modid>.command.<commandname>.

Vanilla

Есть несколько команд, встроенных в стандартный Minecraft, которые также доступны на сервере Sponge. Список ниже не является полным, но содержит наиболее часто используемые команды. Эти команды доступны для игроков со статусом оператора (или конкретным разрешением). В общем разрешения для стандартных команд Minecraft на сервере Sponge имеют структуру minecraft.command.<command>, как показано ниже.

Команда

Описание

Права

/ban

Заблокировать игрока.

minecraft.command.ban

/ban-ip

Заблокировать игрока по IP-адресу.

minecraft.command.ban-ip

/banlist

Просмотреть заблокированных.

minecraft.command.banlist

/clear

Очистить инвентарь.

minecraft.command.clear

/deop

Снять статус оператора с игрока.

minecraft.command.deop

/difficulty

Изменить сложность игры.

minecraft.command.difficulty

/gamemode

Установить игроку режим игры.

minecraft.command.gamemode

/gamerule

Изменить игровое правило.

minecraft.command.gamerule

/give

Выдать предмет игроку.

minecraft.command.give

/kill

Убить игрока или сущность.

minecraft.command.kill

/op

Дать статус Оператора игроку.

minecraft.command.op

/pardon

Убрать игрока из списка забаненных — разбанить.

minecraft.command.pardon

/save-all

Сохранить сервер.

minecraft.command.save-all

/save-off

Отключить автоматическое сохранение сервера.

minecraft.command.save-off

/save-on

Включить автоматическое сохранение сервера.

minecraft.command.save-on

/setidletimeout

Задать время неактивности игрока перед отключением его от сервера.

minecraft.command.setidletimeout

/setworldspawn

Установить точку спавна в мире.

minecraft.command.setworldspawn

/stop

Остановить сервер.

minecraft.command.stop

/toggledownfall

Изменить погоду на солнечную/дождливую.

minecraft.command.toggledownfall

/tp

Телепортировать игроков/сущностей.

minecraft.command.tp

/weather

Установить погоду.

minecraft.command.weather

/whitelist

Управление белым списком сервера.

minecraft.command.whitelist

/worldborder

Управление ограничением мира.

minecraft.command.worldborder


Sponge also creates permissions for these Minecraft features:

  • Allow player to use the entity-selector in commands: minecraft.selector

  • Allow player to bypass spawn-protection in all worlds: minecraft.spawn-protection.override

  • Allow player to bypass force-gamemode in all worlds: minecraft.force-gamemode.override

  • Позволяет редактировать обычный командный блок с заданным именем: minecraft.commandblock.edit.block.<name>

  • Позволяет редактировать командный блок в вагонетке с заданным именем: minecraft.commandblock.edit.minecart.<name>

Примечание

These permissions use the actual name of the commandblock, which is normally @ by default.

There are also extra permissions managing the access to the server:

  • Treat the user as whitelisted: minecraft.login.bypass-whitelist

  • Allow this user to bypass the server’s player limit: minecraft.login.bypass-player-limit

Примечание

Sponge offers improved multi-world support, such as per-world world borders. By default, Sponge only changes the world border (or other world options) of the world the player is currently in. The vanilla behavior of setting it for all worlds can be restored using the global configuration and setting sponge.commands.multi-world-patches.worldborder (or the corresponding entry) to false. See global.conf for details. Sponge assumes that multi-world plugins also provide optimized configuration commands for those options and thus does not provide its own variants.

Команды игрока

Следующие команды, встроенные в Minecraft, доступны игрокам без статуса оператора.

Команда

Описание

Права

/help

View information on commands used on the server, by default the Sponge command will be used instead!

minecraft.command.help

/me

Сказать всем, чем Вы сейчас заняты.

minecraft.command.me

/say

Отправить сообщение всем.

minecraft.command.say

/tell

Приватное сообщение другому игроку.

minecraft.command.tell


A full list of vanilla commands can be found at: https://minecraft.wiki/w/Commands#List_and_summary_of_commands. Permissions for vanilla Minecraft commands on a Sponge server are of the structure minecraft.command.<command>.

Command Features

Sponge and most Sponge plugins support additional command features such as auto completion and hoverable text. The image below shows the output using the /sponge plugins command (yellow box). The elements in that list can be hovered over to get addition information such as the current version number (red box). Some elements in the example below also have additional actions bound to them. For example, the plugin entries in that list can be clicked to show more detailed information (purple box) about that plugin. This is equivalent to sending the /sponge plugins <pluginId> command. The auto completion can be triggered by pressing tab. Entering /sponge plugins  (with a trailing space) and then pressing tab will show a list of possible values (turquoise box) that can be used in that context. Pressing tab again will iterate the possibilities, if any. Theoretically it is possible to write most commands by pressing only tab and space (and maybe the first letter of each segment).

command features

Совет

If you are a plugin author and you want to use hoverable text and text actions in your plugin, then head over to our Text documentation.