# Commands
Lead registers three top-level commands: `/team`, `/teammsg`, and `/lead`. All permissions are configurable through `config.yml`. See [[Lead/Server Owners/Configuration]] for details on customizing command access.
---
## Team Commands
The `/team` command (alias: `/t`) is the primary command for all team operations. Its permission is controlled by `permissions.team` in the config.
### Player Commands
| Command | Description | Default Permission | Notes |
|---|---|---|---|
| `/team help` | Displays the help menu with all available commands. | `commands.help` (null) | Also runs when `/team` is executed with no arguments. |
| `/team create [name]` | Creates a new team. If `nameable_teams` is `true`, a name argument is required. | `commands.create` (null) | Name must be 3-16 characters (configurable). Allowed characters: alphanumeric, `-`, `_`, `+`, and spaces. |
| `/team join <player>` | Joins a team by specifying a team member's name. Requires a pending invitation. | `commands.join` (null) | Only visible to players not currently in a team. |
| `/team leave` | Leaves the current team. | `commands.leave` (null) | Not available to team leaders. Leaders must use `/team disband`. |
| `/team invite <player>` | Sends a team invitation to an online player. | `commands.invite` (null) | Requires the sender to be in a team. Respects `max_team_size`. |
| `/team chat` | Toggles team chat mode. All messages sent while active go only to teammates. | `commands.chat` (null) | Requires the sender to be in a team. |
| `/team list` | Opens a paginated GUI showing all existing teams. | `commands.list` (null) | |
### Leader Commands
| Command | Description | Default Permission | Notes |
|---|---|---|---|
| `/team kick <player>` | Kicks a player from the team. | `commands.kick` (null) | Only the team leader can kick members. |
| `/team disband` | Disbands the team and removes all members. | `commands.disband` (null) | Only the team leader can disband. Applies a cooldown (3s for operators, 10s for others). |
| `/team spawn set` | Sets the team spawn to the leader's current location. | `commands.spawn` (`lodestone.lead.manage`) | Only the team leader can set spawn. |
| `/team spawn reset` | Resets the team spawn location. | `commands.spawn` (`lodestone.lead.manage`) | Only the team leader can reset spawn. |
### Admin Commands
| Command | Description | Default Permission |
|---|---|---|
| `/team edit <team_id>` | Opens the team editor GUI for the specified team. | `commands.edit` (`lodestone.lead.manage`) |
| `/team place <player> <team_id>` | Places a player into the specified team, removing them from their current team if applicable. | `commands.place` (`lodestone.lead.manage`) |
| `/team remove <player>` | Removes a player from their current team. | `commands.remove` (`lodestone.lead.manage`) |
| `/team delete <team_id>` | Deletes a team entirely. | `commands.delete` (`lodestone.lead.manage`) |
| `/team merge <team_one> <team_two>` | Merges all members of team two into team one. Team two is deleted. | `commands.merge` (`lodestone.lead.manage`) |
| `/team teleport <team_id> <target>` | Teleports all online members of a team to the target entity. | `commands.teleport` (`lodestone.lead.manage`) |
| `/team shuffle [force]` | Randomly distributes all online players across existing teams. If `force` is `true`, players already on a team are reassigned. | `commands.shuffle` (`lodestone.lead.manage`) |
| `/team reset` | Deletes all teams. Requires confirmation by running the command twice within 5 seconds. | `lodestone.lead.commands.reset` |
### Modify Subcommands
All modify commands live under `/team modify` and require their respective permission.
| Command | Description | Default Permission |
|---|---|---|
| `/team modify color <team_id> <hex_color>` | Changes a team's color. Accepts hex values (e.g., `#FF0000` or `FF0000`). | `commands.color` (`lodestone.lead.manage`) |
| `/team modify display_name <team_id> <name>` | Changes a team's display name. | `commands.display_name` (`lodestone.lead.manage`) |
| `/team modify id <team_id> <new_id>` | Changes a team's internal ID. | `commands.id` (`lodestone.lead.manage`) |
| `/team modify collidable <team_id> <value>` | Sets collision for a specific team. Values: `ALWAYS`, `NEVER`, `FOR_OTHER_TEAMS`, `FOR_OWN_TEAM`. | `commands.collidable` (`lodestone.lead.manage`) |
| `/team modify friendly_fire <team_id> <true/false>` | Enables or disables friendly fire for a specific team. | `commands.friendly_fire` (`lodestone.lead.manage`) |
| `/team modify nametag <team_id> <value>` | Sets nametag visibility for a specific team. Values: `ALWAYS`, `NEVER`, `FOR_OTHER_TEAMS`, `FOR_OWN_TEAM`. | `commands.nametag` (`lodestone.lead.manage`) |
**Note:** The `collidable` and `nametag` modify commands are disabled when TAB is installed, as TAB manages these properties independently.
---
## Team Message Command
| Command | Aliases | Description | Default Permission |
|---|---|---|---|
| `/teammsg <message>` | `/tm`, `/tc`, `/tmsg` | Sends a message to all online members of the sender's team. | `permissions.teammsg` (null) |
---
## Lead Command
The `/lead` command provides administrative utilities. All subcommands require `lodestone.lead.commands.lead`.
| Command | Description | Permission |
|---|---|---|
| `/lead version` | Displays the current Lead version. | `lodestone.lead.commands.lead` |
| `/lead update` | Forces an update of all team nametags and scoreboard entries. | `lodestone.lead.commands.update` |
| `/lead auto_assign [on/off]` | Toggles auto-assign. If no argument is provided, the current state is toggled. | `lodestone.lead.commands.auto_assign` |
| `/lead reload [-t]` | Reloads the configuration. Pass `-t` to also reload teams from `teams.yml`. | `lodestone.lead.commands.reload` |
---
## PlaceholderAPI Placeholders
When PlaceholderAPI is installed, Lead registers the following placeholders:
| Placeholder | Description |
|---|---|
| `%lead_team_id%` | The player's team ID. Returns `Integer.MAX_VALUE` if the player has no team (when generator type is `NUMBER`), or null otherwise. |
| `%lead_team_name%` | The player's team display name. |
| `%lead_team_size%` | The number of members in the player's team. |
| `%lead_team_color%` | The hex color of the player's team. |
---
## Related Pages
- [[Lead/Server Owners/Overview]] — Feature summary and use cases.
- [[Lead/Server Owners/Configuration]] — Full config.yml breakdown and permission customization.