Commands
##Introduction
This page lists every command available in SulfurLab. All commands share the base command /sulfurlab and its alias /slab. Below you'll find each command, an example, and a short description of what it does.
Every argument tab-completes — cube names, the @all selector, the -b/-f/-a/-i flags, block IDs, and value hints (default / min / max) for each property.
##Cube Commands
| Command | Example | Description |
|---|---|---|
| /sulfurlab help | /sulfurlab help | Displays the list of all available commands. Also shown when running /sulfurlab with no arguments. |
| /sulfurlab new [name] [-b/-f/-a value] [-i block] | /sulfurlab new bouncy -b 1 -i minecraft:slime_block | Creates a cube at your location. Name is optional (auto-generated if omitted). Flags set physics and the block up front. |
| /sulfurlab list | /sulfurlab list | Lists every cube with its status, location, physics and block. Click an entry to teleport to it. |
| /sulfurlab info <name> | /sulfurlab info bouncy | Shows a single cube's full details. |
| /sulfurlab set <name> <property> <value> | /sulfurlab set bouncy friction 0.1 | Sets a property: bounciness, friction or airdrag. Values out of range are rejected. |
| /sulfurlab unset <name> <property> | /sulfurlab unset bouncy friction | Resets a property to its default value. |
| /sulfurlab block <name> <id> | /sulfurlab block bouncy minecraft:gold_block | Sets the block the cube shows. |
| /sulfurlab rename <name> <new> | /sulfurlab rename bouncy springy | Renames a cube. |
| /sulfurlab tp <name> | /sulfurlab tp bouncy | Teleports you to the cube. Falls back to its last known location if the chunk isn't loaded. |
| /sulfurlab tphere <name> | /sulfurlab tphere bouncy | Teleports the cube to you. |
| /sulfurlab glow <name> [seconds] | /sulfurlab glow bouncy 10 | Makes the cube glow for the given seconds (default 30). 0 turns it off. |
| /sulfurlab kill <name/@all> | /sulfurlab kill bouncy | Removes a cube. Use @all to remove every cube at once. |
| /sulfurlab reload | /sulfurlab reload | Reloads config.yml and messages.yml and the cube registry without restarting. |
There's also /sulfurlab editor <name>, reserved for an in-game cube editor. It isn't implemented yet and currently just tells you so.
##Creation flags
/sulfurlab new accepts the same physics flags as the set command, applied at spawn time. Order doesn't matter, and you can mix and match.
| Flag | Sets | Example |
|---|---|---|
| -b | bounciness | -b 1 |
| -f | friction | -f 0.1 |
| -a | air drag | -a 0.5 |
| -i | displayed block id | -i minecraft:slime_block |
Example: /sulfurlab new -b 1 -f 0.05 spawns an auto-named cube that bounces at max and barely has friction — no name needed.
##Explanation
- Creating cubes —
/sulfurlab newspawns a cube where you stand. Skip the name to auto-generate one, or pass flags to set physics and the block immediately. Each new cube plays a chime and particles (see config.yml). - Tuning physics —
/sulfurlab setand/sulfurlab unsetchange a cube'sbounciness,frictionandairdrag. Values are validated against Minecraft's accepted ranges; an out-of-range value is rejected rather than silently clamped. See the Getting Started table for the limits. - The displayed block —
/sulfurlab blockswaps the block a cube wears as it bounces. - Finding & moving —
/sulfurlab list(clickable),/sulfurlab info,/sulfurlab tp,/sulfurlab tphereand/sulfurlab glowhelp you locate, inspect and herd cubes around the world. - Renaming & removing —
/sulfurlab renamechanges a cube's name;/sulfurlab killremoves one, or@allclears every cube. - Reloading —
/sulfurlab reloadre-reads the config and messages and reloads the registry live. Cube data insulfurs.jsonis managed through the commands above, not by hand-editing during runtime.