Description
Is your feature request related to a problem? Please describe.
Feature request. We have a maturity-diverse community on our server. Some want to be able to swear, some don't care, and some are young shouldn't see it or just don't want to see it. We'd like a tool that caters towards nuance rather than filtering all swearing / censored topics and people run free.
Describe the solution you'd like
User-togglable message filtering. Our solution to this was allowing users to individually toggle whether they see blacklisted words in chat messages, or if they get censored. This would only impact the message they see. So if I have the censor on, I see ******
, but if someone else has the censor off, they see whatever the original word or phrase was.
We were thinking of just having a static blacklist in a config file. Nothing fancy or dynamic for users to add or remove their own words.
There would be a configuration option in a file for enabling censorship by default. Player's could use an in-game command like /censor
to toggle message censoring on and off.
Describe alternatives you've considered
Given that we want to modify the message conditionally for each player, intercepting the PlayerChatEvent
before MultiChat doesn't work. I don't think the MultiChat API currently has a way to do this now. That said, I don't think there are any other options short of forking MultiChat and running our own custom build.
Additional context
I put this in as a feature request, but recognize it is arguably beyond the scope of a chat plugin's core. If it's something deemed beyond the scope of something that should be core to MultiChat, I think it could instead serve as a use case to consider whenever there is time to build out a more robust API.
If the MultiChat dev team thinks this is worth adding to MultiChat natively, I'd be willing to work on a PR for it.