BetterAnnounce
BetterAnnounce
What is it?
Just another broadcast plugin, but it is meant to use as little server resources as possible, and still have capabilities to rival other broadcast plugins on here! Currently supports color codes, prefixing messages and custom intervals. If you'd like to see more features, please make a comment or file a ticket requesting the feature you are looking for.
Why, if there are already a multitude of broadcast plugins?
The thing I most dislike about other plugins is that they are so wrapped up in providing support for this and for that because of commands, they do not see the performance drops they are getting from their plugins because so many different features are being used at a time. My plugin aims to change this, as it is a one-class, 100 line plugin and still has much of the capabilites that those very plugins have.
Permissions
In order to use this function, you must enable group-announce.
announcements: default: - 'BetterAnnounce rules!' - 'You can even use &4COLOR CODES&f!' - 'Real men use &3BetterAnnounce&f!' moderator: - 'Your administrator has installed &3BetterAnnounce' - 'Let them know they''ve made the right decision!' admin: - 'Good job admin, you''ve successfully installed &3BetterAnnounce&f!' - 'You can now change these messages, as well as the permission node they will apply to in the config!'
In this example, everyone would get the "default" announcements, but only people with the permission nodes
betterannounce.receive.moderator
and
betterannounce.receive.admin
would get the announcements under their respective categories.
Configuration
Very simple configuration, can even be edited on the fly and all changes will be immediately mirrored, with one exception - interval period. Interval changes will not take effect until the next reload.
Using contractions When using contractions such as can't, won't and we're, follow the steps below.
announcements: - 'I'm an announcement that won't work properly!'
announcements: - 'I''m an announcement that WILL work properly!'
Supported Color Codes / Formatting Codes
Check 'em out here!
Quote from maxpowa:Supported Color and Formatting Codes
Color Color Code Common Name █████████ &0 Black █████████ &1 Dark Blue █████████ &2 Dark Green █████████ &3 Dark Aqua █████████ &4 Dark Red █████████ &5 Purple █████████ &6 Gold █████████ &7 Gray / Grey █████████ &8 Dark Gray █████████ &9 Indigo █████████ &a Lime Green █████████ &b Aqua █████████ &c Pale Red █████████ &d Pink █████████ &e Pale Yellow █████████ &f White
Format Code Common Name Magic - makes the distorted-looking, constantly changing text &k Random Bold &l Bold Strikethrough&m Strikethrough Underline &n Underline Italics &o Italics Reset - Resets all text effects, including color (turns color white) &r Reset
WARNING: If a color code is used after a formatting code, the formatting code will be disabled beyond the color code point.Quote from MinecraftWiki:&cX&nY (&c X &n Y)
Would be seen as: XY, where as
&nX&cY (&n X &c Y)
Would be seen as: XY, and
&cX&nY&rZ (&c X &n Y &r Z)
Would be seen as: XYZ
If you would like to buy me a coffee each month, just throw a pledge on my Patreon page!
@Maxpowa
Hello Maxpowa!
Will you update this plugin? Like the other guy said, it is not working with the lastest 1.7.9 builds. Your plugin is amazing and very weightless, I really want to use it on my server.
[javastacktrace] at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:57) [spigot.jar:git-Spigot-1475] [javastacktrace] at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:226) [spigot.jar:git-Spigot-1475] [javastacktrace] at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:169) [spigot.jar:git-Spigot-1475] [javastacktrace] at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(YamlConfiguration.java:180) [spigot.jar:git-Spigot-1475] [javastacktrace] at org.bukkit.plugin.java.JavaPlugin.reloadConfig(JavaPlugin.java:183) [spigot.jar:git-Spigot-1475] [javastacktrace] at com.maxpowa.betterannounce.BetterAnnounceMain.loadFile(BetterAnnounceMain.java:59) [BetterAnnounce.jar:?] [javastacktrace] at com.maxpowa.betterannounce.BetterAnnounceMain.onEnable(BetterAnnounceMain.java:64) [BetterAnnounce.jar:?] [javastacktrace] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:316) [spigot.jar:git-Spigot-1475] [javastacktrace] at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:324) [spigot.jar:git-Spigot-1475] [javastacktrace] at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [spigot.jar:git-Spigot-1475] [javastacktrace] at org.bukkit.craftbukkit.v1_7_R3.CraftServer.loadPlugin(CraftServer.java:465) [spigot.jar:git-Spigot-1475] [javastacktrace] at org.bukkit.craftbukkit.v1_7_R3.CraftServer.enablePlugins(CraftServer.java:383) [spigot.jar:git-Spigot-1475] [javastacktrace] at net.minecraft.server.v1_7_R3.MinecraftServer.n(MinecraftServer.java:359) [spigot.jar:git-Spigot-1475] [javastacktrace] at net.minecraft.server.v1_7_R3.MinecraftServer.g(MinecraftServer.java:333) [spigot.jar:git-Spigot-1475] [javastacktrace] at net.minecraft.server.v1_7_R3.MinecraftServer.a(MinecraftServer.java:289) [spigot.jar:git-Spigot-1475] [javastacktrace] at net.minecraft.server.v1_7_R3.DedicatedServer.init(DedicatedServer.java:193) [spigot.jar:git-Spigot-1475] [javastacktrace] at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:450) [spigot.jar:git-Spigot-1475] [javastacktrace] at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:570) [spigot.jar:git-Spigot-1475] ...
It is giving a big error, so I edited my post, if you want the full Log just tell.
@Squawkers13
Any error logs? Seems to compile fine with the latest Bukkit beta (R0.3)
Is this still supported? The broadcasts are not working with the latest Bukit beta build.
(And if it's not, can you release the source code?)
@DarmaMoo
I have the same problem. (PermissionsEx)
I think it would be useful to add something like {PLAYER} to pull the players username in the announcement if that's possible.
I'm also having some trouble with the groups in 1.6.2. I've setup the groups but the only announcements I see are the default ones. Created one called, 'creator' and setup the permission betterannounce.receive.creator I believe that's right. Could it be due to the update? Will an update be released for this soon? Thanks!
I have found one minor glitch with the 1.5.2 version. I have players in group regular which has the permission: betterannounce.receive.noob
This works fine in that they receive the messages in the message group noob; however I also made a command so that players can mute and unmute these messages by adding and removing the negative betterannounce.receive.noob permission. With the negative permission they still receive the message and an error is thrown in the console asking to report it.
Edit: I logged in today and noticed I wasn't receiving messages, but the console was still being spammed with errors when I was suppose to. Apparently re-logging after the permission is added/removed fixes the issue (player wise) but still spams the console.
Updating this for 1.5.2 and 1.6.1 if 1.6 releases soon. As of right now there are no bugs, but I feel that BetterAnnounce could be better. I'm changing around most of the way things currently are and it's unlikely that your old configuration files will work so please bear that in mind when the new version in released.
Features that are planned:
Great plugin, but could you possibly allow each group of announcements to have its own announce interval?
This plugin is epic. :)
Thanks for the plugin. It works great!
CubeIt: 216.245.196.164:25581 Survival, Extreme, Adult owned and operated
@zombie_ghost
You probably messed up your configuration file, by putting a tab or not closing quotations. Throw your config through this to find out.
Hey, SO i installed the announcer on my server, and changed values. But it still broadcasts sample messages even though config.yml contains changed data, therefore WHATA HELL!? AND HOW TO FIX IT!?
thank you! Ghost
@Sahee
If you're wanting to apply color codes to a string you are sending to the server, whether via sendMessage, broadcastMessage or broadcast, it is pretty simple, all you have to do is add this
to your plugin classes which need it, then you can add that color to any string like so:
Red in that example can be any minecraft color (if you're using eclipse you should get the colors popping up in the code completion box as soon as you type ChatColor.)
Can you send me source of this plugin? Im learning now java an i want to learn how to make colour codes ;) btw, good plugin :)
0.0.7 is awaiting approval - fixes the bug someone threw up in the ticket tracker.
@Maxpowa
Can you use Async methods at your plugin ?:p
@Kalpar
It's going to be a bit, I honestly don't know what to do to get it to count them right, I may have to resort to reading from a few plain text files, one for each announcement group.
@Maxpowa
Any idea when you might be getting this update out? I've had to change to the Random messages because I hit this bug, but I really want them displayed in order.
Thanks!
@MineCraftMyph
Found the issue, the counter wasn't properly resetting - uploading a release that should fix it.
EDIT: This one is really weird... I need to rewrite the counter to work with different amounts of announcements per group, because right now it counts how many announcements there are in total, and never reaches it because they are split into different subcategories. Update might take a while, busy with school right now....
Bug: Your permissions thing really doesn't work. I'v even tried it with your default config. It gets stuck on the second line if random: false. Could you also add the interval timer for each permissions. But first unbug the current version.