
ChatRegulator 3.0.0
A global chat regulator for Velocity
New Module: Command Syntax
This module allows you to block all subcommands that have the syntax of `plugin:subcommand`
Additional Character check to Unicode Check
- feat: Added configuration to allow or disallow more custom characters in the unicode module
Dependencies Improvements
- feat!: Updated to Java 16
- feat!: Updated to Velocity 3.1.2+
- feat: Updated to Adventure/MiniMessage 4.10.1
- build: Now the plugin will download its dependencies dynamically, reducing its weight considerably
MiniPlaceholders Compatibility
feat: You can now use different placeholders from other plugins in ChatRegulator messages All Placeholders Available
feat: Implement ChatRegulator Expansion (Integrated in plugin) ChatRegulator Placeholders Available
Miscellaneous
- feat: Added ignored commands configuration
- feat: Improved the main command with the use of Brigadier
- feat: Added full customization in settings related to time lapses
- fix: Empty player suggestions on player subcommand
- fix: Fixed Player assignation between session (Bug present since the first versions of the plugin, recommended to update)
- fix: ArrayIndexOutOfBoundsException in Warning Title
- fix: Fixed FloodCheck's `ReplaceableResult#replaceInfraction`
- feat: Improved coverage tests
- feat: Implement ChatRegulator subcommands permissions
API:
- fix!: Removed` InfractionPlayer#getLastSeen` and `InfractionPlayer#setLastSeen`
- feat: Improved Javadocs
- refactor!: Redone the check system, now delivers with CompletableFuture which returns a Result at the end of the respective check
Implemented CommandSpy
Now you can see the commands executed by other players with the `chatregulator.commandspy.alert` permission
Bypass permission: 'chatregulator.bypass.commandspy'
Added ControlType to UnicodeCheck
You can now replace the unicode violations of a message instead of canceling the message.
API Changes
- Added notes about the nullability of all the methods
- Improved javadocs
- Added `PatternCheck` class and `ReplaceableCheck` interface
- Removed `AbstractCheck#getPattern`, check `PatternCheck` methods
- Removed `InfractionCheck#replaceInfractions`, use `ReplaceableCheck.replaceInfraction` Also valid for FloodCheck
- Fixed and improved `#hashcode` methods
Miscellaneous
- Improved performance when parsing messages with placeholders
- Fixed some bugs with placeholders
- Implement Mockito tests
- Migrated to Configurate configuration lib
- Migrated to HOCON config format (.conf)
- Add coverage test to checks
- Fixed error on main command execution without arguments
- Improved configuration with some comments
- Fixed Flood Check
- Added Caps check
- Multi replace violations on Regular, Flood and Caps infractions
- Added reload command
- Bump dependencies
- Improve performance on some listeners
- Reduced method redundancy
- Change licence to GPL3
Now instead of completely blocking the offending message, the infraction message will simply be censored. To activate this, set replace in the flood.control-type or infractions.control-type options
- Unicode Blocker [Beta]
Now you can block uncommon unicode characters
+ New Commands
Help Command
The /chatregulator help commands have been added along with their subcommands.
When executing the command, it will give you a guide with the functions of the commands available in the plugin.
Clear Command
The /chatregulator clear command has been added with which you can clear the chat of any player, server or your entire network.
+ New Check
Command Blacklist Check
A new check for blocked commands has been added, now you can block the commands you don't want to be executed in the blacklist.yml file.
+ New Messages Configuration
Now messages can be configured in a separate file (messages.yml) from the main configuration.
+ Fixes
Fixed compatibility with java versions 11-15
Fixed a formatting bug when entering commands without arguments. #7 Removed the formatting of commands due to the fact that there can be an infinite number of argument types and problems as a result.
- Added message formatter. This will change the first letter to uppercase and add a dot to the final of the string
You can now completely deactivate a module from the configuration of each module.
- Improved code
Thanks to Espryth with its pull request #1 the code responsible for chat and command detections has been improved, making it more readable and less repetitive.
- User deletion according to the time configured
Now users who are not online for a certain period of time will be removed from memory, deleting their statistics and penalties from the plugin. This time can be configured.