Secure plugin messaging channels
Cancel/handle plugin message events to/from client
Bugfix for urls in 1.20.4
Support 1.20.4
Special thanks to ItsDoot for contributing the necessary packet changes!
Support BungeeCord 1.20
No functional changes
Releasing
https://github.com/Aust1n46/VentureChat/pull/66
Implement ignore bypass permission for BungeeCord messaging.
Same permission as single server messaging (venturechat.ignore.bypass), but now it works for BungeeCord messaging as well!
Thanks to
@AccioAce for sponsoring this update.
Validate click actions and add "none" option.
Allow usage of any compatible ProtocolLib version instead of requiring the latest version.
For supporting older server versions.
Removes enum comparison that only exists in 1.19+ versions of ProtocolLib.
Support 1.19.1
Fixes issue writing to chat packets because of change from int -> bool for signed chat packet identifier type.
Second patch for 1.19. Tested against Spigot 1.19.
This version should fix some critical issues that were reported.
The message remover still does not work for 1.19. This is still a known and accepted issue at this point.
This version *should* also work on previous versions.
This update is a patch to bring partial functionality to 1.19.
This version is ONLY for 1.19.
This version can be used on a mixed version network. (Only use on the 1.19 servers)
The message remover is not functional in this version. This is a KNOWN ISSUE!
Fixes issue where plugin messages are sent to servers with no online players causing them to be cached and resent when a player logs in.
Fix tab completion for message and ignore commands
Updated url regex pattern with ';' and ','
Dynamic command registration allows for any VentureChat command to be completely disabled via the new commands.yml config file.
Channel aliases are also registered as commands now and will support tab completion.
This is a big change, so let me know if you encounter any issues!
Please rollback to version 3.2.3 if you can't get this update to work.
Small hotfix to fix permissions issue with json formats. Explicitly setting the permission to false will now work and not enable the format.
I'm dumb and forgot to include
@JRoy 's PR in the release...
Fixes bug with EssentialsDiscord and BungeeCord channels.
Small hotfix to fix issue with detecting BungeeCord when using Spigot instead of Paper.
This patch also removes the built in /setnickname command. I have strongly recommended the use of a dedicated nickname plugin such as
https://www.spigotmc.org/resources/nicknamer-integrated-api.5341/
Or even Essentials or CMI nicknames.
VentureChat pulls nicknames from PlaceholderAPI, and will work with nicknames from any plugin.
Hotfix to fix sync issue when using Velocity with Paper with the modern IP forwarding. (Because bungeecord will be set to false in the spigot.yml)
You should either have bungeecord set to true in your spigot.yml or have velocity-support set to enabled in the paper.yml.
Thanks to
@NoeX123 for helping to test these patches!
Hotfix to fix loading issue on BungeeCord.
Also fixes compatibility with LibertyBans by relocating shaded dependencies.
I also added some logging for issues with the plugin messaging system.
Day 0 hotfix for Velocity! (More like hour 0

)
Should fix issues with tab completion for network-wide tab completion for /msg.
Soon (tm) is no more!
Got a great compatibility update for you guys!
First we have preliminary support for EssentialsDiscord. It's simple right now, but more features are being designed for the (hopefully) near future.
Your default channel will be broadcast to Discord automatically when you install EssentialsDiscord.
And for the second major update: Velocity support is now here! Just put the plugin in your Velocity plugins folder and you're ready to go! Setup is just like BungeeCord. I know a lot of people have been waiting a while for this one, so I hope you enjoy!
Lots of new stuff in this update, so as usual, let me know if you run into any issues and I'll work to resolve them.
Small hotfix to fix issue with missing dependency for the database logger.
Small hotfix to fix issue with sync not detecting BungeeCord setting in the Spigot config causing messaging to not work.
Also fixes issue with channel prefixes not displaying properly.
BitBucket is also down right now, so these changes won't be reflected on the repo until later today.
Small hotfix to fix issue with chat color 'None' option not working properly.
Let me know if you find any other issues!
The day zero hotfix is out. Fixes issue with hex colors in placeholders and the message remover not working.
Also added some error handling around parsing Json formats for those people that try and not update their configs

A config update is REQUIRED for this major update. Just wanted to make that clear! Updating is not mandatory!!!
Got a huge release for you guys today! First major release in a while!
The major part of the release is behind the scenes, I think you will be happy with the new feature I included
Release Notes:
Finally added Maven for dependency management!
Should be much easier to contribute now.
Added JSON to all PlaceholderAPI placeholders. You heard that right, ALL PlaceholderAPI placeholders!!!
There are a couple config changes required to use this new feature, but I think it's well worth it.
Code (Text):
jsonformatting:
Default: # This default format is required! Do not delete or rename it!
priority: 2147483647 # Integer.MAX_VALUE
json_attributes:
player_displayname:
hover_text:
- '&6I have no rank!'
click_action: 'suggest_command'
click_text: '/msg {player_name}'
vault_prefix:
hover_text:
- '&cI am default!'
click_action: 'run_command'
click_text: '/help'
venturechat_channel_prefix:
hover_text:
- '&fChannel: {venturechat_channel_color}{venturechat_channel_name}'
click_action: 'run_command'
click_text: '/chlist'
Owner:
priority: 1
json_attributes:
player_displayname:
hover_text:
- '&cOwner of the server!'
- '&bMessage me for help!'
click_action: 'suggest_command'
click_text: '/msg {player_name}'
vault_prefix:
hover_text:
- '&dServer Owner'
click_action: 'run_command'
click_text: '/help'
venturechat_channel_prefix:
hover_text:
- '&fChannel: {venturechat_channel_color}{venturechat_channel_name}'
click_action: 'run_command'
click_text: '/chlist'
This is the new JSON format section. You can add any placeholder you want in the json_attributes section.
Code (Text):
Global:
color: dark_green
chatcolor: dark_green
mutable: true
filter: true
autojoin: true
default: true
distance: 0
cooldown: 0
bungeecord: false
alias: g
permissions: None
speak_permissions: None
channel_prefix: '&f[&2Global&f]'
format: '{venturechat_channel_prefix} {vault_prefix}{player_displayname}&2:'
There is also a new 'channel_prefix' value for each channel. Along with a new placeholder to allow for JSON to be applied to the channel prefix.
As always, this information will be available in the 'example_config_always_up_to_date!.yml' file.
Upload correct file with /mute not disabled by default.
Sorry about that guys!
Technical change: Added null check for fake player generated PlayerCommandPreprocessEvents.
Allows disabling commands by removing them from the plugin.yml. I recommend using Winrar for this as it can be done in a matter of seconds.
Added 'None' option for the messaging sound to allow for it to be completely disabled.
Small hotfix to fix issue with /chatreload.
Updated to 1.17
No new features in this release, however, I have some new changes coming down the pipeline soon (TM) of course.
Technical changes:
Refactored NMS reflection to ProtocolLib based reflection.
Fixed a bug with the message remover in 1.7.10
Yet another small hotfix... I randomly discovered the mute reason doesn't have spaces between the args... and it didn't support color codes either...
So now it does! 2 for 1 special on hoxfixes tonight!
Small hotfix to fix issue with aliases being registered multiple times when using /chatreload.
I also removed the messaging aliases from the config for any new downloaders. Current users should be able to remove these aliases if they want to. I changed how those commands are registered so VentureChat should always have priority now. Of course, you can put the aliases back in if you run into command conflicts.
Minor hotfix to fix issue with BungeeCord sync when the player would disconnect before the sync was completed.
Also includes a bunch of internal refactoring and a fix to some commands that modify channel listening status but didn't properly sync with BungeeCord.
Edit: I removed the login/logout messages from the config. Please just use DeluxeJoin if you want that feature. It's free and better!
Small hotfix today. Fixes issue when using /reply over BungeeCord to a player that has never connected to the server you are connected to.
Bonus: Added hex color support to the Moderation GUI icon, text, and the message remover text!
Fixes an issue reported today and I went a little beyond to make the feature better. Won't display the hover text on 1.7 currently. I didn't feel like digging through NMS obfuscation to backport a feature to an almost 8 year old version... Maybe in the future I will end up completing the backport.
As always, let me know if you run into any issues!
The muting update! It's finally here! This update is a huge one and I'm hope it was worth the wait!
Muting changelog:
- Updated timed mute system to allow for seconds, minutes, hours, and days.
- Timed mutes synchronize over BungeeCord.
- Added the ability to write a reason for a mute, which also synchronizes over BungeeCord.
- New messages in the messages.yml file to support this.
- Intelligent tab completion for muting. Only shows players that can be muted/unmuted (non Bungee)
- Tab completion for Bungee channels shows all the players on the network.
- The unmute repeating task has been improved to be more reliable.
Hotfix changelog:
- BungeeCord sync task now repeats if not successful on the previous attempt. Makes updating data from Bungee 100% reliable.
- Updated broadcast command to work with URL's.
- Added a configurable message chime.
- Added override permission for command spy: "venturechat.commandspy.override"
- Made spy override permission work over BungeeCord: "venturechat.spy.override"
- Fixed certificate warnings when using MySQL chat logger.
- Renamed "defaultconfig.yml" to "example_config_always_up_to_date!.yml"
- Tweaked handling of name changes on login.
Make sure to check the humorously named "example_config_always_up_to_date!.yml" file for the latest config updates!
As always, let me know if you run into any issues!
Small hotfix today. Fixes rare null case on reloading the config if there is an issue loading player data for a currently online player. New warning in the console when this does occur to let you know you might have an issue with your data saving.
@Dovkin
If you aren't having any issues, you probably don't need to rush to get this hotfix installed. And as usual, let me know if you have any questions or concerns.
Minor hotfix today.
Fixed error on player kick.
Fixed error when using DiscordSRV experimental "VentureChatBungee" setting when typing characters:
In the Discord -> Minecraft channel.
As always, let me know if you experience any other issues!
Minor hotfix here today.
Fixed issue with synchronizing BungeeCord channels that have autojoin set to 'false'.
Technical fix:
Added additional delay to the BungeeCord player data sync request on the very first player join after server boot to accommodate the longer connection time.
Also increased the standard delay for the sync request from 10 ticks to 20 ticks. This should make the data sync more reliable. (The extended delay is 100 ticks for the first join if anyone was wondering)
As always, you don't need to download this hotfix right away if you're not experiencing these issues.
Huge architectural update for VentureChat! I have an all new player data system for both Spigot and BungeeCord that should hopefully alleviate some intermittent issues a lot of people have been running into.
There is a legacy data file converter that will attempt to convert your old data file into the new system. Be warned that if your data file is unable to load, it will be deleted. You can make a backup of it if you like, but if it can't be read, it's pretty much useless anyways. It's your choice.
Important notice for offline mode or "cracked" servers:
Offline mode is now officially "unsupported". There is a new config setting in both the Spigot and BungeeCord config to be able to set the plugin into offline mode. If you do not set this setting, player data will not be saved in offline mode. (No data will be saved until you either switch to online mode or agree to the setting in the configs)
Code (Text):
# If you're running a "cracked" server, player data might not be stored properly, and thus, you are on your own.
# If you run your server in offline mode, you might have to reset your player data when switching to online mode!
# If you see this warning by accident and you are using BungeeCord, make sure you have properly setup IP Forwarding.
# https://www.spigotmc.org/wiki/bungeecord-ip-forwarding/
# No player data will be saved in offline mode unless you set this acknowledgement to 'true'
offline_server_acknowledgement: false
Your "defaultconfig.yml" will contain a copy of this agreement as well. You will need to place this into your config and set it to true to enter offline mode. (This setting will default to false if it's missing)
What this means for offline mode or "cracked" servers. You can still run your server like normal, but you will need to make sure to set this new setting BEFORE you start the server or all of your legacy player data will be lost. If you ever decide to switch from offline mode to an officially authenticated server, your offline player data may be lost. There is no guarantee that there will be a system in place to transfer it over. I just want everyone to be clear of these new stipulations as they ultimately allow the plugin to run better for properly authenticated servers.
Other minor bug fixes:
Fixed BungeeCord tab completion for /message and /ignore
Fixed permissions check for ranged spy for players after they lose the permission node, their ranged spy status will be disabled automatically.
As always guys, let me know if you run into any issues and I'll do my best to help you sort them out!
Minor hotfix to stop spy from showing messages you are receiving.
Cleaned up a couple inconsistencies with the /ignore command and backend.
Added BungeeCord tab completion to /ignore (with BungeeCord messaging enabled)
As always, let me know if you have any issues and I will try to address them!
Got a nice big feature update here today! A massive upgrade to the private messaging system!
Full PlaceholderAPI support for private messaging!
Tab completion network wide for BungeeCord messaging!
Some minor tweaks to spying to make it not pickup on your own messages.
You will need to update your messaging formats in your config to take advantage of PlaceholderAPI. (This required!!!)
Check out the defaultconfig.yml for the most up to date set of default values and updated config settings and information!
Hotfix for DiscordSRV Experimental "VentureChatBungee" setting. Messages from DiscordSRV (while using this setting) will now only be sent to players listening to the receiving channel.
You don't need this hotfix if you're not using this setting.
Added separate permission for only legacy color codes.
Code (Text):
venturechat.color.legacy
The current color code grants access to both hex and legacy color codes.
Code (Text):
venturechat.color
Also added additional hex color code format for enhanced compatibility with other plugins.
The current hex color code format still works the same as before.
And lastly, channel listening and spy/commandspy status will be automatically revoked when a player loses the respective permission.
If the player is currently focused into the channel when they lose permission, they will be set into the default channel.
As always, let me know if you have any issues, concerns, or feature requests!
Reverted unintentional breaking API changes in the channel system. Should fix any compatibility issues with DiscordSRV and other dependent plugins.
Make sure to read the patch notes for version 2.20.0!
https://www.spigotmc.org/resources/venturechat.771/update?update=356917
I should add that if you were not using DiscordSRV and were having no issues with the previous release, you do not need to immediately get this patch! (It's recommended of course, however)
Not compatible with DiscordSRV (and possible other dependent plugins)
Expect an incremental patch 8/25 afternoon.
New speak permissions for channels!
Code (Text):
AnnouncementExample:
color: red
chatcolor: red
mutable: false
filter: false
autojoin: true
default: false
distance: 0
cooldown: 0
bungeecord: true
alias: announce
permissions: None
speak_permissions: announcement
format: '&f[&aServer Announcement&f] {vault_prefix} {player_displayname}&c:'
If the new 'speak_permissions' line is missing, it will default to no permission required.
Muting has been improved and the unmute task should be working again. The interval has been increased from 1 second to 1 minute to reduce lag and the task itself has been optimized as well. There are some new localized messages for muting in the Messages.yml to be sure to check them out! Your old Messages.yml file will be renamed so don't fret it you see a new one. The newly generated file has all of the new messages in it, while your old file has been saved and renamed!
As always, let me know if you run into any issues!
Updated to support PlaceholderAPI 2.10.9
Reverted some internal changes that are no longer needed, which fixed a rare issue where a players placeholders would not load at all and they would be "invisible" in chat.
Minor tweak to the private messaging defaults to provide better examples in a fresh config and the defaultconfig files.
Support PlaceholderAPI version 2.10.7
Allow hex color format #ffffff in placeholders
Properly handle capitol letters in color codes
Known Issue: Hex colors display as white in the message remover
A new and easier hex color code format is now supported!
Code (Text):
#[0-9a-fA-F]{6}
Example: #ff00ff (purple)
This new format is supported everywhere in the plugin! That includes the configs!
The 1.16 update to support hex colors!
The current supported format is the Spigot hex format:
Code (Text):
&x &[0-9a-f]{6}
Example: &x&f&f&0&0&0&0 is equal to #ff0000 (which is red)
This format will be supported in game chat, private messages, and the config (channel formats, message formats, etc)
If cleaner easier formats take hold in the community, I will look into supporting the most popular one.
Code (Text):
messageremoverpermissions
messageremovertext
These two config options do NOT support hex colors currently. It's a known issue.
Your defaultconfig.yml has been updated to showcase an example chat channel with hex colors. (HexExample)
Hex colors only work in 1.16 and higher! If you attempt to use them in earlier versions, there will be no errors, but don't expect proper color formats!
Sorry for yet another update... If you don't use Factions, you don't need to get this update if you don't want.
- Fixed bug where unsupported versions of Factions would cause error with /chwho command
- Removed PlaceholderAPI hook message (tired of false positives with /chatreload)
- Renamed /nick -> /setnickname to reduce conflict likely hood with plugins such as Essentials. I recommend using Essentials nicknames if you're using Essentials.
- Disabled BungeeCord messaging by default on fresh config installs (tired of people stating messaging doesn't work when they don't disable it)
Overall, just a minor bug fix update with a couple other small changes.
Technical update. Fixes an issue where ActionBar messages would be saved and thus spammed when using the message remover. (NMS ActionBar messages). You will know if you need to download this patch.
New update is in the works to improve the timed muting system! Keep following for future updates.
Technical update. Fixes an issue where ActionBar messages would be saved and thus spammed when using the message remover. (NMS ActionBar messages). You will know if you need to download this patch.
New update is in the works to improve the timed muting system! Keep following for future updates.
Last version was missing the lib folder for MySQL. This is a simply a re-upload with the missing dependencies. Sorry about that folks!
Thanks
@Metalshark for catching this early!
- Updated framework for the upcoming DiscordSRV update
- Allows for message remover on chat from Discord
- Allows for a single installation of DiscordSRV to relay messages across an entire BungeeCord network (BungeeCord chat channels only)
- Fully backwards compatible with current version of DiscordSRV (No new features, however)
- Added separate version tag for Messages.yml file. The file won't be renamed unless there actually is a change to it.
As per usual, let me know if you have any issues, concerns, or feedback!
- Fixed issue with ranged channels showing chat between worlds
- Fixed issue where built in VentureChat nicknames would reset when players logout
Thanks for the patience guys! I know this latest update hasn't been that smooth.
And once again there is no change to the Messages.yml file. You can swap in your old one once you update.
- Fixed leaky database connection that would cause an eventual timeout
- Fixed vanished players not receiving chat
- Allow the usage of '+' '*' '|' characters in prefixes, suffixes, and nicknames
- Updated logging to log all incoming chat from BungeeCord enabled channels with the server name
Just a note with the Messages.yml file: It will be renamed and a new file generated whenever there is a new version released. This is to make sure any new messages are always implemented. This particular patch has no updates to the file, thus you will be able to just swap it back in and update the version in your file. You can /chatreload after doing this as well. No need to restart when editing the messages.
YOU NEED TO DOWNLOAD THIS UPDATE!!!
- Fixed SQL injection vulnerability when using the MySQL chat logging feature
- Added auto reconnect library for MySQL database to keep the connection alive
- Removed outdated commands such as /mail and /afk because other plugins, such as Essentials do those better
- Removed IRC functionality in favor of only supporting DiscordSRV. PurpleIRC should still support VentureChat if you wish to continue using IRC.
- Refactored chat event and entire JSON packet system to remove any chance of concurrency issues when injecting JSON into outgoing chat packets
- Created new VentureChatEvent API for other plugins to hook into
- Created new localization system for customizing messages in the plugin. A new Messages.yml file contains every message in the plugin for you to edit!
- Created framework for supporting BungeeCord messaging fully with DiscordSRV. Be on the look out for a new DiscordSRV update with this functionality enabled!
- Fixed issue where pipe characters | would cause errors when used in prefixes, suffixes, and nicknames.
Added permission 'venturechat.commandspy.hide' which prevents your commands from being spied on.
Also implemented code to 'support' the built in /reload command. However, I still do NOT recommend using this command. But there should no longer be errors from VentureChat if you do decide to use it.
Special thanks to
@JesFot for bringing this to my attention and helping discuss and test it!
Fixed remaining instances of old plugin messaging channel name. Should fix /ignore.
Internal plugin message channel update to support latest version of ViaVersion.
Fixed issue where color codes would be converted regardless of the permissions. Also removed some dead code relating to the old JSON buttons (replaced with the Moderation GUI)
Updated NMS methods to support future versions without manually adding the version numbers. Until Mojang changes the API again...

Updated to support 1.14.4
Reverted Mojang UUID Query to support "Cracked" servers again
If you're running a BungeeCord network, you might need to delete the Players.yml file from each server and the BungeePlayers.yml file from the BungeeCord proxy.
Sorry for an inconveniences!!!
ChatMessageEvent API is currently disabled for 1.14 (Doubt anyone is using this just mentioning it)
Nothing else really changed. Let me know if there's any issues as always!
Added new BungeeCord enabled /chwho command. Works as expected for local channels, but will now show who is listening to a BungeeCord enabled channel regardless of what server they are connected to!
Some important back-end changes:
Updated player data to only be saved using Mojang online mode UUID's. This means that you should probably delete your data files (with the server turned off) before installing this update to avoid any issues with potentially invalid old saved data.
Two new config entries:
# Enables the creation of special Towny channels: Town and Nation
# To create these channels, simply name two channels below "Town" and "Nation"
# Bungeecord must be set to false for these channels!
enable_towny_channel: false
# Enables the creation of a special faction only channel using the Factions plugin
# To create this channel, simply name a channel below "Faction"
# Bungeecord must be set to false for this channel!
# WARNING: May not work for all versions of Factions!
enable_factions_channel: false
You should be able to get away with not adding these, but if you use Factions and are getting an error, you should definitely add these into your config and leave the factions channel set to false!
I added mine right above the channels section of the config.
![[IMG]](/proxy/image?url=https%3A%2F%2Fi.gyazo.com%2F44579813cbc6b135e45b0557655461ac.png)
Fixed multimessage remover *hopefully*
Added new configuration option for the "<message removed>" text:
messageremovertext: '&c&o<message removed>'
You should add this line into your config when updating if you want to configure the message.
The default message remover section should be as follows. I changed the command syntax again
Code (Text):
removemessage:
icon: 'DIAMOND_AXE'
durability: 0
text: '&cRemove Message'
permission: 'removemessage'
command: '/removemessage {hash} {channel}'
slot: 7
Added exception to allow ViaVersion modified plugin messages.
*Should* fix any issues with BungeeCord features not working with ViaVersion connected players.
This is a bandaid type fix, looking into a potentially better solution with the author of ViaVersion!
Fixed bug where having a BungeeCord chat channel on only some servers in the network would cause an error to be thrown on servers without the channel.
Fixed an issue where players from a server with BungeeCord messaging enabled could messages players on a server with BungeeCord messaging disabled.
Updated to support 1.13.1
Multi message remover *DOES NOT* work in this version!
Fixed bug with message remover
Fixed incorrect default message remover command in the config
The default should be as follows:
Code (Text):
removemessage:
icon: 'DIAMOND_AXE'
durability: 0
text: '&cRemove Message'
permission: 'removemessage'
command: '/removemessage {hash} true'
slot: 7
Fixed bug with Ignore command in 1.13
Fixed issue with excess logging on the BungeeCord console
Updated the plugin to 1.13! A bunch of pretty minor changes. Let me know if there are still any issues on 1.13 or any older version.
Finally fixed the Proxy kick issue with the help of
@Sequacious letting me use his network to debug on. The 32768 byte limit for packet sending should never be reached now (unless you do something ridiculous crazy)
I know there were lots of users experiencing this annoying bug, that I think we can happy call squashed now.
Small tweak to the new message remover code to allow it to work on all versions from 1.8 - 1.12 instead of just 1.12
Fixed message remover for 1.12 servers
Fixed multi-message remover (allows you to remove more than 1 message)
Fixed icon appearing in admin hover over when using the multi-message remover function
Tweaked channel alias function for 1.8 servers to function like all other versions
Fixed a small bug with Bungee messaging. Redownload if you were one of the first 40 downloaders!
Updated cooldown code to be better and hopefully never perma-mute someone again. It uses Unix time that should always count up and never roll over. Will break in 2038 for all you code junkies

Added support for Minecraft 1.11 and possibly any future update.
The NMS for 1.9 also works for 1.10 and now 1.11, so I suspect it will just always work. I had a hard coded check for 1.9 and 1.10, but I just replaced that with an else statement to catch any version newer than 1.8.
Fixed bug with notification sound on 1.8 servers. Updated GUI slot permissions to new "venturechat." style permission.
Added new command /messagetoggle.
Fixed sync issues.
Fixed GUI serialization issue.
Fixed "None" chatcolor option for BungeeCord channels.
Fixed the message sounds not working in 1.10.
Fixed the "None" chatcolor option not working properly.
Officially removed 1.7.10 from the tested versions list.
Updated to 1.10. This update should work on all previous versions (1.8.x+) too.
Thanks go out to the Spigot team for not obfuscating the server jar, which makes it super easy to update any NMS code.
Changed the "emptychannelalert" to not show anything if it is blank in the config.
Updated the JSON formatting algorithms to be even more efficient, correct the GUI button from losing color on line changes, and add suffix hover and click support.
The config IS DIFFERENT for JSON formatting. The appropriate changes can be made by looking at a new v2.9.6 config or defaultconfig file.
You also need to add a space AFTER the color code in the GUI icon setting, otherwise, it will be touching the text.
The new config and default config files will come with these changes already made when generated.
Updated JSON format algorithms to be more efficient and to properly reset format and color codes without having to use "&r".
Added new messaging aliases into the default config to alleviate some of the issues many users have when using Essentials with VentureChat.
At some point I'll get a config sample from Essentials that shows what changes need to be made to use dedicated chat managers with it.
Changed the MySQL logging feature to use the same date format for both commands and chat logging, which is a more correct format than what it was before.
Changed all of the permissions to be uniform and start with venturechat. You will have to change all of your permissions over to this new format when you update to this version or any future update.
I also updated the command and permission list on the overview page to actually be correct and comprehensive. Let me know there are any missing or broken permissions.
Updated the GUI to work on offline players, so effectively on chat messages sent in BungeeCord channels. Commands like mutes and unmutes half work over BungeeCord, but because the commands were never designed to work on a player on a different server, the synchronized mute/unmute will not update until the player on the other server relogs into any other server on the network. (Syncs happen on login)
The message remover has been adjusted, in the config, to remove messages from players on other servers. Backlogged messages will be removed fine on the server of the sender, but it doesn't work on backlogged messages for players on other servers. I honestly have no idea why this isn't working well, but I've had enough of it, and will not be spending a bunch more hours working on it right now. If for some reason your server gets spammed up and you just happen to have no staff online that specific server, just use the regular old /clearchat or /cc feature. (From the spammed server)
The tweak in the config for the message remover is just to put the word "true" at the end of the command.
Code (Text):
removemessage:
icon: 'DIAMOND_AXE'
durability: 0
text: '&cRemove Message'
permission: 'removemessage'
command: '/removemessage {hash} true'
slot: 7
It was never actually broken, but most people never knew about the inner workings of the true that is needed to make it work over BungeeCord.
Edit: The PlaceholderAPI placeholders will only work for online players in the GUI. There is no magic to make them work for offline players as far as I know.
Serialized GUI slots so you can now have multiple icons that use the same block. Fixed the config to come with a proper default durability. It isn't supposed to have ' ' around the number. Durability is also checked in the GUI so multiple icons with the same block type but different durability value won't trigger each other.
In case anyone was wondering, you can "fudge" the GUI hash code argument if you want to open it on a player manually. The message remover won't work because the hash is made up, but the other icon buttons will work fine.
Added the VentureChatGUI for moderating chat! The permission to view and open it is "venturechat.gui"
The GUI is fully configurable with block icons that run commands. The size of the GUI can be configured from 1 row (9 slots) up to 6 rows (54 slots), so you can pretty much put endless commands in it
JSON buttons have been removed in this update.
The message remover button has been removed, as the feature is now included in the GUI.
Making JSON buttons backwards compatible would have been a pain to do. I didn't delete any of the code for them, so I could always go back and reuse them, but for now, they are not used.
Added /spy /commandspy /rangedspy and /buttons to the list of data that is saved in the file. As you can tell, I didn't change the version to 2.9.0 yet because I have something special planned for that version

Fixed the message remover. Added a check to make sure the JSON buttons are actually present in a given message before trying to substring them out.
Re-added the anti spam feature. The config section is the same as before, but now it will actually do something. The bypass permission is: mineversechat.spam.bypass
Also fixed a bug when using /nick on offline players.
Updated the message remover to work through BungeeCord and with JSON buttons. Thanks go out to Vitalbra for helping test with me.
Fixed a bug with auto joining channels when not using the plugin with BungeeCord. (Should be fixed anyways, had some test servers malfunctions so I couldn't fully test it.)
Also added a new set of command aliases in the plugin.yml. I added an alias v[commandname] for every command.
Example: /vtell is an alias for /tell
I noticed I there were some issues with plugin syntax commands (/venturechat:tell for example) so I added in this set of aliases for use in my alias section of the config, commands.yml, or any other plugin that can create aliases. So instead of aliases /tell -> /venturechat:tell, you can simply alias /tell -> /vtell.
Removed permission: "mineversechat.spy.override" because it caused issues with the cross server spy feature.
BungeeCord spying appears to be working fine again.
Finally fixed the synchronization and autojoin bug. Thanks go out to FilmJolk for helping me test and debug it.
Also fixed a small URL bug regarding "_" underscored in the URL.
Readded Factions support. The factions channel will not work with FactionsUUID because the author was not helpful in showing me how to properly hook into his plugin. VentureChat can't distinguish Factions from FactionsUUID, so it is up to the server owner to set it up properly.
On a side note: Plugin syntax commands now work again with VentureChat (/venturechat:[command]) I don't know why they didn't work in version 2.8.2, but you should be able to make aliases easier now.
Added sound support for both 1.8 and 1.9.
Updated message sounds to 1.9 version. Sounds will only play on 1.9, because the 1.8 and 1.9 sound classes have the exact same name and package, so I can't use them both at the same time.
Updated to 1.9
I am using 1.9 NMS, however, it should still work fine on 1.8 as well.
Changed the channel color placeholders to return the hex color code. (0-9 a-f) instead of the useless word. Just make sure you put a '&' in front of the placeholder if you want to convert it to the color.
Added PlaceholderAPI placeholders for channel data and player nicknames. You should be able to use them in other plugins that support PlaceholderAPI.
Added new config value:
nickname-in-tablist: true
Pretty self explanatory.
Also fixed a bug with locked PM's when using the /[alias] to change channel.
Added blanket vanish support. This *should* add vanish support for all vanish plugins without any hard coded hooks. There is currently no option to disable vanish support.
Note: Vanish support is only used on the local server, it will not work for BungeeCord messaging.
Note: Suffix support has NOT been added to the json formats yet.
Fixed config files not generated. Not sure why this was happening, but it should be fixed. Moved color formatting to the proper format file. Might affect plugins using the API.
Fixed a bug with synchronizing offline players. Made a couple other little changes that I can't remember exactly

Fixed a bug with the ignorechat feature on BungeeCord channels. It should be all working again.
Fixed a bug with colors, formatting, and filtering of BungeeCord messages.
Quick fix for the ignorechat ability in BungeeCord channels. It should work without errors now.
Added config option for the "no one is listening" message.
The new value can go anywhere in the config, but here is where I put it:
Code (Text):
# If true, /ignore will block chat from the ignored player as well as PM's
ignorechat: false
# The message shown to players alerting them no one is in the channel to hear them
emptychannelalert: "&6No one is listening to you."
messageremovericon: '&c[x]'
messageremovertext: '&cRemove Message'
messageremoverpermissions: '&cYou need additional permissions to view this message!'
(The other parts are just to give context.)
Changed name of the plugin to VentureChat, as my old Mineverse server network has been gone for a long time now. I figured I would update the plugin name to be a bit more current. All permissions are still the same, but you will need to move your configs into the newly generated VentureChat folder. You could also rename your MvChat folder to VentureChat before installing the update.
Added new command: /buttons to toggle JSON buttons on or off for yourself.
Made some changes to hopefully fix some bugs a few users were having with ranged channels.
Just a quick update to fix an issue with the URL re-constructor not creating youtube video URL's correctly.
Added ignore check to BungeeCord channels. The config it uses is the one from the receiving server. I will be assumed that if you want this chat ignore feature you will have the value set to true on all of your configs.
Troubleshooted some sync data issues. Didn't really change anything but it was working very well for an extended test period.
Fixed a "bug" in the sync for /spy. Very strange error and fix, but it is working fine now.
Overhauled the ignore system to be compatible with the new messaging system. (I should've done this months ago) I will need detailed reports if you encounter problems with it, since I can only do so much testing with one account and one fake account on an offline mode test server...