Commands#
Every command VSU registers, with its syntax, permission node, and operator fallback. Syntax is taken from the Brigadier argument names in source, so required arguments appear in angle brackets and optional ones in square brackets.
The op fallback is the vanilla permission level that also satisfies the check. A player passes if LuckPerms grants the node or they hold that operator level; see Permissions for the exact rule. Console, command blocks, and functions always pass.
Two command families are documented on their own pages because they are large enough to need workflow context: moderation on Moderation and crates and keys on Kits & crates.
Movement#
| Command | Usage | Node | Op | Behaviour |
|---|---|---|---|---|
/home |
/home [name] |
vsu.command.home |
0 | Teleport to a saved home. No argument uses the home named home. |
/sethome |
/sethome [name] |
vsu.command.sethome |
0 | Save your position and angles as a home. Fails once max_homes is reached. |
/delhome |
/delhome <name> |
vsu.command.sethome |
0 | Delete one of your homes. |
/homes |
/homes |
vsu.command.home |
0 | List your homes with a used/limit count. |
/warp |
/warp [name] |
vsu.command.warp |
0 | Teleport to a server warp; with no argument, list warps. |
/warps |
/warps |
vsu.command.warp |
0 | List every warp name. |
/setwarp |
/setwarp <name> |
vsu.admin.warp |
3 | Create or overwrite a warp at your position. |
/delwarp |
/delwarp <name> |
vsu.admin.warp |
3 | Delete a warp. |
/spawn |
/spawn |
vsu.command.spawn |
0 | Teleport to the overworld shared spawn point. |
/setspawn |
/setspawn |
vsu.admin.setspawn |
2 | Set the current level's default spawn to your block position. |
/back |
/back |
vsu.command.back |
0 | Return to your last teleport origin. |
/backdeath |
/backdeath |
vsu.command.back |
0 | Return to your last death position, subject to death_back_delay_seconds. |
/tpa |
/tpa <player> |
vsu.command.tpa |
0 | Ask to teleport to another player. One pending request per target. |
/tpahere |
/tpahere <player> |
vsu.command.tpa |
0 | Ask another player to teleport to you. |
/tpaccept |
/tpaccept |
vsu.command.tpa |
0 | Accept the pending request aimed at you. |
/tpdeny |
/tpdeny |
vsu.command.tpa |
0 | Decline the pending request aimed at you. |
/tp |
/tp <target> [destination] |
vsu.admin.teleport |
2 | Move yourself to target, or move target to destination. |
/tphere |
/tphere <target> |
vsu.admin.teleport |
2 | Move target to your position. |
/tpall |
/tpall |
vsu.admin.teleport |
2 | Move every other online player to you. |
/tppos |
/tppos <x> <y> <z> |
vsu.admin.teleport |
2 | Teleport to coordinates in your current dimension. |
TPA requests expire after tpa_timeout_seconds. A request is stored against the
target, so a second player asking the same target is refused until the first
request is accepted, denied, or times out.
Social#
| Command | Usage | Node | Op | Behaviour |
|---|---|---|---|---|
/msg |
/msg <target> <message> |
vsu.command.message |
0 | Direct message. Refused if the target is ignoring you. |
/tell |
/tell <target> <message> |
vsu.command.message |
0 | Identical to /msg. |
/r |
/r <message> |
vsu.command.message |
0 | Reply to the last player you messaged or who messaged you. |
/reply |
/reply <message> |
vsu.command.message |
0 | Identical to /r. |
/ignore |
/ignore <target> |
vsu.command.message |
0 | Toggle ignoring a player. Persisted in vsu_ignore_list. |
/nick |
/nick [name] |
vsu.command.nick |
0 | Set a nickname; & colour codes are translated. No argument clears it. Persisted. |
/broadcast |
/broadcast <message> |
vsu.admin.broadcast |
2 | Server-wide message with & colour translation. |
/bc |
/bc <message> |
vsu.admin.broadcast |
2 | Identical to /broadcast. |
/gc |
/gc |
vsu.admin.broadcast |
2 | Print JVM memory use and active thread count. Takes no message. |
/list |
/list |
vsu.command.utility |
0 | Online player count and names, showing nicknames where set. |
/near |
/near [radius] |
vsu.command.utility |
0 | Players within radius blocks in your dimension. Default 100, range 1–500. |
Muted players are blocked from chat and from the chat-style commands (/msg,
/tell, /r, /reply, /broadcast, /bc, /gc) by the loader-side
enforcement hook, not by these command definitions. See
Moderation.
Utility#
| Command | Usage | Node | Op | Behaviour |
|---|---|---|---|---|
/kit |
/kit [name] |
vsu.command.kit |
0 | Claim a kit; with no argument, list kits. |
/kits |
/kits |
vsu.command.kit |
0 | List kit names. |
/hat |
/hat |
vsu.command.utility |
0 | Swap the held item with your helmet slot. |
/more |
/more |
vsu.command.utility |
2 | Fill the held stack to its maximum size. |
/clear |
/clear [target] |
vsu.command.utility |
2 | Clear your inventory, or another player's. |
/repair |
/repair |
vsu.command.utility |
2 | Reset the held item's damage to zero. |
/anvil |
/anvil |
vsu.command.utility |
2 | Open a virtual anvil. |
/workbench |
/workbench |
vsu.command.utility |
0 | Open a virtual crafting table. |
/enderchest |
/enderchest [target] |
vsu.admin.peek |
2 | Open your ender chest, or another player's. |
/seen |
/seen <player> |
vsu.command.utility |
0 | Report whether a named player is online. No timestamp is stored. |
/whois |
/whois <target> |
vsu.admin.peek |
2 | Display name, UUID, ping, position, dimension, health, and food. |
/ping |
/ping |
vsu.command.utility |
0 | Your current latency in milliseconds. |
/playtime |
/playtime |
vsu.command.utility |
0 | Your accumulated play time from the vanilla statistic, in hours and minutes. |
/getpos |
/getpos |
vsu.command.utility |
0 | Your block coordinates. |
/suicide |
/suicide |
vsu.command.utility |
0 | Kill your character. |
/more, /clear, /repair, and /anvil all require operator level 2 even
though they read as player conveniences. Grant vsu.command.utility through
LuckPerms to give them to non-op players deliberately.
/enderchest is gated on vsu.admin.peek at level 2 in both its self and
target forms, so a non-op player cannot open even their own ender chest. If you
want the self form opened up, grant vsu.admin.peek to a wider group rather
than expecting a separate node.
Admin#
| Command | Usage | Node | Op | Behaviour |
|---|---|---|---|---|
/heal |
/heal [player] |
vsu.admin.heal |
2 | Full health, clears all effects, applies short regeneration. |
/feed |
/feed [player] |
vsu.admin.heal |
2 | Food level and saturation to 20. |
/fly |
/fly [player] |
vsu.admin.fly |
2 | Toggle flight ability. |
/god |
/god |
vsu.admin.god |
2 | Toggle invulnerability on yourself. |
/vanish |
/vanish |
vsu.admin.vanish |
2 | Hide from players below permission level 2; toggle again to reappear. |
/gm |
/gm <0\|1\|2\|3\|s\|c\|a\|sp> |
vsu.admin.gamemode |
2 | Set your game mode. The numeric and letter forms are equivalent. |
/invsee |
/invsee <target> |
vsu.admin.peek |
2 | Open the target's inventory in a six-row chest view; edits write through. |
/backsee |
/backsee <target> [slot] |
vsu.admin.peek |
2 | Resolve a container held or worn by the target and open it read-write. |
/accsee |
/accsee <target> |
vsu.admin.peek |
2 | Open the target's accessory menu through the loader bridge. |
/lag |
/lag |
vsu.admin.lag |
2 | Print a fixed hint to read TPS from the debug screen; no TPS is measured. |
/lightning |
/lightning [target] |
vsu.admin.smite |
2 | Strike lightning at the target, or at yourself with no argument. |
/smite |
/smite <target> |
vsu.admin.smite |
2 | Strike lightning at the target. |
/ext |
/ext [target] |
vsu.command.utility |
2 | Extinguish yourself, or another player. |
/vonixsu |
/vonixsu [version\|status\|reload] |
vsu.admin.manage |
3 | Version, status, or config reload. See below. |
/ext is the one movement-adjacent command with an asymmetric gate: the
no-argument self form is registered without a permission predicate, so any
player can put themselves out, while the <target> form requires
vsu.command.utility at level 2.
/accsee depends on a loader bridge that is not finished in 2.2.0. On both
Fabric and NeoForge the bridge replies with a "not fully mapped yet" message
instead of opening a menu. Treat it as reserved.
/vonixsu#
| Form | Effect |
|---|---|
/vonixsu |
Print the three-line help block |
/vonixsu version |
Mod version and platform display name |
/vonixsu status |
Online count and the fixed module list |
/vonixsu reload |
Re-read the properties file, then reload kits.json |
/vonixsu status reports homes, warps, kits, TPA, back, admin, world as a
static string. There is no remote feature registry to query, so the list is a
label, not a live capability probe.
/vonixsu reload returns Configuration reloaded. on success. It fails with
Reload failed — config not initialised. only if the config was never loaded,
which indicates the server start sequence did not run. A broken kits.json does
not fail the reload command; the kit manager logs the parse problem and falls
back to its in-memory defaults.
World#
| Command | Usage | Node | Op | Behaviour |
|---|---|---|---|---|
/weather |
/weather <clear\|rain\|storm\|thunder> |
vsu.admin.world |
2 | Set weather in the current level for 6000 ticks. thunder is an alias for storm. |
/sun |
/sun |
vsu.admin.world |
2 | Clear weather for 24000 ticks. |
/rain |
/rain |
vsu.admin.world |
2 | Rain without thunder for 6000 ticks. |
/storm |
/storm |
vsu.admin.world |
2 | Rain with thunder for 6000 ticks. |
/time |
/time set <day\|night\|noon\|midnight\|ticks>, /time add <ticks> |
vsu.admin.world |
2 | Set absolute time or shift by a tick delta, applied to every loaded level. |
/day |
/day |
vsu.admin.world |
2 | Set time to 1000 ticks. |
/night |
/night |
vsu.admin.world |
2 | Set time to 13000 ticks. |
/afk |
/afk [message] |
none | 0 | Toggle AFK and broadcast the change to the server. |
/day, /night, /sun, /rain, /storm, and /thunder are shortcuts that
route through the same handlers as their /weather and /time equivalents, so
there is no behavioural difference between /rain and /weather rain.
/afk is registered without a permission predicate, so every player may use it.
The flag is session-scoped: it is not persisted, and /list does not mark AFK
players.
Additional literals#
Three literals are registered inside a parent tree rather than as standalone roots. They are listed here with their full invocation so the reference is complete:
| Literal | Invocation | Node | Op | Behaviour |
|---|---|---|---|---|
add |
/time add <ticks> |
vsu.admin.world |
2 | Shift time forward by ticks in every loaded level |
thunder |
/weather thunder |
vsu.admin.world |
2 | Same handler as /storm |
reload |
/kit reload |
vsu.admin.manage |
3 | Re-read kits.json without restarting |
Moderation#
Eleven commands cover bans, mutes, kicks, and warnings. They are registered
through a separate moderation bootstrap and are the only commands in VSU that
write to the punishments table.
| Command | Usage | Node | Op | Behaviour |
|---|---|---|---|---|
/ban |
/ban <player> [reason] |
vsu.mod.ban |
3 | Permanent ban. Disconnects the target after a one-second tellraw. |
/tempban |
/tempban <player> <duration> [reason] |
vsu.mod.ban |
3 | Ban until a parsed duration elapses. |
/unban |
/unban <player> |
vsu.mod.ban |
3 | Revoke the newest active ban; the row is kept. |
/banlist |
/banlist [page] |
vsu.mod.ban |
3 | Active bans, ten per page. |
/mute |
/mute <player> [reason] |
vsu.mod.mute |
3 | Permanent mute. Enforced immediately. |
/tempmute |
/tempmute <player> <duration> [reason] |
vsu.mod.mute |
3 | Mute until a parsed duration elapses. |
/unmute |
/unmute <player> |
vsu.mod.mute |
3 | Revoke the newest active mute; the row is kept. |
/kick |
/kick <player> [reason] |
vsu.mod.kick |
2 | Disconnect the target and record a row. |
/warn |
/warn <player> <reason> |
vsu.mod.warn |
2 | Record a warning and tell the target their active count. |
/warnings |
/warnings <player> [page] |
vsu.mod.warn |
2 | Warning history, ten per page. |
/clearwarnings |
/clearwarnings <player> |
vsu.mod.warn |
2 | Deactivate every active warning for the target. |
Duration syntax, the audit schema, revocation semantics, and the expiry sweeper are documented in full on Moderation.
Crates and keys#
Crates are a single command tree rooted at /crate, with player subcommands at
vsu.command.crate (op 0) and administration at vsu.admin.crate (op 2).
Subcommands are listed here because the tree shares one root:
| Subcommand | Purpose |
|---|---|
list |
List crates with key type and enabled state |
open <crate> |
Spend one key and run the drawn prize command |
prizes <crate> |
List prizes with weight and percentage |
key balance <type> |
Your balance of one key type |
key give <player> <type> <amount> |
Grant keys |
key take <player> <type> <amount> |
Remove keys |
create <crate> <key_type> |
Define a crate |
delete <crate> |
Delete a crate and its prizes |
enable <crate> / disable <crate> |
Toggle availability |
prize add <crate> <label> <weight> <command> |
Add a weighted prize |
prize remove <crate> <id> |
Remove a prize by id |
Key types and crate names must match [a-z0-9_-]{1,32}. The full workflow,
including playtime keys and the claim and refund path, is on
Kits & crates.
Command count#
The reference above covers every command name registered in 2.2.0. Three
literals are subcommand branches rather than roots: add under /time,
thunder under /weather, and reload under /kit. The crate tree adds one
further root, documented above.
Corrections to older documentation#
Some material circulating for earlier VSU builds does not match 2.2.0 source.
Where it disagrees, the source is correct:
| Older claim | Actual behaviour in this build |
|---|---|
/whois is a player command on vsu.command.utility at op 0 |
It is gated on vsu.admin.peek at op 2, because it exposes another player's position, health, and food |
| A mute list command exists | No such command is registered. /banlist lists bans; there is no equivalent listing for mutes |
| Home and TPA cooldown bypass nodes exist | Neither node exists. The bypass family contains exactly one entry, vsu.bypass.mute, which gates mute enforcement only |
/more, /clear, /repair, /anvil are player conveniences at op 0 |
All four declare op fallback 2 |
A /me command exists |
No /me command is registered by VSU; chat-style enforcement still intercepts /me because vanilla provides it |