my current game has problems with people bypassing the roblox chat using different signs referring to words example cool-C00l, I have seen since the chatservice was deprecated it is no longer possible to my knowledge, does anyone know if it is possible with the current textservice?
You can use the TextChatService.OnIncomingMessage
callback on the client, which automatically uses Roblox’s system before the callback is invoked.
Note the callback is invoked twice for a client that sends a message, first to create the message on their client to send to the server for filtering, then again when the server gives back the filtered message. You can check this using TextChatMessage.Status
local TextChatService = game:GetService("TextChatService")
TextChatService.OnIncomingMessage = function(message)
if message.TextSource and message.Status == Enum.TextChatMessageStatus.Success then
local properties = TextChatService.ChatWindowConfiguration:DeriveNewMessageProperties()
print(message.Text)
message.ChatWindowMessageProperties = properties
end
end
I am unaware if Roblox’s moderation system picks up inappropriate language when scanning script source,. I suggest figuring that out before defining any strings in a disallowed word list.
Also, you should be careful to ensure that when you are processing the message for filtering that you do not emit any visible text (e.g. error messages in Developer Console) that contain inappropriate language.
You could try to add your own custom filtering solution on top of TextChatService, but do not bypass the default filter to instead apply your own as that is against ToS
You might want to look into this resource (filter out unicode characters used to bypass chat filter)
Annoying thing is that this cannot be done with the default chat. You’d need a custom chat
– WinryChat | Open-Source Chat UI for TextChatService
– OpenTextChatService - Open-Source Implementation Of TextChatService
– LegacyChat ported to TextChatService
The video you linked with this thread is for the now deprecated LegacyChat (aka Lua Chat System), if you want to follow that video, you’ll have to use my port of the LegacyChat to TextChatService (the last link). I took a quick look at the video, and it should work with the port. Note that you’d have to modify the script under the Chat module script, as cloning ChatServiceRunner into ServerScriptService wont work