Text Filter APIs should perform basic rudimentary filtering in Studio

As a Roblox developer, it is currently too hard to know if your filtering implementations work correctly. Text does not filter in Studio (so that Roblox doesn’t have to expose their backend for filtering, presumably), which means there’s no way to tell if you implemented it right without booting up the game on a real server.

Roblox should perform very basic text filtering (e.g. common swear words or niche phrases like “FILTERME”) so that developers can more quickly know if they’re using text filtering appropriately. This means that the behavior could be implemented without Roblox having to use any external services.

Recently, this arose as an issue in the Developer Forum Discord where a user tried to debug their filtering problems. After a good bit of time trying to figure out what they were doing wrong, they then asked “Does filtering generally not work in Studio test mode?”. This shows that this behavior is not intuitive for developers.

124 Likes

It is now 2021 and there hasn’t been any official response regarding this request, so here I am. @Kampfkarren has already done into detail about the specific use-cases that I commonly come across. During my time as an accelerator, I was creating a custom chat system but was pretty frustrated I would have to join my game just to test the filter quickly, and this goes for other features such as filtering user-inputted text.

Would love to see some transparency behind the seemingly-intentional design to prohibit Text Filtering from an already cloud-based studio.

15 Likes

Some basic text filtering would be a nice quality of life change for testing filtered text in studio. I’m surprised that it still isn’t possible to do any basic text filtering in studio after all of these years. If I want to work on a game in one place, I need to push my update to the main place whenever I make changes related to filtering text so that way I can ensure that it works. That’s obviously not a good practice, which is why I usually need to use a separate place, which is a little annoying.

3 Likes

This, or anything that solves the same problem, is still necessary.

1 Like

It’s extremely confusing as to why it’s just not possible to filter text on the local IP.

2 Likes

This may lead to unwanted consqeuences like being banned for saying stuff in studio which no one can see. There maybe should be an option to enable filtering in studio but it shouldn’t be on by default.

You clearly didn’t read the post. We simply need this API to provide some token filtering for the purpose of verifying filtering is working. Not actually hitting the real filter.

1 Like

Thats understandable but it should be optional for testing instead as a be always on feature. Maybe a service call to activate it for the current studio session. Like TextService:ActivateLocalFilterForSession()

1 Like

Please explain why? Settings for the sake of settings add needless cost of maintenance.

What if people don’t like the local chat being censored?

Then don’t implement the filter API for that use case. You’re still not quite catching the idea of the post: what we want is a way to be able to test filtering in Studio. Filtering, even now, is dependent on developer implementation. It doesn’t have to be implemented (though we are obligated to do so because of rules and not because there’s some automatic application of it).

The issue you have is easily resolved by just not using the API in the system you’re testing. If you need to flip its behaviour to use filtering in live sessions but nothing in a local session, you can (and should) build around that using what IsStudio returns.

1 Like

Yes thats been an issue for me as well.
But let’s take an example of the Roblox chat. While I am testing locally sometimes I just don’t want the messages to be filtered and filtering in that case would be annoying. Should I bother modifying the Roblox chat then?

If you’re using the Legacy Chat Service, there is a chat setting that prevents the filtered version of a message from being displayed to the sending client (they always see their own messages unfiltered). If you’re using TextChatService, there is no equivalent functionality - write a feature request.

This isn’t about chat filtering anyway, this is about overall text (string) filter APIs. Chat is out of scope. The main point of this feature request is allowing developers to be able to test filtering in Studio. Let’s not hyperfocus on chatting.

Having moderation applied to me because I thought I implemented filtering correctly and evidently did not is quite a bit more annoying than anything relating to chat inside Studio

2 Likes

Recently ran into this as an issue myself. I actually thought it was a bug at first because my immediate assumption was that it would be a little ridiculous for filtering to not be accessible in studio. Turns out it is ridiculous.

There are a few issues if this would be introduced. For example what if the network would get cut. Then it couldn’t ping the server.

How this should be implemented that in studio a rudimentary filter would exist inside the Roblox Studio binary and wouldn’t communicate over the internet at all.

Just spent an hour and half trying to debug the filter not working, luckly I found this post or I would have spent even more time trying to debug a problem that had nothing to do with my code. A massive waste of 1 and a half hours bruh.

4 Likes

I need to be able to filter text in studio PLEASE I don’t want to upload my place and say embarrassing things to test something

ChatService:FilterStringForBroadcast
ChatService:FilterStringAsync

1 Like