Compatibility
Minecraft: Java Edition
Platforms
Tags
Creators
Details
KyleTeam
The complete team/clan plugin for Paper. Everything runs from a GUI: roles, points, levels, alliances, banks, homes, warps, shared storage, verified teams, wars, loans, bounties, popularity rankings, titles, and weekly team battles. Inspired by BetterTeams. Plain YAML data, no database required.
✨ Core Features
- Everything is GUI-driven: every command below has a menu equivalent
- Roles:
MEMBER < MANAGER < ADMIN < CO_OWNER < OWNER, with a configurable minimum role for every action - Points & levels: kills score points, deaths cost points, levels 1–5 (expandable) gate your limits
- Team bank: Vault-powered deposit/withdraw, shorthand amounts like
1k,2.5m,all - Homes & warps: per team, limits scale with level
- Shared team storage: configurable size and blocked items, several members can browse at once
- Open/closed recruiting, a Browse GUI, and a leaderboard (
/team top) - Team name colours: 16 colours plus bold, hex colours with permission
- Operator panel (
/kyleteam panel): rename, set level/points/bank, force colour, force-join/kick, view storage, force the verified badge, end wars, delete teams, and edit every catalog in-game - Async, atomic autosaves: your data stays safe
🤝 Alliances
Co-owners send and accept alliance requests. Allies can't hurt each other, share an ally chat (/ac), score no points on each other, and lose points for killing each other.
✔ Verified Teams
A team earns the blue check by reaching a minimum level, age, and number of active members (all configurable). Admins can force it on or off. You choose which features are verified-only (war, loans, bounties, announcements) and which are open to everyone.
⚔ Wars
A co-owner declares and the other team's co-owner accepts. Every kill gives the killer's team points and money and costs the victim's team points. Wars end when a team hits the point floor, surrenders, both leaders accept peace, time runs out, or a team is deleted or loses its badge.
💰 Loans / Debt
Verified teams can lend to each other (default 10k–1m). The borrower has a repayment window (default 14 days) with optional interest. At the deadline the bank is force-transferred to the lender. Choose the default action: DELETE_IF_EMPTY, DELETE_IF_INSUFFICIENT, or KEEP_DEBT. A team can't disband while it owes money.
🎯 Bounties
Kill streaks put a bounty on a player (levels 1–3 default to 5/10/20 kills = 25k/75k/200k, all configurable). Whoever kills them collects it, to their wallet or their team bank. Teammates can't claim it. View the board with /team bounty.
🔥 Team Influence & Popularity Flame
Players can like other teams (/team like <team>) and visit their bases (/team visit <team>) when the owner has enabled visitor access. Likes, visits, and Battle Team wins feed a team's Popularity Flame, which drives an editable level ladder. Every level can fire its own one-time reward, and big gains pay every level passed. Monthly and all-time rankings are available. On the 1st of each month the top 3 teams by Flame gained that month are rewarded and monthly Flame resets. All-time Flame never resets.
🏅 Titles
Teams display one earned title next to their name in the profile GUI, leaderboards, and (optionally) chat and announcements. Automatic titles come from Popularity's monthly top 3 and Battle Team wins and win streaks. Operators can also grant or revoke titles by hand from the in-game Titles editor.
🏆 Battle Team
A friendly, scheduled weekly contest, separate from War: no PvP points are lost, nobody has to accept anything, and no verification is needed. Each week the system randomly pairs up eligible teams. Both teams in a pairing get the same daily quests, drawn from an editable pool (kill mobs, kill your opponent's members, mine blocks, deposit money, or play time). The team with more quest points at week's end wins team points, Flame, and console-command rewards. Top individual contributors and win-streak milestones earn extra rewards. /team battle shows live status.
📢 Announcements
Clean, text-only server-wide messages for joins/leaves, wars, bounties, battles, popularity, new verified teams, and more. Every event has its own switch and one configurable line in messages.yml.
🎁 Custom Item Rewards
Every reward is a list of ordinary console commands ({player}, {uuid}, {team} are substituted). That means it works with ExecutableItems, MMOItems, Nexo, any economy plugin, or vanilla give, with no extra dependencies.
🛠 Edit Everything In-Game
Popularity levels, Battle quests, and Titles are all editable from /kyleteam panel → Catalogs & Systems. No hand-editing YAML to add a level, a quest, or a reward.
🕹️ Commands
/team (aliases: /teams, /clan, /kteam) opens the GUI. Every action also works as a command:
/team create <name> - create a team (costs team.creation-cost)
/team invite|kick|promote|demote|transfer <player>
/team accept|deny [team], /team invites
/team join <team>, /team leave, /team disband [confirm]
/team rename <name>, /team description <text>
/team color [code|#hex|bold|reset]
/team open, /team close, /team pvp [on|off]
/team chat, /tc [message] - team chat
/team allychat, /ac [message] - ally chat
/team home|sethome|delhome [name]
/team warp|setwarp|delwarp <name>
/team bank|balance|deposit|withdraw
/team storage [number]
/team upgrade
/team ally [team|accept|deny|remove <team>]
/team war [declare|accept|decline <team>|surrender|peace]
/team loan [request <team> <amount>|accept|decline <team>|repay [amount]]
/team bounty, /team verified
/team like <team>, /team visit <team>
/team popularity, /team title, /team battle
/team top, /team browse, /team info [team], /team list
Admin (kyleteam.admin):
/kyleteam panel | status | reload | save | disband|endwar <team> | rename <team> <name> |
description <team> <text> | color <team> <code> | forcejoin <team> [player] | kick <player> |
verify <team> auto|on|off | addpoints|removepoints|setpoints <team> <n> |
setlevel <team> <n> | setbank <team> <n> | popularityreset | spy
🔑 Permissions
| Node | Default | Description |
|---|---|---|
kyleteam.use |
true | Use /team and its GUIs |
kyleteam.create |
true | Create a team |
kyleteam.namecolor |
true | Pick a team name colour |
kyleteam.namecolor.hex |
op | Custom hex colours |
kyleteam.color |
op | Colour codes in team descriptions |
kyleteam.bypass.cost |
op | Create teams for free |
kyleteam.bypass.cooldown |
op | Skip teleport warm-up/cooldown |
kyleteam.admin |
op | Admin commands |
kyleteam.admin.panel |
op | Operator GUI panel |
kyleteam.admin.spy |
op | Read other teams' chat |
📊 Placeholders (PlaceholderAPI)
Use %kyleteam_teams% in TAB (tabprefix/tagprefix), scoreboards, or chat formats. It's controlled by placeholders.teams-format (tokens {team}, {team_colored}, {verified}, {team_display}) and is empty when the player has no team. The default format is &8[{team_display}&8], which shows the colour and verified badge.
Team: %kyleteam_name%, team_colored, description, owner, role, role_plain, has_team, level, points, kills, deaths, kdr, members, max_members, members_online, homes, max_homes, warps, max_warps, storages, allies, max_allies, bank, bank_raw, open, friendly_fire, chat, rank, verified, is_verified, war, debt, popularity_flame, popularity_flame_monthly, popularity_level, popularity_level_number, popularity_rank, popularity_rank_monthly, title, battle_wins, battle_losses, battle_streak, battle_opponent
Player: %kyleteam_bounty%, bounty_level, bounty_kills
Global (holograms/scoreboards): %kyleteam_total_teams%, %kyleteam_top_<n>_<name|points|kills|level|members|leader|description|bank>%
✅ Requirements
- Paper 1.21.11, Java 21
- Optional: Vault + an economy plugin (creation cost, bank, loans, bounties), PlaceholderAPI
- Without Vault: team creation is free and the bank, loans, and bounties are disabled (a warning is logged)
🤔 The Future
Since All of my plugins are premium, I'll consider it to make every plugins of mine becoming free. Since again, I make all of this for free. And I didn't want to grab money for it. Everyonre can and will enjoy :)


