Teams & Members
How teams work: creation, invites, roles, base, friendly fire, chat, and the dashboard GUI.
Overview
A team has a unique tag, a name, one leader, optional deputies, a set of members, optional base location, friendly fire flag, member slot limit, and optional expiration timestamp.
Creating a Team
/team create <tag> <name>
Requirements:
- Player is not already in a team
- Tag and name pass length and regex restrictions
- Tag is not already taken
- Economy cost is paid when economy is enabled (
cost-for-create-team)
New teams start with:
default-members-slotsslotsfriendly-firedefault from config- Expiration at
now + default-expiration-hourswhen expiration is enabled
A TeamCreateEvent is fired after successful creation.
Invites
/team invite <player>
/team accept <tag>
- Invites expire after
invite-durationminutes - Accepting joins the team if a free slot is available
- A
TeamAddMemberEventis fired on join
Admins can force membership with /teamadmin add <tag> <player>.
Roles
| Role | Capabilities |
|---|---|
| Leader | Full control: promote/demote, transfer leadership, disband, set base, kick, invite, friendly fire, panel upgrades |
| Deputy | Elevated helper role (promoted via /team promote) |
| Member | Team chat, base teleport, panel view (actions depend on economy/leader rules) |
Leadership transfer
/team leader <player>
Only the current leader can transfer leadership to another member.
Promote / demote
/team promote <player>
/team demote <player>
Adds or removes deputy status.
Leaving and Removal
| Action | Command | Notes |
|---|---|---|
| Leave | /team quit | Leader cannot quit without transferring leadership or disbanding (depending on flow) |
| Kick | /team kick <player> | Leader/authorized roles remove a member |
| Admin remove | /teamadmin remove <player> | Force remove |
| Disband | /team delete | Optional confirm window |
| Admin delete | /teamadmin delete <tag> | Force delete by tag |
Kick/remove fires TeamKickMemberEvent. Disband fires TeamDeleteEvent.
Friendly Fire
/team friendlyFire
When disabled, team members cannot damage each other (PlayerDamageListener cancels friendly hits).
Base
/team setBase # set at current location
/team base # teleport
Base is stored as a Bukkit location (world + coordinates). Members use /team base to return home.
Team Chat
Two modes:
- Toggle —
/team chatroutes subsequent chat to the team channel - Prefix — messages starting with
team-chat-character(default!) go to team chat whenenable-chat-by-prefixis true
Format placeholders: {tag}, {player}, {message}.
With Redis enabled, team chat is synchronized across servers via ChatSynchronizeMessage.
Dashboard GUI
/team panel
Configured in guis.yml. Default hopper GUI includes:
- Team summary (tag, name, leader, deputies, members)
- Upgrade members — buy one slot up to
maximum-members-slots - Expiration update — extend validity by one day for
cost-for-one-expiration-day
Economy must be enabled for paid actions to appear.
Team Ranking Position
Team ranking points are the average of member profile rankings. Displayed in:
/team list(aliases:top,lista)- PlaceholderAPI team ranking placeholders
- Team info messages
Practical Tips
- Keep tags short (
3–5by default) for chat prefixes and scoreboards - Use deputies for large teams so the leader is not the only inviter/kicker
- Combine expiration reminders with economy renewal so teams stay active
- On multi-server networks, enable Redis so invites and membership stay consistent