
VanillaTeams
A lightweight vanilla-friendly team plugin for Paper and Purpur servers.
No /team home, no warps, and no virtual team chests. Just basic teams, team chat, alliances, and vote-based friendly fire.
Supported server software
| Paper | Purpur | Spigot |
Features
Vanilla-friendly gameplay
Keeps survival simple and fair. No team homes, teleport commands, warps, or virtual team storage.
Friendly fire voting
Friendly fire is enabled by default. Any team member can start a vote using /team pvp on or /team pvp off. Online members can vote using clickable [Yes] and [No] buttons.
Friendly fire protection
Team damage is handled at the lowest event priority, allowing VanillaTeams to cancel friendly fire before other plugins process the damage event.
Private team and ally chat
/tc <message>— Send a private team message./tc— Toggle team chat mode./ac <message>— Send a private ally message./ac— Toggle ally chat mode.
DiscordSRV support
Team and ally messages stay private and are not sent to public DiscordSRV channels.
Team alliances
Each team can have one allied team. Send an alliance request using /team ally <team> and accept or deny it using clickable buttons.
SQLite database
Teams, leaders, members, and usernames are saved automatically in database.db, preserving team data across server restarts.
Configuration
Settings
settings:
min-name-length: 2
max-name-length: 16
max-members: 10
invite-expire-seconds: 60
ally-request-expire-seconds: 60
default-team-pvp: true
pvp-vote-timeout-seconds: 30
Messages
messages:
prefix: "&8[&7Team&8] "
ally-prefix: "&8[&7Ally&8] "
chat-format: "&8[&7TC&8] &f<player>&8: &7<message>"
ally-chat-format: "&8[&7AC&8] &8[&7<team>&8] &f<player>&8: &7<message>"
player-only: "&7This command is for players only."
no-permission: "&7You don't have permission to do that."
reloaded: "&7Config reloaded."
team-created: "&7Created &f<team>&7."
team-disbanded: "&f<team> &7has been disbanded."
already-in-team: "&7You're already in a team."
not-in-team: "&7You're not in a team."
not-leader: "&7Only the leader can do that."
team-exists: "&f<team> &7already exists."
team-not-found: "&7Couldn't find team &f<team>&7."
invalid-name: "&7Name must be &f<min>-<max> &7characters (letters, numbers, underscores)."
team-full: "&7Team is full (&f<max>&7)."
invite-sent: "&7Invited &f<player>&7."
invite-received: "&7You've been invited to &f<team>&7. "
already-invited: "&f<player> &7already has a pending invite."
target-in-team: "&f<player> &7is already in a team."
player-not-found: "&f<player> &7is not online."
no-pending-invite: "&7You don't have a pending invite."
invite-denied: "&7Denied the invite from &f<team>&7."
invite-denied-notify: "&f<player> &7declined your invite."
member-joined: "&f<player> &7joined."
member-left: "&f<player> &7left."
leader-cannot-leave: "&7Transfer leadership first (&f/team transfer <player>&7) or &f/team disband&7."
member-kicked: "&f<player> &7was kicked."
kicked-notify: "&7You were kicked from &f<team>&7."
not-in-your-team: "&f<player> &7isn't in your team."
cannot-kick-self: "&7You can't kick yourself."
leader-transferred: "&f<player> &7is the new leader."
pvp-status: "&7Team PvP: &f
chat-toggled-on: "&7Team chat: &fON" chat-toggled-off: "&7Team chat: &fOFF" ally-chat-toggled-on: "&7Ally chat: &fON" ally-chat-toggled-off: "&7Ally chat: &fOFF"
ally-request-sent: "&7Sent ally request to &f
</details>
## Commands
<details>
<summary><strong>Commands and Previews</strong></summary>
<br>
| Command | Description | Preview *(Click to zoom)* |
|:---|:---|:---:|
| `/team create <name>` | Create a new team | |
| `/team invite <player>` | Send invite to an online player *(Leader only)* | |
| `/team accept [team]` | Accept pending team invitation | |
| `/team deny [team]` | Decline pending team invitation | |
| `/team leave` | Leave your current team | |
| `/team kick <player>` | Remove a member from your team *(Leader only)* | |
| `/team transfer <player>`<br><sub>*(or `/team leader`)*</sub> | Transfer team leadership *(Leader only)* | |
| `/team info [team]` | View team details and member list | |
| `/team disband` | Disband your team completely *(Leader only)* | |
| `/teams` | List all teams on the server | — |
| `/team pvp [on\|off]` | Start a vote to enable or disable friendly fire | |
| `/team pvp [yes\|no]` | Cast your vote on an active friendly fire proposal | — |
| `/tc [message]` | Send team message or toggle team chat mode | |
| `/ac [message]` | Send ally message or toggle ally chat mode | |
| `/team ally <team>`<br><sub>*(or `/ally <team>`)*</sub> | Send alliance request to another team *(Leader only)* | |
| `/team ally accept\|deny` | Respond to an incoming alliance request *(Leader only)* | — |
| `/team ally break` | Break your current team alliance *(Leader only)* | |
| `/team disband <team>` | Force-disband any team *(Admin only)* | — |
| `/team reload` | Reload configuration *(Admin only)* | — |
</details>
## Support
If you enjoy this plugin and would like to support its development, consider buying me a coffee:
<p align="center">
</p>
Сервер для плагина VanillaTeams - как у профи
Плагин VanillaTeams создан для серверов: на своём сервере вы настраиваете его под себя и решаете, кому играть. Создать сервер с плагином VanillaTeams для друзей можно за пару минут - BungeeHost всё уже подготовил.
