GroupTopper
The documentation of GroupTopper, a Spigot plugin for group leaderboards
Where to find the plugin:
The documentation of GroupTopper, a Spigot plugin for group leaderboards
Where to find the plugin:
# The type of storage the plugin will use to store the value
# Available: YAML, SQLITE, MYSQL
storage-type: sqlite
# The settings for each group holders
holders:
jump_group: # The group holder name
top: jump # The top holder it will be based on
type: placeholder # Group settings
owner: '%player_uuid%'
display: '%player_name%'
online: true
task:
save:
# How many entries should be saved per tick
entry-per-tick: 10
# How many ticks should the plugin wait before saving the leaderboard
delay: 0This will guide you to set up a Group Holder
First, you add some settings to link a Top Holder to this Group Holder, which means the Group Holder will listen to the Top Holder for value changes and updates.
holders:
jump_group: # The group holder name
top: jump # The top holder it will be based onThis example will set that the Group Holder jump_group will listen to the Top Holder jump (Click here if you don’t know what jump is).
If you want to use a holder from TimedTopper, you can set the top-type field to timedtopper. Then you can set the top field to the name of the holder you want to use.
holders:
jump_group:
top-type: timedtopper # The type of the top holder. In this case, it will use TimedTopper
top: jump # The top holder it will be based onContinue reading to learn how to set up group settings.
Now you will set up some settings for the type of Group.
Continue reading to learn how to set up based on the Group plugin you desire. Check the sidebar for a list of supported Group plugins.
Requires BentoBox and one or more Gamemode addons
type: bentobox
gamemode: <gamemode> # the name of the gamemodeholders:
jump_group:
top: jump
type: bentobox
gamemode: bskyblockRequires BetterTeams
It’s recommended to enable singleOwner in the BetterTeams configuration to avoid unexpected behavior when checking for group ownership.
type: betterteamsholders:
jump_group:
top: jump
type: betterteamsRequires FactionsUUID
type: factionsuuidholders:
jump_group:
top: jump
type: factionsuuidRequires HuskTowns
type: husktownsholders:
jump_group:
top: jump
type: husktownsRequires KingdowsX
type: kingdoms
kingdoms-type: <KINGDOM/NATION> # The type of the kingdoms to get, KINGDOM for the kingdom of the player, NATION for the capital kingdom of the nation of the playerholders:
jump_group:
top: jump
type: kingdoms
kingdoms-type: KINGDOMRequires Lands
type: lands
lands-type: <LAND/NATION> # The type of the kingdoms to get, KINGDOM for the kingdom of the player, NATION for the capital kingdom of the nation of the playerholders:
jump_group:
top: jump
type: lands
lands-type: LANDRequires mcMMO
type: mcmmoholders:
jump_group:
top: jump
type: mcmmoRequires Parties
type: partiesholders:
jump_group:
top: jump
type: partiesRequires PlaceholderAPI and some placeholders to fetch the required group values
type: placeholderapi
owner: "<owner-placeholder>" # The placeholder to get the owner of the group (could be player name or uuid)
display: "<display-placeholder>" # The placeholder to get the display name of the group
online: <true/false> # Whether or not to handle the value for online players onlyholders:
jump_group:
top: jump
type: placeholder
owner: '%player_uuid%'
display: '%player_name%'
online: trueRequires SimpleClans
type: simpleclansholders:
jump_group:
top: jump
type: simpleclansRequires SuperiorSkyblock2
type: superiorskyblockholders:
jump_group:
top: jump
type: superiorskyblockRequires Towny
type: townyholders:
jump_group:
top: jump
type: townyGroup Mode represents a behavior that determines how the value of a member is assigned to the group value.
Setting the Group Mode can be done by setting the mode field of the Group Holder settings:
holders:
jump_group:
top: jump
<other group settings>
mode: maxThe available values for mode are:
default: The value of any member of the group will be assigned to the group.owner: Only the value of the owner will be assigned to the group.min: The value of the member will be assigned to the group only if it is less than the current group value.max: The value of the member will be assigned to the group only if it is greater than the current group value.total: The value of the group will be the sum of the values of all members.The query system is the same as the one used in Topper, with the addition that:
<holder> is the name of the Group Holder speficied in the configuration file of GroupTopper.top_name query returns the name of the Grouptop_key query returns the UUID of the owner of the GroupRefer to the Topper Query page for more information.
Details about the hooks provided by the plugin.
This page provides an overview of the support of LuckPerms, “A permissions plugin for Minecraft servers”.
The plugin provides a Context for each holder, which can be used to apply permissions based on the rank of the player in the board.
The format of the context key is as follows:
grouptopper_rank_<holder>where <holder> is the name of the holder configured in the GroupTopper configuration file.
For example, if the holder is named jump_group, the context key would be:
grouptopper_rank_jump_groupRelated commands in LuckPerms that deal with context has support for tab completion, allowing admins to get the available contexts for a player.
The plugin provides a PlaceholderAPI placeholder to allow you to query data from the Group Holder.
%grouptopper_<query>%Check the Query for more information about how to set the <query>
%grouptopper_jump_group;top_name;1%
%grouptopper_jump_group;top_value;1%
%grouptopper_jump_group;top_value;1;#,###%
%grouptopper_jump_group;top_rank%