Skip to main content

Command reference

Every command the Shatterveil server registers, with its permission, usage and examples.

:::info Generated from the server This page is a copy of docs/commands.md in the mcrpg repository, which is generated from the live command registry — the kernel's commands plus every module's — by the commands library. Because every command must declare a description, usage, examples and a permission to compile, the generated file can't be incomplete.

It can, however, lag behind the server: this site is updated by hand when the server's file changes. Regenerate the source with ./gradlew :server:generateCommandDocs in the server repo; CommandDocsTest fails the server build when the committed file is stale.

Snapshot below: server version 0.04.000 (Phase 0, stage B). :::

CommandPermissionDescription
/moduleshatterveil.module.manageLists, inspects, enables and disables modules while the server runs. Kernel modules can't be disabled; a module with enabled dependants needs --cascade. list and info also work with shatterveil.module.view.
/roleshatterveil.role.manageShows or changes a player's staff role. Roles: player, moderator, admin, hermes.

Who holds which permission is on the permissions module page. The console always passes every permission check.

module​

Lists, inspects, enables and disables modules while the server runs. Kernel modules can't be disabled; a module with enabled dependants needs --cascade. list and info also work with shatterveil.module.view.

Registered by: the module manager in server/ (see Architecture › Rule 1).

Aliases: /modules

Permission: shatterveil.module.manage

Usage:

/module list
/module info <id>
/module enable <id>
/module disable [--cascade] <id>

Examples:

/module list
/module info welcome
/module enable welcome
/module disable --cascade welcome

role​

Shows or changes a player's staff role. Roles: player, moderator, admin, hermes.

Registered by: the permissions module. Every change is an audit event (role.set).

Permission: shatterveil.role.manage

Usage:

/role get <player>
/role set <player> <role>

Examples:

/role get Alice
/role set Alice moderator
/role set Alice player

Player commands​

None yet. Phase 0 has no player-facing commands; /help is planned (shatterveil.help.use already exists as a permission node for it).