HomeJavaModsEnhanced BalTop
Enhanced BalTop
EnhancedBaltopLogo.png

TESTED ON CraftBukkit/Spigot 1.7 - 1.12

PLEASE DON'T FORGET TO RATE THIS PLUGIN ! ;)

Description:

Fully
customizable and enchanced /baltop replacement command (continues where Essentials left off!) with holographic balance boards. (Uses Holographic Displays plugin).

new v1.3 default /baltop output:-
2016-04-18_19.07.45.png

v1.0-v1.2
default /baltop output : (defaults to page 1):-
baltop_cmd_page1.png

/baltop 2
output (Showing you page 2 of 5)
baltop_cmd_page2.png



/baltop holograms (Showing you page 1 and page 2 out of Top 30 balances):-

(Version 1.3 default)
2016-04-18_13.16.44.png

(Version 1.2 default or below)
2016-03-17_00.01.21.png

2016-03-17_00.01.32.png


Commands:-

/baltop [<pageno>]
Displays text based baltop board, one page at a time. You can list which page number with the optional <pageno> parameter.
(executable by: console/player)

/baltop topnbal <numberofplayers>

Sets the text based baltop board to display Top <numberofplayers> Balances, one page at a time. Pages default to 10 players, but can be changed in the config file.

Balance Boards are immediately reset to Page 1.
(executable by: console/player)

/baltop exclude list
Lists players added to the permanent exclusion list stored in the config file. If displayuuid is true|yes in config.yml then it will display the player's UUID.
.(executable by: console/player)

/baltop exclude add <playername>|<playeruuid>
Add player <playername> or <playeruuid> to the permanent exclusion list and adds it to the config file.
(executable by: console/player)

/baltop exclude remove <playername>|<playeruuid>
Remove player <playername> or <playeruuid> from the permanent exclusion list and removes it to the config file.
(executable by: console/player)

/baltop holotopn <numberofplayers>
Sets Default TopN value to <numerofplayers> initially used when creating new holographic display boards.
(executable by: console/player)

/baltop hologram list
Lists existing holographic balance board details with their respective location (world/XYZ coords), update interval and board template file used.
(executable by: console/player)

/baltop hologram movehere <hologramname>
Moves/relocates hologram <hologramname> to player's current location.
(executable by: player)

/baltop hologram add <hologram_name> [interval] [board_filename]
Creates permanent hologram balance board <hologramname> at the players current location.
You can optionally special the interval in seconds on how ofter the board is updated, default interval of 30seconds is used if omiited.
Also you can optionally specify which balance board template file is used to create the hologram, default.yml is used if this parameter is omitted.

(executable by: player)

/baltop hologram remove <hologramname>
Removes hologram balance board <hologramname> from its current location.
(executable by: console/player)

/baltop hologram topn <hologram_name> <top_n_players>
Set's Top N players for hologram balance board < hologram_name> to < top_n_players>.

/baltop reload
Reloads plugin and config - This does not disable/remove any of the existing hologram balance boards.

Dependancies:-

Required:
Vault (For economy and permissions)
http://dev.bukkit.org/bukkit-plugins/vault/

Optional:
Holographic Displays (for holograms)
http://dev.bukkit.org/bukkit-plugins/holographic-displays/

Clip's PlaceholderAPI (for external plugin placeholder variables)
https://www.spigotmc.org/resources/placeholderapi.6245/

config.yml:-

Code (Text):
enable: true
checkupdates: true
displayuuid: true
cmdaliases:
- 'ebaltop'
- 'ebt'
- 'bt'
deftopn: 100
pagesize: 10
excludepermnode: EnhancedBalTop.baltop.excludeplayer
usemoneydenominations: true
decimalplaces: 2
dateformat: dd-MM-yyyy HH:mm
excludedays: 30
placeholderempty: ''
header:
- '&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e='
- '&e{servername} &f{date}'
- '&6Top &a{topnbal} &6Balances For Last &a{excludedays}&6 days'
- '&6High Bal: &e{maxbalplayer}&e - &a$&f{maxbalvalue}'
- '&6Low Bal: &e{minbalplayer}&e - &a$&f{minbalvalue}'
- '&6Offline Players: &a{totalofflineplayers}&6, Online Players: &a{totalonlineplayers}'
- '&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e='
detail:
- '&6{lineno}: &f&l{player} &6has &a$&f{balance}'
- '&6{lineno}: UUID: &a{uuid}'
footer:
- '&e---- Page &6{pageno} &eOf &6{totalpages} &e----'
holotopn: 100
holopagesize: 10
holoupdateinterval: 30
holoheader:
- '{icon:DIAMOND}'
- '&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e='
- '&e{servername} &f{date}'
- '&6Top &f{topnbal} &6Balances For Last &a{excludedays}'
- '&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e='
holodetail:
- '&6{lineno}: &f&l{player} &6has &a$&f{balance}'
holofooter:
- '&e---- Page &6{pageno} &eOf &6{totalpages} &e----'
- '&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e='
- '&6Enhanced&eBalTop &f(C) 2016 &1&lL&2&lO&3&l&lZ&4&lZ&c&lSoft'
- '&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e=&6-&e='
- '{icon:DIAMOND}'
excludedplayers: []

config.yml Explanation:-

Whilst some options are self-explanatory, information for the less obvious config options below:-

displayuuid:
Enables display of Player UUID's for COMMANDS ONLY such as /baltop exclude....
If you're using the default config, then UUID's are displayed for player balances in the text based balanced boards via /baltop command. To disable this, remove the following line from config.yml:-
- '&6{lineno}: UUID: &a{uuid}'


cmdaliases: Add multiple command override aliases (these should override any existing commands should you pick a command alias that already exists). e.g. 'ebaltop' will override Essentials ebaltop and run /baltop instead!

deftopn: Sets the total number of player balances displayed for text based /baltop balance boards.

pagesize
: Sets the number of players listed per page. Don't set this too high otherwise your text output will scroll for long player lists (if set by deftopn) !

excludepermnode
: Custom permission node also used for excluding players in addition to the /baltop exclude based commands.
This works with most permission plugins (PEX, bPermissions, GroupManager etc) as supported by Vault permissions.

usemoneydenominations
: If set to true, balances will use the following denomations/notation:-
K, M, B, T, Q, QT, S, SP
Set to false to disable and use normal notation


decimalplaces: Set number of decimal places balance/money value is rounded to. E.g. default is 2,: If player has balance say $100.268 will be displayed as $100.27.

dateformat: dd-MM-yyyy HH:mm
Standard Java date format for header/footer/detail config lines containing {date} variable in config file.

excludedays: Set number of days to exclude old player balances via their lastloggedin date/time. This defaults to 30 meaning any player balances over 30 days old/not logged in for over 30 days will be excluded.
Set this to 0 to disable this feature.

placeholderempty: String to display if placeholderapi string wrapped with % (e.g. %statistic_player_kills%) returns empty string or unresolved. Defaults to ''

holotopn: Sets the total number of player balances displayed for holographic based /baltop balance boards.

holopagesize
: Sets the number of player balances listed per page for holographic based balance boards. Default is 10 players

holoupdateinterval
: Sets the update interval in seconds for all the holographic balance boards. If they span across multiple pages, it will cycle through each page, one per update.

Edit the relevant Header, Detail and Footer keys to customise your Text based /baltop and hologram balance boards....

Header & Footer (text /baltop and holograms) keys

The headers and footer config lines for text based /baltop and holographic balance boards can have multiple lines as can be seen by the config,

They also support single line holographic icons/itemlines (as per holographic displays spec) using the {icon:xx} variable.


Detail (text /baltop and holograms) keys

Multiple details line which are normally used to display the player name and their associated balance.


All color coding and formatting codes support using & prefix.


messages.yml (v1.3+ only!):-
Code (Text):
cmdprefix: "&7[&eEnh&6BalTop&7] "
hookvaultecon: "&aHooked Successfully Into &f&lVault Economy"
vaultnf: "&cDependant &f&lVault &cPlugin Not Found!"
holopluginnf: "&f&lHolographic Displays &cPlugin Not Found, Exiting"
hookvaultperm: "&aHooked Successfully Into &f&lVault Permissions (&e%0%&a)"
newversion: "&6New Version: &a%0% &6Is Available. Download from &ahttps://www.spigotmc.org/resources/enhanced-baltop.20168/"
failcheck: "&cFailed To Check For Update....."
reloadplugin: "&aReloaded Plugin"
reloadconfig: "&aReloaded Config"
#
hologramfilenf: "&cHologram File &a&%0%&e Not Found, Creating!"
hologramscr: "&6Creating Initial Holograms From &a%0%"
holocoordnf: "&cHologram: &a%0% &chas Empty &a%1% Coord. Value In &a%2%"
holocoordnv: "&cHologram: &a%0% &chas Invalid &a%1% Coord. Value In &a%2%"
#
topnbalset: "&eSet No. Player Balances To &a%0%"
holotopnset: "&eSet Hologram No. Balances To &a%0%"
excllist: "&6Excluded Players List:-"
hololist: "&6Hologram List:-"
#
getbalinfo: "&6Fetched And Sorted &a%0%&6 OffLine Player Balances"
holoinfo: "&e%0%. &6Hologram: &f%1%&e, &6World: %2%&f & [email protected] X: &f%3%&6, Y: &f%4%&6, Z: &f%5%"
holocrinfo: "&6Created Hologram: &f%0%&e, &6In World: %1%&f & [email protected] X: &f%2%&6, Y: &f%3%&6, Z: &f%4%"
holoreminfo: "&6Removed Hologram: &f%0%&e, &6From World: %1%&f & [email protected] X: &f%2%&6, Y: &f%3%&6, Z: &f%4%"
holomoveinfo: "&6Moved Hologram: &f%0%&e, &6To World: %1%&f & [email protected] X: &f%2%&6, Y: &f%3%&6, Z: &f%4%"
excllistinfo1: "&6%0%. &ePlayer: &f&l%1%"
excllistinfo2: "&6UUID: &a%0%"
excladdinfo1: "&6Added Player: &a&l%0%"
excladdinfo2: "&6UUID: &a%0%"
excladdinfo3: "&6To Excluded Players List"
exclreminfo1: "&6Removed Player: &a&l%0%"
exclreminfo2: "&6UUID: &a%0%"
exclreminfo3: "&6From Excluded Players List"
#
usage: "&6Usage: &e&l/%0% &a[pageno]"
reloadusage: "&6Usage: &e&l/%0% reload"
topnbalusage: "&6Usage: &e&l/%0% topnbal &a<numberplayers>"
holotopnusage: "&6Usage: &e&l/%0% holotopn &a<numberplayers>"
excllistusage: "&6Usage: &e&l/%0% exclude list"
excladdusage: "&6Usage: &e&l/%0% exclude add &a<player>"
exclremusage: "&6Usage: &e&l/%0% exclude remove &a<player>"
hololistusage: "&6Usage: &e&l/%0% hologram list"
holoaddusage: "&6Usage: &e&l/%0% hologram add &a<holoname>"
holoremusage: "&6Usage: &e&l/%0% hologram remove &a<holoname>"
holomoveusage: "&6Usage: &e&l/%0% hologram movehere &a<holoname>"
#
baltopperm: "&cYou Don't Have Permission to &a/%0%&c, Exiting"
topnbalperm: "&cYou Don't Have Permission to &a/%0% topnbal&c, Exiting"
holotopnperm: "&cYou Don't Have Permission to &a/%0% holotopn&c, Exiting"
holoperm: "&cYou Don't Have Permission to &a/%0% hologram &ccommands, Exiting"
exclperm: "&cYou Don't Have Permission to &a/%0% exclude &ccommands, Exiting"
#
baltoptp: "&cIncorrect Parameters '&a%0%&c', Exiting!"
reloadtp: "&cIncorrect Parameters '&a%0%&c', Exiting!"
topnbalnp: "&cMissing Number Players Parameter, Exiting!"
topnbaltp: "&cIncorrect Parameters '&a%0%&c', Exiting!"
topnbalnv: "&cInvalid Number Players Parameter '&a%0%&c', Exiting!"
holotopnnp: "&cMissing Number Players Parameter, Exiting!"
holotopntp: "&cIncorrect Parameters '&a%0%&c', Exiting!"
holotopnnv: "&cInvalid Number Players Parameter '&a%0%&c', Exiting!"
pagenv: "&cInvalid Page Number: &a%0%&c, Exiting!"
#
exclnp: "&cMissing Parameters, Exiting!"
excltp: "&cIncorrect Parameters: '&a%0%&c', Exiting!"
excllisttp: "&cIncorrect Parameters: '&a%0%&c', Exiting!"
excladdnp: "&cMissing Player Parameter, Exiting!"
excladdtp: "&cIncorrect Parameters: '&a%0%&c', Exiting!"
excladdnf1: "&cPlayer: &a%0%&c Not Found, Exiting!"
excladdnf2: "&cUUID: &a%0%&c"
exclremnp: "&cMissing Player Parameter, Exiting!"
exclremnf1: "&cPlayer: &a%0%&c Not Excluded, Exiting!"
exclremnf2: "&cUUID: &a%0%&c"
exclremnf: "&cPlayer: &a%0%&c Not Excluded, Exiting!"
exclremtp: "&cIncorrect Parameters: '&a%0%&c', Exiting!"
#
holonp: "&cMissing Parameters, Exiting!"
holotp: "&cIncorrect Parameters: '&a%0%&c', Exiting!"
hololisttp: "&cIncorrect Parameters: '&a%0%&c', Exiting!"
holoaddtp: "&cIncorrect Parameters: '&a%0%&c', Exiting!"
holoaddae: "&cHologram: &a%0%&c Already Exists, Exiting!"
holoaddnh: "&cMissing Hologram Parameter, Exiting!"
holoaddcs: "&cCannot Run &a/%0% hologram add &cfrom Console, Exiting!"
holoremnh: "&cMissing Hologram Parameter, Exiting!"
holoremtp: "&cIncorrect Parameters: '&a%0%&c', Exiting!"
holoremnf: "&cHologram: &a%0%&c Not Found, Exiting"
holomovecs: "&cCannot Run &a/%0% hologram movehere &cfrom Console, Exiting!"
holomovetp: "&cIncorrect Parameters: '&a%0%&c', Exiting!"
holomovenh: "&cMissing Hologram Parameter, Exiting!"
holomovenf: "&cHologram: &a%0%&c Not Found, Exiting"

Variables:-

v 1.0+ Header, Footer, Detail Line Variables:-

{ servername} - Current server name.
{ pageno} - Current page number.
{ totalpages} - Total number of pages used for balance board.
{ player} - Player's (Minecraft) full user name.
{ playerpadr} - Player's (Minecraft) full user name padded with
spaces after the name to make it 16 characters in
length
{ date} - Current Date/Time formatted as per dateformat in
config.yml

v 1.3 + Header, Footer, Detail Line Variables:-

{ uuid} - Player's offline/online UUID
{ totalonlineplayers} - Total number of currently online players.
{ totalofflineplayers} - Total number of offline players that have logged
onto the server (this include online players count).
{ maxbalvalue} - Maximum offline or online Player balance
{ minbalvalue} - Minimum offline or online Player balance
{ maxbalplayer} - Player's name with maximum offline or online
balance
{ minbalplayer} - Player's name with minimum offline or online
balance
{servertotal} or - Displays sum of all player balances rounded and
{serverbaltotalfmt} using unit denomination (i.e . K/M/B etc

{serverbaltotal}
- Displays sum of all player balances without using
unit denominations but rounded to number of
decimal places defined by DecimalPlaces
config option.

{maxplayerbalvaluefmt}
- Displays Player Name with highest balance
rounded and using unit denomination. {maxplayerbalvalue} - Displays Player Name with highest balance
rounded to number of decimal places defined
by DecimalPlaces config option.
Does not use unit denomination.
{minplayerbalvaluefmt}
- Displays Player Name with lowest balance
rounded and using unit denomination.
{minplayerbalvalue} - Displays Player Name with lowest balance
rounded to number of decimal places defined
by DecimalPlaces config option.
Does not use unit denomination.



All versions Header and Footer Lines ONLY support:-

{ icon: <materialname>}

Where the <materialname> is the standard CraftBukkit material name.

For more info refer to https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Material.html


Permissions:-

( v1.0 - v1.4.1 only
Add EnhancedBalTop.baltop, root permission )

then add:-

EnhancedBalTop.baltop.baltop
or (v1.4.5+)
EnhancedBalTop.baltop
Allows access /baltop command only!
(player level)

EnhancedBalTop.baltop.exclude
or (v1.4.5+)
EnhancedBalTop.exclude
Allows access to the /baltop exclude commands
(admin level)
(Note: Players can also be excluded via permissions through the custom permission node excludepermnode defined in config.yml).

EnhancedBalTop.baltop.hologram
or (v1.4.5+)
EnhancedBalTop.hologram
Allows access to all the /baltop hologram ... commands.
(admin level)

EnhancedBalTop.baltop.holotopn
or (v1.4.5+)
EnhancedBalTop.holotopn
Allows access to /baltop holotopn command.
(admin level)

EnhancedBalTop.baltop.topnbal
or (v1.4.5+)
EnhancedBalTop.topnbal
Allows access to /baltop topnbal command.
(admin level)

EnhancedBalTop.baltop.admin

or (v1.4.5)
EnhancedBalTop.admin
Allows access to:-
/baltop exclude ...
/baltop topnbal ...

/baltop holotopn ...
/baltop hologram ...
/baltop reload



Future Ideas/Additions:-

I have some new ideas in mind, which I will more than likely add to a premium version of this plugin, depending on feedback :)

These are:-


Let me know if you have any sensible and great ideas with regards to what you'd like to see added to this plugin o_O

If you like my work please consider donating to me, by clicking donate below.

MANY THANKS :p
-Lozz

Picture of me 4.png btn_donate_LG.gif

Commands

Plugin details

Read from the plugin's own plugin.yml.

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Enhanced BalTop is a free Minecraft Java mod. Compatible with Minecraft 1.7, 1.8, 1.9, 1.10 and newer. Downloaded 26,034 times (via Spigot). Download it and open it directly in the game.

Explore more