ZentriTeams
Advanced Teams System for Minecraft Servers
Overview
Advanced Teams System for Minecraft Servers
Overview
ZentriTeams is a premium, feature-rich teams plugin built for survival, SMP, and faction-style servers. It introduces a complete team management experience with relational per-viewer nametags, an ally system, team chat, a leveling and ranking system, Lunar Client integration, and a fully interactive GUI — all designed to run smoothly on both Paper and Folia.
Unlike basic party or clan plugins, ZentriTeams uses packet-level nametag rendering so each player sees personalized colors: teammates in green, allies in blue, and enemies in red. No two players see the same scoreboard — it's fully relational.
Features
Teams & Roles
- Create, rename, and disband teams with full color support (legacy & MiniMessage)
- Three-tier role system: Leader, Co-Leader, Member — each with fully configurable permissions
- Invite players, promote/demote members, transfer leadership, and kick members
- Set a team home and teleport to it (async, Folia-compatible)
- Configurable max members per team (overridable per-team by admins)
Relational Nametags (Per-Viewer)
- Packet-based nametag system — no scoreboard conflicts
- Each player sees different colors based on their relation to others
- Teammates: green | Allies: blue | Enemies: red
- Fully configurable prefix & suffix with PlaceholderAPI support
- Optional: show invisible teammates' nametags (WIP)
- Smart tab sorting by team relation and LuckPerms group weight
- Below-name display (health, kills, deaths — any placeholder)
- Custom tab header & footer with placeholder support
Ally System
- Request, accept, deny, and remove alliances between teams
- Configurable max allies per team
- Ally damage prevention (toggleable)
- 5-minute request expiration with auto-cleanup
- Allies visible with distinct nametag color and in PingWheel channels
Friendly Fire Control
- Toggle friendly fire on/off per team
- Covers melee hits and projectile damage
- Ally damage prevention works independently
- Manageable through the GUI settings panel
Team Chat
- Quick message: /team chat <message>
- Toggle mode: route all chat to your team automatically
- Configurable chat format with {player}, {message}, {team} placeholders
Leveling & Ranking System
- Teams level up based on kills, deaths, and bonus points
- Configurable points-per-kill, points-per-death, and max level (default 100)
- Level progress bar displayed in GUI
- Color-coded level tiers: Gold (50+), Silver (25+), Bronze (10+), Gray (below 10)
- K/D ratio tracking per team
- Notifications with sound effects on level changes
Frally — Rally Point System
- Send a distress signal to all team members with /frally
- Broadcasts coordinates and a clickable teleport message
- Plays configurable sound and particle effects
- Creates a Lunar Client waypoint (via Apollo) that auto-removes after a set duration
- Configurable cooldown to prevent spam
Interactive GUI
- Full 54-slot chest GUI accessible via /team
- Sections: Home, Members, Allies, Settings, and Ranking
- Paginated member and ally lists with player heads
- Top teams podium with gold, iron, and copper blocks
- In-GUI actions: kick, invite, break alliances, toggle settings — all with chat input prompts
- Sound effects and glowing items for a polished feel
Integrations
- Lunar Client (Apollo) — Waypoints for frally alerts, auto-removal after duration
- PlaceholderAPI — 25+ standard placeholders and 8+ relational placeholders
- TAB Plugin — Nametag color sync, batched updates
- LuckPerms — Group-based tab sorting, prefix/suffix support with gradient handling
- PingWheel — Automatic team-based channel assignment
- ViaVersion / ViaBackwards — Client version detection for score format compatibility
- PacketEvents — Packet-level nametag rendering and relational chat placeholder resolution
Admin Tools
Full admin command suite under
/team admin with permission zentriteams.admin:- Force join, leave, kick, disband, and create teams for any player
- Set leader, max members, level, and bonus points per team
- View all teams list with leader, member count, and level
- Inspect any player's team info, role, and UUID
- Reload configuration without restart
Technical Details
- Folia Native — Full Folia support with region-aware scheduling and async teleportation
- Database — SQLite (default) or MySQL with HikariCP connection pooling
- Caching — Multi-layer Caffeine cache with configurable TTLs for teams, players, and relations
- Async — All database operations run asynchronously via CompletableFuture
- Auto-Migration — Database schema auto-updates when new columns are added
- Thread-Safe — ConcurrentHashMap throughout for safe multi-threaded access
- MiniMessage — Full MiniMessage support (gradients, hover, click events) gated behind a permission node
- Packet-Level — Nametags and chat rendering handled at the packet level for zero conflicts
- API Version — Paper 1.21+
Commands
Code:
/team — Open GUI or show help
/team create <name> — Create a new team
/team rename <name> — Rename your team (leader)
/team invite <player> — Invite a player
/team join <team> — Accept an invitation
/team leave — Leave your team
/team kick <player> — Kick a member
/team promote <player> — Promote to co-leader
/team demote <player> — Demote to member
/team transfer <player> — Transfer leadership
/team disband — Dissolve your team
/team chat <message> — Send team message
/team sethome — Set team home
/team home — Teleport to team home
/team ally request <team> — Send ally request
/team ally accept <team> — Accept ally request
/team ally deny <team> — Deny ally request
/team ally remove <team> — Remove alliance
/team ally list — List allies
/team info [team] — View team information
/team help — Show help
/team reload — Reload configuration
/frally — Send rally alert to team
Code:
/team admin forcejoin <player> <team>
/team admin forceleave <player>
/team admin forcekick <player>
/team admin forcedisband <team>
/team admin forcecreate <player> <name>
/team admin setleader <team> <player>
/team admin setmaxmembers <team> <amount>
/team admin setlevel <team> <level>
/team admin addpoints <team> <points>
/team admin teamlist
/team admin playerinfo <player>
Permissions
Code:
zentriteams.admin — Access to admin commands
zentriteams.admin.reload — Reload configuration
zentriteams.minimessage — Use MiniMessage formatting in team names
zentriteams.frally.use — Use the /frally command
Requirements
- Paper or Folia 1.21+
- Java 21
- PacketEvents (required) (https://modrinth.com/plugin/packetevents)
- PlaceholderAPI (optional, recommended)
- LuckPerms (optional, recommended)
- TAB (optional)
- Apollo / Lunar Client (optional)
- PingWheel (optional)
- ViaVersion / ViaBackwards (optional)
Built with performance and compatibility in mind.
If you need support, feel free to open a conversation or join our Discord.
If you need support, feel free to open a conversation or join our Discord.
https://discord.pablorelojero.online
