### Version 1.2 has been released! Heres the changelog:
### Bukkit version changes:
1. Move permission package
2. Use PermissionsEnum instead of PermissionsConstant
3. Kotlin migration
4. Added dev version check
5. Added bypass permission check for item spawn
6. Use parallel stream to load external files & reduce memory consume
7. Cache for loading words from internet
8. Early return if no files to load
### Velocity version changes:
1. Added config & update checker
### Bungeecord version changes:
1. Added config & update checker
### Update Notes:
1. Update all AdvancedSensitiveWords on your proxy network(if you have)
### Version 1.1 has been released! Heres the changelog:
### Bukkit version changes:
1. Added `reloadconfig` & `add` & `remove` command
2. Fix FakeMessageExecutor
3. Fix /asw status output
4. Use player uuid to store data instead of player object
5. VL-based punishment system
6. Make fake message work under packet mode
7. Remove DatabaseManager & Messages fixes & Added /asw reset command
8. Make hooks reloadable
9. Use Gson to parse response
10. Cache permission check
11. Offload logging operation to single thread
12. Use Caffeine
13. Improve logic in listeners
14. Monitor item spawn
15. Add addallow/removeallow command & More full match condition
16. Further improve library download speed in China
17. Update dependencies
### Velocity version changes:
1. Fix message being sent twice
2. Improve forwarding performance
### Bungeecord version changes:
1. Use LimitedByteArrayDataOutput
### Update Notes:
1. Regenerate message files
2. Update all AdvancedSensitiveWords on your proxy network(if you have)
This version is completely overhauled!
Changelog:
Fix bug when running on latest packetevents
Notify operators on update available
Integrate OpenAI & Ollama AI moderation processors
Optimize zh dict
Expand en default dict
Invert command whitelist by default
Added check for SimpleVoiceChat
Fix potential CME by using ConcurrentHashmap
Added punish command
Added is_shadow placeholder
Simplify message file
Update dependency
Runtime library loading
Fix ip retrieve
Add proxy command execution
Recode fakemessage
Add config for chat check
Process message even it is cancelled
Code cleanup
Throw exception on player ip is null
1. **Removed built-in packetevents, now you need to download manually**
2. 1.21 support (Only event mode)
3. Removed ProtocolLibListener for better maintainbility
4. Add IPv4 address check
5. Show wordlist in notify messages
6. Fix bug when using replace mode for book check
7. Optimize dict (Thanks to @CuteLittleSky )
8. Added AltListener for fakeMessages
9. Code cleanup
10. Migrate all listeners to Kotlin
11. Support for latest Leaves
#### Update notes:
1. Update all AdvancedSensitiveWords on your backend server and proxy
2. Regenerate message files
After 2 months of silence, version Reflex is updated!
Changelog:
1.20.5/1.20.6 support
Add alternative event-based check
Add PlaceholderAPI expansion
Add SHADOW punishment method
Add /asw info command
Optimize dict
Fix potential ConcurrentModification
Reduced memory consume
Add database to record player violations
Rewrite BookCache
Optimize ChatContext
Able to flush player data on quit
Bump dependecies
Code cleanup
Support for BungeeCord and Velocity
Switch to multi-module project
Regenerate your message file before updating!