UltimateTeams is a light-weight teams plugin for Minecraft servers running Spigot and most of its forks, with cross-server support, developed with optimization in mind!
UltimateTeams does offer the ability to disable friendly fire within your team and allies!
bStats (1700+ servers, 4000+ players)
Looking for a Player Reports plugin? Check my other plugin: UltimateReports
Check the Images Gallery!
UltimateTeams does support H2 (preferred over SQLite), SQLite, MySQL, MariaDB (preferred over MySQL) and PostgreSQL, check the config for further information.
All database operations are executed asynchronously, to prevent any form of lag
Check the plugin Wiki!
⭐ **Works Cross-Server**\
The plugin will synchronize all data real-time between proxied servers using MySQL and a message broker (check the config).
⭐ Optimization\ The whole plugin is developed with optimization in mind, and it has been tested with more than 100 active players.
⭐ Team Enderchests\ Teams can have one or more shared enderchests with configurable slots. Admin can manage (add, remove, see, modify etc) them, and they are updated real-time between viewers to avoid dupe glitches.
⭐ Home & Warps\ Each team can have a home and one ore more warps (check the config). Teleportation can also be handled by HuskHomes. Max warps/members can also be dynamically modified with a permission
⭐ GUI\ Teams can be managed in a GUI. Team list can also be accessed in a paginated GUI.
⭐ Economy\ Economy can be enabled to support features like team creation cost, team join fee, team bank...
⭐ Team & Allies chat\ Players of each team and all its allies can talk in their dedicated channels
⭐ Allies and Enemies\ Other teams can be marked as allies or enemies
⭐ PlaceholderAPI\ Some placeholders are already available without requiring to download an external jar
⭐ Admin commands\ Staff members can force players to join a team or disband another
⭐ LuckPerms contexts\ The plugin provides context for LuckPerms such as "is-in-team"/"is-team-owner"
⭐ HuskHomes support\ The plugin will use its own teleportation handler (even between servers if cross-server is enabled), but it supports HuskHomes for a more seamlessly integration
⭐ Bedrock Support \ With floodgate correctly installed, bedrock players are automatically managed
The /team command is the main command of the plugin, with /team you can do the following:
/team create <name>- Creates A new team if not already in one/team disband- If you are the team owner, this will destroy your team/team leave- If you are in a team, this will remove you from it/team invite <player>- Will invite a player to your team if they are not already in one/team join- Will add you to a team that you have been invited too./team kick <player>- Will kick a player from your team/team info- Will display information about your current team/team list- Will list all teams in the server/team prefix <prefix>- Will change the prefix for your team in chat/team ally [add|remove] <team-name>- Will either add or remove an allied team to yours/team enemy [add|remove] <team-name>- Will either add or remove an enemy team to yours/team pvp- Will toggle the friendly fire status for your team/team [sethome|home]- Will set a team home location or teleport you or you team members to this location./team [promote|demote] <player>- Will promote/demote a team member to/from team manager./team permission [add|remove] <permission>- Will add/remove a permission to make team managers use specific team commands./team deposit <amount>- deposit money into the team bank/team withdraw <amount>- withdraw money from the team bank/team fee [set/disable] [amount]- see, disable, or set the team join fee/invites <enable/disable>- enable/disable invites from teams
/teamadmin command
Aliases: /ta
The /teamadmin command is purely for server admins only.
/teamadmin reload- This reloads the pluginsconfig.yml& themessages.ymlfiles from disk./teamadmin disband <team-name>- This allows admins to delete any unauthorised teams./teamadmin join <player> <team-name>- forces a player to join a team/teamadmin about- This give you an overview of the plugin's core information./teamadmin echest- this command has a lot of subcommand to see, edit, delete, add, backup, rollback etc all the shared ender chests of each team
/tc command
Aliases: /teamchat, /tchat, /tc
Used for sending messages to only players in the same team
/tc <message> - This will send a message to only the members of YOUR team or the team you are in.
/ac command
Aliases: /allychat,
Used for sending messages to only players in allied teams
/ac <message> - This will send a message to only the members of YOUR team, the team you are in, and the players of all allied teams.
/invites command
Used for enabling/disabling invitations
/invites <enable/disable> - This will enable/disable a player invitations status. If disabled, that player cannot be invited in a team.
Admin permissions:
ultimateteams.admin.aboutultimateteams.admin.reloadultimateteams.admin.migrateultimateteams.admin.team.disbandultimateteams.admin.team.joinultimateteams.bypass.pvpultimateteams.bypass.homecooldownultimateteams.bypass.chatcooldownultimateteams.bypass.warpcooldownultimateteams.chat.spyultimateteams.admin.echest.addultimateteams.admin.echest.removeultimateteams.admin.echest.listultimateteams.admin.echest.seeultimateteams.admin.echest.rollbackultimateteams.admin.echest.backupultimateteams.admin.echest.remove
**All the placeholders are listed in the wiki (link on the right panel)**
To be able to use the placeholders, the latest release of PlaceholderAPI MUST be installed!
If you like the plugin, consider donating to help me bring more features!
Please report any issue on GitHub.
This plugin was originally based on ClansLite by Loving11ish
Thank you for using my plugin!
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 |
- fixed some issues with the team echests (expecially for folia users)
- fixed an issue with the teamTeleportEvent
- the main command can now be changed in the config
- updated the plugin to work on v26.x
Thanks to **@lumen-fire** and **@Alexteens24** for the contributions
- Fixed team/ally chat showing on Discord when using DiscordSRV
- Fixed an error that would sometimes happen when using SQLite
- Added apollohook to show LunarClient players the team home position as waypoint and to mark team members
- Added a new setting to sort the Teams in the team list GUI by most members / owner online status (more details in the config)
- Fixed an issue that would reset the player yaw and pitch (where you're looking) when using HuskHomes
- Various optimizations and fixes
- 🚀 New Features & Additions**
- Full PlaceholderAPI Support:** PAPI placeholders are now fully supported across all GUIs, team chat, and ally chat.
- Toggleable Allies & Enemies:** Added new settings (
team.allies.enabledandteam.enemies.enabled) to completely toggle the ally and enemy systems on or off. Commands and GUIs will adapt accordingly. - Team Bank Limits:** You can now set a maximum bank balance! Limits are strictly enforced during manual deposits and when accepting invites with join fees (fixes #122).
- "Not in Team" GUI:** Introduced a brand-new GUI specifically for players who are not currently in a team.
- Separated Cooldowns:** Team Home and Team Warps now have their own independent separate cooldowns.
- ✨ Improvements & Changes**
- MineDown Implementation:** Converted all plugin messages to use MineDown, allowing for much richer and more flexible text formatting.
- Configuration Overhaul:** Fully migrated the config, messages, and GUI configuration systems to use
ConfigLibinstead of Annotaml. - Fixed Economy Formatting:** Improved currency name selection so it properly displays singular or plural forms depending on the amount.
- 🐛 Bug Fixes**
- Fixed an issue with team list messages displaying incorrectly.
- Prevented players from paying a team join fee if it would exceed the team's bank limit.
- ⚙️ Under the Hood**
- Completely refactored message accessors and configuration loading to be more efficient.
- Performed major code cleanup: removed unused dependencies (
annotaml,boosted-yaml), tidied imports, and fixed minor typos in config comments.
The primarly reason i changed the config lib is to not ask you to delete the config, messages or teamsgui file everytime i change a setting, and also to improve the config itself.
So this is the **LAST** time you will need to delete a file
## TO UPDATE:
Delete the config.yml, messages.yml and teamsgui.yml files.
This build is production ready, but you might still find some minor bugs, if so please let me know in the Discord server or on the GitHub's issues page
- Display team join fee and currency in invitation messages
- made team GUI member/manager/ally/enemy name colors configurable.
## To update:
To update you need to regenerate your teamsgui.yml file.
You also need to regenerate your messages.yml file, otherwise you can add this line in the team invite message:
``
"[Join fee:](yellow) [%FEE%](gold)[%CURRENCY_NAME%](green)"
``## Additions:
- Added an option in the config to cancel teleports if a player moves / is damaged
- Added an option to disable the team echests backup message
## Fixes:
- Fixed a bug that would still send team/ally chat messages to player who disabled it
- Fixes the team list GUI colors
- Other minor fixes / code refactoring
To update, you need to regenerate the config and messages files
### Do i need to migrate my team EnderChests?
only if you are currently on 1.21.4 or below, or you did update to 1.21.5+ and you are having errors in the console.
how to migrate: https://ultimateteams.gitbook.io/ultimateteams-docs/setup/team-enderchests-migration
if you have any issue, join the Discord server
# 1.21.4+ ONLY
to prevent any future issue with the team EnderChests, and to be able to use new features available only in the latest versions, i had to update to 1.21.4+.
I noticed from bStats that 90% of the servers are already on those versions, so i don't think it'll be a problem.
- improved formatting in teamchat/allychat
- fixed an error for H2 database users
- added a placeholder that shows the team name without colors (**%ultimateteams_team_name_raw%**)
# FOR 1.21.4 USERS OR BELOW:
do not update your server version if you are using team enderchest or the echests data might get corrupted
tomorrow i will publish a new version to migrate the data
- Optimized the plugin's performance
- Fixed a placeholder that was not replaced
- fixed notification for /team transfer in both single and cross-server mode
- fixed duplicate message that would happen in some cases for cross-server users
- improved data consistency
- _more that i cannot remember_
Thanks [@gbpii](https://github.com/gbpii) for your help
- removed some debug messages that would appear in the console while shooting/destroying cystals
- improved efficency/memory usage of the plugin
Fixed an error that might happen when a bedrock player joins the server
Fixed an error that would restrict pvp even for teams with pvp enabled
To avoid regenerating the file, you can modify the related section like this:
(team.info section)
``
join-fee: "&3Join Fee: &a%AMOUNT%"
motd: "&3MOTD: &a%MOTD%"
``## If you skipped v4.7.5 check the related changelog before updating
- team MOTD. Players can now set a short message describing their team. the MOTD can be sent to players when they join the team (check the config)
- allychat can now be enabled for every message like team chat
- Added an option to additionally check a regex for team names/prefix/motd. (configurable separately for each one)
- A lot of new placeholders (old ones are still supported) https://ultimateteams.gitbook.io/ultimateteams-docs/hooks#placeholderapi
## TO UPDATE
reset both your messages and config files
> New Plugins Wiki:
https://ultimateteams.gitbook.io/ultimateteams-docs
> ### **So please read carefully and do not just drag and drop the file**
### New Features:
- Team Bank**. Teams can now deposit and withdraw money from the team bank
- Team Join Fee**. an option can be enabled to allow team owners (and managers) to set a join fee, that will automatically taken from players upon accepting an invite
- Invites now send a message featuring **buttons** to accept/deny the invite
- invites can now be sent with just **_/team invite <name>_**
- there is a new option in the config to always open the team list GUI when using **_/team list_**
- The messages now use [MineDown](https://github.com/Phoenix616/MineDown?tab=readme-ov-file#syntax), being 100% customizable, and the config has a new format to help finding messages
- Players can now disable invites** **_/invites <enable/disable>_**, so a player with disabled invites can't be invited in a team
- the chatspy command now has some alies to prevent other plugins overriding the command: **/teamchatspy, /tchatspy**
- Added 3 new perms for team managers: FEE (manage the join fee), DEPOSIT (deposit money into the team bank), WITHDRAW (withdraw money from the team bank)
### Fixes:
- Message sent upon wrong usage of the allychat is now customizable in messages.yml
- Message sent upon wrong usage of the team create command is now customizable in messages.yml
- Switched to the paper integration of the command manager for better performance
- chat spy messages will no longer sent to discord while using DiscordSRV
- fixed an issue that would prevent the plugin to load when Vault was not installed
- fixed an issue in the team gui that would diplay the members line for each team member
- fixed an issue that would send the teleport confirmation message 2 times in some cases
- much more that i can't remember
# TO UPDATE:
> **if you missed the latest beta version go check out the changelog for it, and be sure to change that option in the config for team echests, otherwise they won't work**
Delete your config.yml file.
Delete your messages.yml file
> i did not have enough time to migrate all the messages to the new format. **They will work just fine**, and you can use MineDown in any of them to have new features such as clicable buttons, hover text, etc. i will do it within the next versions, so you will be able to do copy and past them manually, or just regenerate the file.
## SPIGOT IS NO LONGER SUPPORTED
- Will i be affected?** most probably not.
If you are not using paper, use it. it is just way more optimized and there is no reasons to use spigot anymore.
## 1.19.4+ ONLY FROM NOW ON
As for paper, also almost everyones uses at least 1.20, so i updated to the 1.19.4 api to have more features that can help me bring more to the plugin. if you are running an older version don't update the plugin as it won't work.
# If you find any issue please report them on GitHub
> _This version is 99% production-ready but i marked it as beta while waiting for more tests and reported issues._
Teams can now have one or more shared enderchest (with variable size)
permission to use the echest: **ultimateteams.team.echest**
> **Team Echests are not compatible with cross-server yet**
Admins can view, manage, delete, add, backup and rollback teams echests with their dedicated command **/teamadmin echest
other fixes/additions:
- teams will now be updated even if there are no players online for cross-server setups that use REDIS (impossible with pluginmessage due to its limitations)
- teamchat spy messages will not be sent via discordsrv anymore
- invites now feature a clickable button for who receive it
- echests are updated real-time to prevent item dupes
## TO UPDATE:
- delete both your config.yml and messages.yml files
- enable enderchest migration in the config, wait for the server to start, then disable it and restart again.
Thanks to [dei0](https://github.com/dei2004) for the echest system. check out his fork of ultimateteams, that features a slighly different team management (like upgrades for more members and warps)
### INFORMATION REGARDING THE NEXT VERSION
in the next version i will convert the messages file to a new format, and it will be published probably within 2-3 days, so i wouldn't recommend you to change the messages file after it regenerates, since you will have to do it again.
i am also gonna add a little bank system, featuring only team balance for now, but with the future vision of adding an optional level system.
regarding respawn anchors, check here:
https://github.com/xF3d33/UltimateTeams/issues/94
- fixed a bug that would let players create warps with spaces in the name, preventing them to delete them later
- fixed a bug that would prevent damage caused by a player to himself if that player is in a team
additions:
- added admin transfer command **/teamadmin team transfer <team> <newowner>**
- added team name in the team list GUI
to update, delete your teamsgui.yml file
also, this version adds an option to change the default value of the teams friendly fire, making it possible to have team PvP enabled by default.
to update, either delete your config.yml file or add:
``
default-allow-pvp: true
``in the team pvp section just under the bypass-permission
More damage types are now blocked between team members/allies:
- Melee attack
- Projectiles (Arrows, SpectralArrows, Tridents,Snowballs, Eggs, Potions, etc.)
- Fireworks shot from a crossbow
- Primed TNT from another player
Teamchat, team gui, allychat permissions are now granted by default, fixing a "unknown command" error
### to update:
either reset or add this to your messages.yml file:
``
team-info-managers-header: "\n\n&3Managers: &3&o(%NUMBER%)"
`
either reset or add this to your teamsgui file under line 48 (the team list lore):
`
managers: '&3Team Managers: &d'
``Also, i updated the description here on Modrinth to display all the new permissions
- Now you can use just /tc to toggle teamchat on and off and messages normally typed in the chat will be forwarded in the teamchat.
to update, delete your teamsgui.yml file
also, delete the messages.yml or you can just add this 2 lines at the end of the file (you still need to delete the teamsgui.yml):
``
chat-toggle-on: "&3Toggled Team Chat &a&lON&3."
chat-toggle-off: "&3Toggled Team Chat &c&lOFF&3."
``with /team promote/demote <player>, you can now make players team managers.
Managers will be able to performs actions according to the permissios set by the team owner.
The team owner can manage permissions with /team permissios add/remove <permission>
The available permissions are:
- INVITE
- KICK
- PVP
- RELATIONS
- WARPS
- RENAME
- PREFIX
- HOME
- PROMOTE
each permission will grant usage of the corresponding commands/GUI
To update, please delete your messages.yml file or update it by looking at the github commit:
[https://github.com/xF3d33/UltimateTeams/commit/143d410075d833bbd588f2beca06df9d8613b563#diff-1c57d809edc36da705f89298fdace6d393381f6269427b87ce049291bd11c388](https://github.com/xF3d33/UltimateTeams/commit/143d410075d833bbd588f2beca06df9d8613b563#diff-1c57d809edc36da705f89298fdace6d393381f6269427b87ce049291bd11c388)
[https://github.com/xF3d33/UltimateTeams/commit/3d91a060894cdefbb39fabb718f16afc4009a6f0](https://github.com/xF3d33/UltimateTeams/commit/3d91a060894cdefbb39fabb718f16afc4009a6f0)
- You can now manage your team with /team gui (requires permission ultimateteams.team.gui)
- fixed a bug that showed the your team instead of the allied/enemy team when managing team relations
- fixed a typo in the messages file
The GUI system initially shows:
- team info
- home (left-click to tp, right-click to delete)
- warps (left-click to open warps manager)
- members (left-click to open members manager)
- pvp (left-click to enable/disable PvP)
- allies (left-click to open allies manager)
- enemies (left-click to open enemies manager)
In warps manager left-click to tp, right-click to delete the warp
In Members manager right-click to kick the player from the team
In allies/enemies manager right-click to remove the team from your allies/enemies
All the icons materials, texts and lores are configurable in the teamsgui.yml file.
You can see images of the gui in the gallery section
### To update, delete your teamgui.yml file
### If your're upgrading from v3.x remember to run the migrator first