Introducing the Ban API and Alt Account Detection

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.

5 Likes

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

3 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.

I wonder why this can’t be done earlier?

How would I know if a player is banned? So I can make a ban/unban system purely on the server?

This actually also happened to me once, it was just due to the exploit that was around during the start of 2023.

1 Like

I suppose this could work, but a built in way of doing it would be much better (especially for games that don’t have a data store to store data for every single player).

1 Like

I understand wanting to have a filter; however, I think certain things should be excluded such as dates and times. A lot of devs, including myself, like to include unban dates in the kick message if the ban is only temporary. Dates and times seem to always trigger the filter.

If you implemented this check into the filter algorithm, that would be of great help.

Example:

Edit: Another, more practical idea would be to add a new settings parameter in the configs called “IncludeUnbanDate” (or something along those lines) which would use the ban’s duration to automatically format and display a date in time in the player’s timezone at the bottom of the kick message. (If the duration is -1 (permanent), this parameter would be ignored).

1 Like

You’ll need to get their ban history and see if the first item in the page has Ban == true
For bans with duration, I’m not sure if you have to compare times or it will log an unban by itself

Thank you for the addition, just in time as I was about to code myself a database for bans.
One question though, how does the alt detection work?
Does it match IP, HWID, or any form of identification?

How would you display who banned the user??

This is a great update and something that I have been waiting for a few years!
Some features that I think should be added are:

  • A boolean parameter in BanAsync that bans the player from all other games owned by the Roblox group or Roblox player that owns the game. (Something like ApplyToOwnerUniverses.)
  • A banned accounts listing feature (listing the alt accounts banned, like returning a table after using BanAsync).
  • I also find these features a good idea to impliment:

Nonetheless, the BanAsync function includes almost as many parameters as I need.

1 Like

This one, no. It would be unfair to be banned from other games by that same dev or any other because of something you did in one particular game. This should be added by the creator instead, the abuse of this great API will be worsened with this feature as even “detected alts” cannot join the game. What if a genuine player gets banned from all places from some unfair bs?

I agree with this. Too many players banned may return a table so large that may crash studios or the calling scripts, if this is implemented it should be split up.