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-slots slots
  • friendly-fire default from config
  • Expiration at now + default-expiration-hours when expiration is enabled

A TeamCreateEvent is fired after successful creation.

Invites

/team invite <player>
/team accept <tag>
  • Invites expire after invite-duration minutes
  • Accepting joins the team if a free slot is available
  • A TeamAddMemberEvent is fired on join

Admins can force membership with /teamadmin add <tag> <player>.

Roles

RoleCapabilities
LeaderFull control: promote/demote, transfer leadership, disband, set base, kick, invite, friendly fire, panel upgrades
DeputyElevated helper role (promoted via /team promote)
MemberTeam 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

ActionCommandNotes
Leave/team quitLeader 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 deleteOptional 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:

  1. Toggle/team chat routes subsequent chat to the team channel
  2. Prefix — messages starting with team-chat-character (default !) go to team chat when enable-chat-by-prefix is 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–5 by 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