SideBar
~ This plugin aims to give you complete control of the scoreboard/sidebar.
- More than 100 variables
- Color and UTF-8 symbol support: ❤
(see here to convert UTF-8 to ascii for yml)
- Dynamically updating sidebar
- Set a sidebar to appear in certain worlds
- Have per group sidebars
- Optionally allow users to choose what sidebar to use
- Use commands to manage a player's sidebar
- Use in-built scripting to change user's sidebar or add new variables
- Group Specific Sidebar Permissions. Add & remove permissions for certain sidebars at your command
- No database required
Click here for a list of {variables}
The installation process is easy. Simply put this plugin, as well as Vault into your plugin directory and restart your server.
Dependencies
This plugin requires Vault - Click here to download it if you don't already have it.
Several files/folders are created upon installation.
config.yml
Setting | Description | Default Value |
---|---|---|
version | The plugin version (do not change) | version dependent |
scripting.directory | The location to use for custom scripts | scripts |
scripting.sidebar-directory | The location of the sidebar files | scoreboards |
multiworld.<world>.sidebar | The sidebar to use for that world (set to false for no scoreboard) | default |
sidebar.autoupdate.whitelist | A list of placeholders which should update (add your own here) | some big list |
sidebar.auto-update.enabled | Whether the scoreboards should update, or simply be static | true |
sidebar.interval-ticks | How often to update a scoreboard (20ticks=1s) | 20 |
sidebar.async | Do not mess with this unless you know what you are doing | false |
language | What yml file to use for the language messages | english |
compatability-mode | Whether other scoreboard plugins should be allowed to disable this scoreboard | true |
english.yml
- Not implemented yet :(
scripts folder
You will find two scripts already here.
To use the script "example.yml" simply put "{example}" in your scoreboard file
To use the script "test.js" simply put "{js:test.js}" in your scoreboard file
To add your own script, create a new .yml or .js file in the scripts directory
For outdated information on scripting, click here.
Click here for a list of {variables}
scoreboards folder
Setting | Description | Examples |
---|---|---|
title | The title (appearance) of the scoreboard | e.g. "Ranks" |
permission | The permission node required to use this scoreboard | e.g. sidebar.use.ranks |
description | A short description of the scoreboard | e.g. "Cost of different game ranks" |
keys | Keys are the values on the left of the scoreboard They can be anything less than 16 characters You can have placeholders in a key | e.g. Money: ${money} or just "Money:" |
values | This is the right side of the scoreboard Scoreboard elements are automatically sorted in descending order If you want something on top, it needs a large value You can only put numbers here or something that resolves to a number | e.g. 5 {money} |
Adding your first scoreboard:
1. Navigate to the scoreboards folder
When the plugin loads for the first time, it will create a folder (in your plugins directory) called SideBar
- Within here you will find the scoreboards folder (as well as the config.yml)
2. Create a new yml file
An example scoreboard (example.yml) should also be present.
It is recommended that you copy this file and base your new scoreboard off this.
Here is the example scoreboard file opened in NP++:
3. Changing the title
Set the title key to whatever you want the label to be for the scoreboard.
- e.g. title: "Stats:"
4. Add a permission node
Set the permission key to the permission node required for a user to use that scoreboard.
- e.g. permission: sidebar.use.myfirstscoreboard
5. Add a description
Set the description key to a brief explanation of the purpose of the scoreboard so that players will know what each scoreboard does.
(Useful if you want to allow users to set their own scoreboard using commands)
6. Add scores
The scores which will be visible on the scoreboard are under keys and values
Some things to note about scoreboard behavior:
- Each score is comprised of a String (some text) and an Integer (a whole number)
- Currently the length of the String cannot resolve to be longer than 15 characters.
- Scores are automatically sorted in descending order (client side)
(The score with the highest Integer value will always be on top)
Things you can use for "keys":
- Plain text e.g. Hello
- Color codes e.g. &6Hello
- Variables e.g. Hello {player}
- Unicode symbols e.g. \u2764 (ASCII equivilent of ❤)
See here for a list of variables
See here to convert UNICODE symbols to ASCII
Things you can use for "values":
- Whole numbers e.g. 6
- Variables e.g. {age}
- Expressions e.g. 15*6+4
(You may have variables within an expression)
(The result must evaluate to a whole number however)
6. Add the scoreboard to the config
Open the config.yml
For each map there will be a sidebar option.
- Set the sidebar/scoreboard for each world using this option.
- Set sidebar to the name (not including .yml) of the scoreboard file.
- e.g. If your scoreboard file is called custom.yml you may have sidebar: custom
7. Add your own dynamic variables
See here for help on creating your own variables
Command | Description | Permission |
---|---|---|
/sidebar help | Shows a list of commands | none |
/sidebar set <sidebar> | Set your sidebar | sidebar.set +node for specific scoreboard |
/sidebar set <sidebar> <player> | Set someone's sidebar | sidebar.set.other |
/sidebar list | Shows a list of scoreboards | sidebar.list |
/sidebar reload | Reloads the configuration | sidebar.reload |
[TODO]
Tell me if you want a feature added
- Sidebar setting for groups/permissions (Vault Required for Group Permissions, if vault is not found it will revert to bukkit based permissions)
- World grouping
- Command to hide sidebar
- Empty sidebar will not display
- Priority option for group/permission/world sidebars.
- Command to preview a sidebar (in chat)
- Command to browse placeholders
- Command to set variables
- Command to view a player's current sidebar
- Command to view a world's default sidebar
Latest build can be found here:
Repository | Status | Extra Info |
---|---|---|
Subproject | (Click image for repository: Sub) | Not Stable (Mostly alpha/beta builds) |
Masterproject | (Click image for repository: Master) | Stable (Stable Beta/Release builds) |
como pongo para que aparezca un jugador por ejemplo bienvenido: nombre del jugador
-No support for PlaceHolder API
-No support WG region name
((9
is REALY a good plugin i love him ,Thanks"
@TechmoMaster
What version of bukkit/craftbukkit/spigot are you trying to use the plugin on?
If it isn't on 1.7.9 then it will not work properly as many of the function have be depreciated (going to be removed or is already in the works of being null).
This project could be taken over by someone else if they really want to keep updating it. Just PM me and i will add you to the project, just fork a copy of the project from github and you can start with that version (1.7.9)
@TechmoMaster
Hi TechmoMaster,
maybe it´s something with the coding format? I just got some issues with this too a few days ago.
I only solved the problem as the following;
- open Notepad.exe
- edit your new scoreboard
- save it with coding format UTF-8
- then upload it to your plugin configuration folder
As I said... Maybe it´ll work :)
Greatings maDDin546
P.S.: Sry, for my bad English. :D de_DE
Hi. This doesn't work for me. I've added a new yml file and set to to a world but it doesn't work. It just keeps flashing and one won't even come on. What is happening?
EDIT: It doesn't even show up now!!!
I Don't have a SideBar config pls help me!is there a way to make it so ALL scoreboards will work in the same world or server?
ps- I love the looks of this plugin, i see so much potential!
@Murderer10101
The flashing could be from using the plugin on an unsupported server version, or could be from native minecraft refreshing. I will have to get back to you on that one.
@pokemon5975
That is more of a limitation to the minecraft code, there are workarounds but will take more resources from the server to keep checking for a player in a specific world.
@Techmo9j This is not a bungee based plugin therefore it can't be used as such to gather information across multiple servers.
@Derek2000mc
It is possible to use placeholders that are already given for factions names etc.
The pages just haven't been updated in a long time, I will get around to it once the plugin is updated for 1.8
Nvm. The flash is updating, i think. Noticing it only flashes for variables that can change at any time.
Wheb you load the default files, the age and group sections flash on and off. Is there a way to disable this?
I like the plugin, it is awesome. But the perworld feature only works if you relog in the server. If you guys could fix it that'd be great. Anyway great job.
I was wondering if there is any sort of way I can incorporate factions?
ex. Faction name Number of fac mates allies etc.
skype- dmo.dmonster
@mfon45
Please provide what your config files look like for the scoreboards. it is possible that you are using this plugin on a different version of minecraft than what is recommended.
Hello! I downloaded the plugin, changed the name of the default, and then set up the scoreboard. I went into the config, changed all the world scoreboards, restarted the server and nothing happened. Don't know what to do, but this seems like a good plugin. And please don't ask me for a pastebin, because this has nothing to do with that. Thanks
@OTF_Catastrophe
Hi there.
Well, apparently the length function is buggy. I managed a workaround for displaying the number of players online. If you use the following for your value, it should work:
{js:\"{online}\".split(\",\").length}
Hi there.
Yes, it seems to be a great plugin, except maybe it needs an update? I'm running CB 1.8 and trying to set up a very simple sidebar, but...
- /sidebar reload doesn't seem to work - I get the [RELOADING] message but nothing updates. I have to restart the server every time I make a change to default.yml.
- there seems to be no way to show how many players are online: {length:{online}} returns -1 when there's one player in the server, 19 when there's 2. {online} does seem to return the correct comma delimited list of players, so I tried counting the commas in {online} with {count:{online}:,} but it's always zero.
Also, the latest build links above are broken.
best regards.