Introducing the Ban API and Alt Account Detection

Its already started happening :sob:

1 Like

maybe you have a 4090 in your pc unlike most, but thats alright!

1 Like

Yeah that ban message makes no sense and I’ve never seen it before.
Also remember that they used automation so it’s pretty likely there was a screwup.
I’d imagine Appeals would actually check it and at least give you a real reason, then you can resolve it (hopefully). If not, well…yeah that won’t be a good look.
Good luck!

1 Like

All you gotta do for that is wait 2 days or have a preexisting set of alts which I think a good chunk of exploiters do. One that keeps coming back to a game I contribute to heavily has accounts over a month old most of the time.
TLDR - waaaaay too easy to bypass

1 Like

Just the display message is filtered, the private message is not filtered.

Thanks for the feedback. We have read all of your comments with regards to text filtering the DisplayReason, we are will be changing our plans in response. I am happy to share our plans here, but it will take some time to properly enable these changes.

  1. Bans that currently fail because the DisplayReason gets text filtered will succeed. Keep in mind that the input validation on the length of DisplayReason and all of the other field will still be in place.
  2. DisplayReason will be text filtered at the time that it is shown to users, using the custom text filter, as detailed here, as well as Users and Players | Documentation - Roblox Creator Hub.
  3. If DisplayReason is filtered, we will show the text filtered version of the message with "#" in lieu of the words that are filtered. This will be concatenated with a default message expressing that the message was filtered. We are still working on the exact wording.

We will update all documentation and announce these changes when we are ready to go live on production. We thank you once again for the feedback and hope this provides a better experience. Feel free to follow up with any thoughts and questions.

15 Likes

Thanks so much for taking on community feedback after this awesome feature’s release. It’s not often this happens with new features, so it’s much appreciated! Looking forward to these changes.

Any updates you can provide on wording changes to the Join Error message? Some have expressed concern about the direct wording where the term “the creator” is used.

Their response was a shocker tbh, glad they listened this time
This feature and update is one of the best in recent times

I can’t seem to find the critique you reference. Could you link it/summarize it please? What is the exact concern with using the term “the creator”?

The filtering is already done by us automatically.

1 Like

this is also stupid due to the fact of limiting your game to players that are new to the platform

1 Like

I feel its kind of bad making it filter for the user in that moment because a large amount of players have safechat. Would be quite a pain to make sure the message doesn’t get filtered for users under 13.

No, unless you’re planning on giving them a lecture or mentioning a lot of numbers
You can get your point out by a few simple words in English

Here you go! There’s been heaps of replies regarding it in this post, so I’ve attached a screenshot of a summary of them and linked the one with the most detailed reasoning. Again, really appreciate you assisting us with feedback. Thank you so much.

4 Likes

This is 100% true
A large portion of players are kids and will take it to heart :+1:

2 Likes

Thank you for the summary. I’ll pass this feedback along internally and see what we can work out.

6 Likes

I have a question. Is there a way a developer would be able to get all banned players in a game? Something similar to dataStore:ListKeysAsync(), you know?

2 Likes

It says service not live, probably still in development

From the looks of it it works off of userid’s so you could very well for loop say a money datastore and then ban everyone. Main thing is keeping your place clear from any developers who may do that and checking every free model with scripts you insert. Better yet just use a script clearer in console.

for _,p in pairs(game.Workspace.Inserted:GetDescendants()) do if p:IsA("Script") then p:Destroy() end

I had some other accounts that were 2-3 years old. They are now also terminated. and the worst part about those is that I didn’t have emails on them so I can’t get them back.