Commands
Code (Text):
/bteams <create|edit|scoreboardalt|delete|list>
The primary command used when managing teams.
Subcommands
* create <teamId> <displayName>
Creates a new team with the specified id and display name.
* edit <teamId> <property> <newValue>
Edits a team's property by setting its value to <newValue>.
* scoreboardalt <teamId> <get|set|reset> <scoreboardAlt>
Manages a team's scoreboard alternatives. Use
set to set one,
get to view the currently set alternative, and
reset to clear the
current alternative.
* delete <teamId>
Deletes a team.
* list [all|scoreboard|custom]
Lists the existing scoreboard/custom teams.
Permission:
betterteaming.manage
Code (Text):
/btjoin <team> [player]
Joins a team. If a player parameter is provided, the player is added to that team.
Adding other players requires
betterteaming.manage.
Permission:
betterteaming.basic
Code (Text):
/btleave [teamId] [player]
Leaves a team. If no team is provided, the command will attempt to either leave the current team (if the executor is in exactly one team), or prompt the executor to choose which team(s) they wish to leave.
If a player parameter is supplied, the player is removed from the team.
Removing other players requires
betterteaming.manage.
Permission:
betterteaming.basic
Code (Text):
/btempty <team>
Empties a team (by removing all players from that team). This also empties the scoreboard alternative, if set.
Permission:
betterteaming.manage
Code (Text):
/btemptyall [shufflegroup]
Empties all teams belonging to the specified shuffle group. If no parameters are supplied, the command will prompt the executor before emptying all shufflegroups' teams.
Permission:
betterteaming.manage
Code (Text):
/btdisplay <team>
Displays a team's members.
Permission:
betterteaming.basic
Code (Text):
/btshufflegroup <create|addteam|removeteam|view|delete> <shufflegroup>
Manages shufflegroups.
Subcommands:
* create <shufflegroupId>
Creates a new shuffle group.
* addteam <shufflegroupId> <team>
Adds a team to the specified shuffle group.
* removeteam <shufflegroupId> <team>
Removes a team from the specified shuffle group.
* view <shufflegroupId>
Shows a shufflegroup's contents.
* delete <shufflegroupId>
Deletes a shufflegroup.
Permission:
betterteaming.manage
Code (Text):
/btshuffle <shufflegroup> [players]
Shuffles the specified players (or all online players, if no players are supplied) between the teams in the supplied shuffle group.
For testing purposes, the debugging switch
-d may be specified instead of players, followed by a list of mock players (anything, really). Everything in the player list will be replaced by a mock player, if a
-d switch is supplied.
By default, if no players are supplied, a warning will be issued about shuffling all online players (of which there may or may not be a lot). To ignore this warning, supply the
-f switch instead of the players.
Permission:
betterteaming.manage
Code (Text):
/lang <refreshDefault|reload|set> <language>
Provides a couple of useful actions relating to the localization system.
Subcommands:
* set <languageCode>
The obvious one - changes the plugin's language.
* refreshDefault
Replaces the default language file (en-US.yml) with a fresh copy
embedded in the plugin jar. This is helpful after an update, where
new localization keys were added, since the plugin does not perform
this action on startup. By executing this command, you ensure that
the language file in use is the latest one available.
* reload
Reloads the language file for the current language. Useful if you've made
changes to the language file and want to apply them.
Permission:
betterteaming.manage
About localization
The plugin's localization system works like this:
* On first startup, a localization folder is created in the plugin's data folder.
This folder is populated with the following:
- A configuration file (you don't really need to edit it manually - it's main purpose is to maintain persistent settings)
- An embedded language file (by default, all plugins I create are in English, so an en-US.yml file will be created.
*
The plugin then runs localization discovery, which searches the localization folder for language.yml files. All files are then added to the plugin's language options.
If you wish to translate the plugin, you will have to:
1. Create a copy of the default language file (en-US.yml)
2. Translate the keys' values (a key looks like
'this:' and is followed by a phrase in quotes)
3. Rename the language by renaming the file, as well as changing the
languageName property at top of the file.
4. Move the file back to the localization folder (if necessary)
After that, you'll have to either reload or restart your server to retrigger localization discovery, and then you'll be able to change the plugin's language using the
/lang set command.
Localization system errors:
1. Language not found - are you sure a language file has been provided for this language?
Solution: You are likely trying to change the plugin's language to one that hasn't been added or discovered by the plugin. If you've added a new localization file, make sure to reload/restart.
2. The default language file couldn't be refreshed, since no embedded copies were found.
Solution: This one doesn't really have solution, but it also shouldn't ever happen. This error means that the plugin doesn't provide an embedded language file (but that shouldn't be possible)
If you don't see a localization file you've added even after a reload, check the logs - the plugin will have logged the reason a file couldn't have been loaded.