Resource icon

SpigotMC Plugin BannerBoard 1.9.10.4

You must be signed in and/or upgrade to VIP to download this resource
Tested Minecraft Versions:
1.8 - 1.13
Languages Supported:
EN
Contributors:
Neon
Support has been taken over by @TrinityDEV

Read the entire page before buying the plugin or asking questions.

When using skinrender.com I see a big red square! More information here.

If you have any issues, please contact Thiemo (@TrinityDEV support, not me) before posting a review.


A full documentation of the plugin's inbuilt renderers can be found here.



BannerBoard can show different banners to different players. You can also put the skin of the player on a banner!


As of version 1.7.0 BannerBoard also supports changing banners. Please note that for performance reasons I recommend not to set the update interval to lower than 30 seconds.

BannerBoard does not support animations. So it doesn't support .gif files either.

BannerBoard is not compatible with any Spigot 1.7 build or lower.

Are you looking for an awesome way to communicate with your players personally? Please keep reading!

BannerBoard does not require any client side modifications. Everything is ran on the server side.

Added PlaceholderAPI support in version 1.3.5.


SkinRender.com Key
Please note that skinrender.com is not part of BannerBoard. Any skin render service that provides skins via HTML can be used with BannerBoard. The skinrender.com server only works with a key. I give a key for free to everyone who purchases BannerBoard. Once you have purchased BannerBoard, you will receive a key in your SpigotMC conversation inbox within an hour. The BannerBoard plugin works just fine without a key, but you will not be able to use skinrender.com, so you'll have to find an alternative site to fetch your skin renders from.
BannerBoard is still fully functional without the use of a key.



Shop implementation NOW available!

Credits to @ASTRACRAFT for the screenshot above

What is BannerBoard?

BannerBoard uses maps to render images in your server as banners. BannerBoard banners are dynamically rendered when a player logs in. Thank donators or encourage new players to visit your shop? It's possible! The possibilities are endless and BannerBoard is easy to use with its powerful and user friendly configuration. The rendered images are 128 x 128 pixels per block, that’s a higher quality than most resource packs are!

Lightweight
Performance is of great importance for every server owner, that is exactly why I made this entire plugin with that in mind. Not only does the image rendering happen entirely on separated threads, but also is the BannerBoard color picking system more than twenty times faster than the inbuilt Spigot color picking system. This is done by using an advanced caching system.

Check it out yourself
It is always better to see something with your own eyes. Feel free to join my test server and have a look at the four banners I have made as examples.
Preview server currently offline.
I'll be making a small list of all servers currently running BannerBoard, please contact me if you would like to be added.
Spoiler: Servers Running BannerBoard

Requirements
  • Spigot 1.8 or higher.
  • Images are cached on startup. Depending on how many images you have, I’d say the amount of memory this plugin uses is a few megabytes plus the size of your /images/ folder.
  • A decent internet connection. Also make sure to enable packet compression at a threshold of 256 or less bytes. If you have packet compression disabled, make sure to turn it on. It is enabled by default.
  • At least two cores so the main thread won’t suffer from the BannerBoard render threads.
  • Java 7 or higher.
Configuration
BannerBoard is highly configurable. The config is very powerful and easy to use. If you can't figure out how it works, please check the video below about BannerBoard. If you still don't get it to work, I offer help with the configuration for free.



AfterBurn2point0 made a very clear video about BannerBoard as well. Little side note; the reason the text did not show halfway the video is because renderers in the config are drawn in order from top to bottom. So in his example, he first draws the text and then pastes the image on top of that.



LtJim007 also made an amazing video about BannerBoard. Feel free to check it out below. Oh, and don't forget to leave him a like




Big thanks to maximiliano for creation a Spanish video about BannerBoard!
Note: I do not speak Spanish at all, thus, support is English or Dutch only!


VipFTW made a cool video about BannerBoard as well. However I would like to add two side notes; BannerBoard does not support 1.7 at all. Also, RGB colors range from 0 to 255, not higher
Enjoy the video here.


As of version 1.5.4 the view distance of the banners can be set in your spigot.yml by setting entity-tracking-range key misc to what you'd like the view distance to be (in blocks). BannerBoard automatically adapts to what's set in your spigot configuration file.
Spoiler: Where exactly?
We start by creating the banner. I highly advise you to have no other players online when going through these steps.

  • Use the command /bannerboard create. This will give you two redstone blocks. There is no permission for the command, however it does require you to be a server operator.
  • Place both blocks at an opposite corner (e.g. left bottom and right top). Please don't make your banner too big, BannerBoard might refuse to make it. Make sure to have a solid wall behind the banner and no blocks placed around the edges, these blocks should be placed later to prevent misplaced itemframes. Your wall should look something like this.

    If you misplace a redstone block or you want to redo the placing, use the command /bb delete twice while you're looking at the banner to delete the banner. You can now start over again.
  • When you open the configuration file now, you will see an internal section as well as a configurable section. Please don’t change any of the internal values, these are for internal use only. In the renderers section you will find the two default example renderers, add more lines or change the existing lines to whatever you want.

    BannerBoard currently has seven inbuilt renderers. All renderers and its parameters are comprehensively explained on my wiki page, which you can find here.
  • Make sure to always use the command /bb reload after changing anything in the renderer section of the configuration file.
Placeholders
As of version 1.3.5 you can use the few hundreds of placeholders PlaceholderAPI offers us. Just drop the PlaceholderAPI jar in your server, restart, and use the command /papi ecloud list all <pagenumber> to navigate through all available placeholder packages. Use this list to find out which ones you want to install. After installing the placeholders, you can simply use the placeholders for the BannerBoard TEXT renderer.

These are the four examples I made in the preview server, followed by their render configuration section. Renderers in the list are always called in order from top to bottom.


Used http://www.skinrender.com/ with LIVEIMG here for the 3D skin.
Code (Text):

configurable:
renderers:
- IMAGE -src cinematic.png
- TEXT -text Supports personal banners -size 60 -font Minecrafter -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 2 -yOffset 80
- SKIN -type HEAD -xOffset 854 -width 256 -height 256
- LIVEIMG -url http://www.skinrender.com:2798/fullskin-%name%-1024-0-15-0-0-17-0-107-48-13-24-15-11-0-31-18-0-31-13 -width 600 -height 600 -xOffset 270 -yOffset \-20
- SKIN -type 3DHEAD -xOffset 64 -width 256 -height 256
- TEXT -text Welcome %name% -size 60 -font Minecrafter -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 2 -yOffset 620





Code (Text):

configurable:
renderers:
- IMAGE -src creativeplots.png
- TEXT -text %name% -size 90 -font Minecrafter -color 0,100,150 -strokeColor 255,255,255 -strokeThickness 5 -yOffset 140
- TEXT -text join -size 90 -font Minecrafter -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 2 -yOffset 250
- TEXT -text creative -size 160 -font Minecrafter -color 0,100,150 -strokeColor 255,255,255 -strokeThickness 5 -yOffset 420
- TEXT -text plots -size 90 -font Minecrafter -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 2 -yOffset 530




Please note the diamond sword in your hand. Used http://www.skinrender.com/ with LIVEIMG here for the 3D skin.
Code (Text):

configurable:
renderers:
- IMAGE -src fields.png
- IMAGE -src sword.png -xOffset 780 -yOffset 25 -width 210 -height 210
- LIVEIMG -url http://www.skinrender.com:2798/fullskin-%name%-640-0-340-0-0-0-0-24-15-133-69-13-55-0-0-20-0-0-13 -xOffset 630
- TEXT -text SURVIVAL -size 200 -font Segoe Script -style BOLD -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 7
- TEXT -text JOIN NOW -size 130 -font Segoe Script -style BOLD -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 7 -yOffset 560




Please note the snowball in your hand. Used http://www.skinrender.com/ with LIVEIMG here for the 3D skin.
Code (Text):

configurable:
renderers:
- IMAGE -src icebiome.png
- COLOR -color 0,0,0,100
- TEXT -text new gamemode -size 80 -font Minecrafter -style ITALIC -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 3 -xOffset 20 -yOffset 200
- TEXT -text paint -size 200 -font Minecrafter -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 3 -xOffset 20 -yOffset 400
- TEXT -text ball -size 200 -font Minecrafter -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 3 -xOffset 20 -yOffset 570
- LIVEIMG -url http://www.skinrender.com:2798/fullskin-%name%-640-0-0-0-0-0-0-114-41-0-0-39-22-0-8-11-0-13-18 -width 900 -height 900 -xOffset 540 -yOffset 0
- IMAGE -src snowball.png -xOffset 690 -yOffset 210

I would also like to share the following one with you. I made this as an example for the LeaderHeads API implementation. Feel free to check it out.

Code (Text):
configurable:
renderers:
- IMAGE -src background.png -height 768
- COLOR -color 0,0,0,90
- IMAGE -src header.png -xOffset 0 -yOffset 0 -width 1024 -height 200
- IMAGE -src sword.png -xOffset 410 -yOffset 160 -width 128 -height 128
- IMAGE -src gold_block.png -xOffset 117 -yOffset 510
- LEADERHEADS -texturesize 300 -xOffset 42 -yOffset 260 -leaderboardname kills -timeframe alltime -number 2 -skinurl http://www.skinrender.com:2798/fullskin-%name%-640-0-22-0-354-15-0-0-34-18-0-31-18-0-352-13-0-352-22 -font Hobo Std -nameSize 50 -textOffset 70 -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 2 -nameOffset 50
- IMAGE -src iron_block.png -xOffset 757 -yOffset 510
- LEADERHEADS -texturesize 300 -yOffset 330 -xOffset 682 -leaderboardname kills -timeframe alltime -number 3 -skinurl http://www.skinrender.com:2798/fullskin-%name%-640-0-328-0-349-333-0-0-338-18-0-340-20-78-8-6-78-6-8 -font Hobo Std -nameSize 50 -textOffset 0 -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 2 -nameOffset 50
- IMAGE -src diamond_block.png -xOffset 437 -yOffset 440
- LEADERHEADS -texturesize 300 -xOffset 362 -yOffset 200 -leaderboardname kills -timeframe alltime -number 1 -skinurl http://www.skinrender.com:2798/fullskin-%name%-640-0-15-0-0-10-0-48-0-131-45-0-135-0-20-22-0-15-18 -font Hobo Std -nameSize 60 -textOffset 60 -color 255,255,255 -strokeColor 0,0,0 -strokeThickness 2 -nameOffset 60

Developer API
The BannerBoard public API was added in version 1.1.0. It has many features and is easy to use. You can make almost everything you want using one of the many features of the API.

I am a developer!
Cool, feel free to make whatever you want. You can easily add the API to your project using Maven.

Code (Text):
<repositories>
<repository>
<id>BannerBoardAPI</id>
<url>http://sandergielisse.nl/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>nl.sandergielisse</groupId>
<artifactId>bannerboard</artifactId>
<version>1.2.0</version>
</dependency>
</dependencies>
You can get an instance of the API using the following code.
Code (Text):
BannerBoardManager.getAPI();
The JavaDoc is also included in the Maven repository.

I can't code! Do I have any advantages of the API?
Yes, expect some public projects from my side as well. This is a list of the plugins made with the API, if you made something, please contact me and I'll add your plugin to the list.
Terms
By purchasing this plugin, you agree to follow the following.
  • You will not redistribute this plugin in any way.
  • No refunds will be held. You are not allowed to charge back the payment.
  • If for some reason this plugin no longer works with newer Minecraft versions and updating is not possible (e.g. by a limit on the client side), no refunds will be held and I can not be held responsible.
  • I am not responsible for any direct or indirect damage caused by the use of this plugin in any way.
  • I may change the price of this resource at any time.
  • Keep the amount of requests you send to http://www.skinrender.com/ low. I may block your IP address at any time. Are you a big server? Contact me first if you are planning to start sending many requests.
  • There is no guaranteed compatibility. For example, BannerBoard is not compatible with MapManager, and therefore neither with AnimatedFrames.
When you violate any of these terms, your download permissions will be revoked.

For the plugin itself; the download file is licensed under the GNU General Public License V3.

Contact
If you would like to contact, you can contact support in a few different ways.
FAQ
  • Q: I've installed a custom font. But it still says the font can't be found?

    A: Most likely you are trying to set the font to the filename. However, when setting a font, you should always use the name of the font itself. Not the name of the .ttf file.
  • Q: My console does not render skins and shows something like "Failed to do preparations for user X. ConnectException Connection refused (Connection refused)." or "SocketTimeoutException connect timed out"

    A: If this happens once of twice, don't worry, my render server might be under heavy load. If this happens always, this means that BannerBoard was unable to contact the skin server you have configured. In case of skinrender.com, this is skinrender.com:2798. Since port 2798 is somewhat unusual, many hosting companies have blocked this port by default. Luckily, skinrender.com is also reachable on port 8798, which is often already open. To use this port, replace 2798 with 8798 everywhere in the config. If this does not work either, make sure there is no firewall blocking your connection or if you do not host the server yourself, please contact your hosting company to open port 2798 or 8798 for outgoing traffic.
  • Q: I am running a server without a GUI, and the following exceptions pops up (or something like this). What should I do?
    Code (Text):
    java.awt.AWTError: Can't connect to X11 window server using 'localhost:10.0' as the value of the DISPLAY variable.
    A: (Thanks to @Penple for this) To fix this you should add the following to your Java launch options.
    Code (Text):
    -Djava.awt.headless=true
  • Q: I have BannerBoard installed on multiple servers within the same BungeeCord network. But when I switch server, somehow the (mixed up) banners of an other server are shown?

    A: This is the result of a Minecraft bug (MC-46345). Luckily, BannerBoard has a workaround. The problem is that both servers pick the same banner ID's. You can easily fix this by assigning a different ID range to different servers.
    For example, allow server A to use ID's 1 - 500, and server B to use 500-1000. This way the ID's will never mix up again. In your config you can specify the start ID that BannerBoard starts counting at.
    Please note that BannerBoard requires at least 300 ID's per server to run. Also, keep in mind that 1 block = 1 ID, so if you have 20 banners of size 8x4, at least 640 ID's are required. Also keep in mind that the minimum allowed value of startid is 1000, and the maximum allowed value is 25000.
Do you have another problem? Or just a question? Don't hesitate to contact me. I would enjoy helping you.
Author
Glidel
Downloads
20
Views
181
First release
Last update
Rating
0.00 star(s) 0 ratings

Share this resource