Introducing the Ban API and Alt Account Detection

There is, if someone appeals, and the appealer is an alt of the main account.
You have no idea what main account to unban.
This isn’t a fully thought-through idea.

2 Likes

Then you should ask users to appeal from their main account, no one should be appealing a ban from an alternative account anyway

2 Likes

ALT account detection does not WORK in the slightest for me, Knowing alt bans are based off MAC Address, I tried 4 possible scenarios:

  • Banning my main account, then logging in with my alt (main acc gets banned but i can still join with my alt)
  • Banning my main account, while on my main (It did ban my main account) but once i switched using the account switcher, my alt account is still able to join.
  • Banning my alt account, then logging in with my main (alt account gets banned, but my main account can still join, meaning technically no alts were banned at all)
  • Banning my alt account, logging into my alt account, then switching to my main (alt account still gets banned, yap yap, but my main account however, can still join no problem).

All tests were done in the same network, same device.
To summarize: Alt account detection doesn’t work.

14 Likes

Our testing found the same thing, which I posted above. It seems to not account at all for alt-hopping and only bans once it matches a pattern across multiple days. Which is unfortunate because majority of people with 50+ alts don’t use them regularly and just hop between them to bypass bans. They don’t even need to spoof to get around this, simply logging into another account is enough of a bypass.

4 Likes

well until alt detection is fixed ill stick to banning timezones.

surely you’d be including the pc’s start up time as a metric too right
(there is around 50 million people in my time zone, so uh, you’d be missing out on quite a few players)
also if you use time zone bans i can just click 1 button in a drop down in windows settings lol

Will there be a way to disable this?

You can specify the message the banned user will see with the DisplayReason field.

What kind of signals? Doesn’t seem like the most obvious IP ban was even implemented with this release. What kind of signals already exist? It seems as if there are none. Testing this I’ve yet to encounter an alt actually being detected by your system

3 Likes

I think that exists already. Or they just added it, But you should check out the documentation for the engine part to see how to use it.

Here’s a code sample though, Stolen from the documentation.

local Players = game:GetService("Players")

if shouldBeBanned(player: Player) then
	local banHistoryPages = Players:GetBanHistoryAsync(player.UserId)
	local duration = getNextBanDuration(banHistoryPages)  -- Creator-implemented logic
	local config: BanConfigType = {
		UserIds = {player.UserId},
		Duration = duration,
		DisplayReason = "You violated community guideline #5",
		PrivateReason = "Put anything here that the user should not know but is helpful for your records",
		ExcludeAltAccounts = false, -- Alt accounts seems to not be working currently, As people have complained in this thread.
		ApplyToUniverse = true
	}

	local success, err = pcall(function()
		return Players:BanAsync(config)
	end)
	print(success, err)
end
2 Likes

Will there be a way to disable this?

Disable what? If I may ask. Like, Using an old system to ban users? (Ex: Kick on join)
I think you can still use the old system to ban users, But I would definitely try out the Ban API.

3 Likes

Elaborate, I’m guessing that you mean “How do i remove a Permanent ban from a player?”
I’m pretty sure you’re able to just use the Unban Async to just easily unban them.

Thats for BanAsync not UnbanAsync :+1:

Oh? SIlly me, I must’ve misread it. But yeah, You’re right. It would be useful to have private reasons.
But at the same time, You could possibly hook it up to a datastore or something for now.

1 Like

Haha no problem. Yeah thats the conclusion that I’ve come to, easier to just use a datastore for this very reason.

1 Like

I was going to say this doesn’t exist unless Roblox plans to add it.

1 Like

So cool! Finally a way to ban players without relying on a third party script! It would be so cool if you added a moderation category in the games overviews in the creator hub to see how many people got banned in a given period of time, ban people from website etc…

1 Like

Nice! This will finally stop alt-accounts and prevent in-game ban evasion.

I’m glad this feature is finally a thing, it’ll undoubtedly help, especially against people that evade bans, mainly exploiters, in the majority of games.

I still have one question though. By far my favourite game, Bloxel, which is a voxel-based building game, has had rampant griefing throughout 2022 and 2023. We had a moderation/chunk protection system maintained by a couple moderators set in place to prevent this, but to no avail. We removed build permissions from the accounts we knew were repeatedly griefing, yet they kept coming back on new accounts. Of course we removed permissions from them as well, but only after they caused havoc on multiple builds.
Thus i’m wondering how customizable the ban api is. Do we need to use to built-in roblox ban system or can we use the alt detection technology seperately? This would make it possible to give offenders a different in-game punishment other than a straight ban or kick, and would definitely provide a solution for the rampant griefing sprees in Bloxel.

4 Likes

I’d like to think maybe I’m just doing something wrong or confused, and if so, please correct me.

The alt account detection flat out doesn’t work. Why release this feature and advertise it as such if it doesn’t work as intended? I just think it should actually do what it’s supposed to do before announcing it like this. I’m quite literally doing the bare minimum of just opening an incognito browser and successfully rejoining off an alt.

I have the utmost respect for our engineering and product teams behind this, and I actually think it’s an awesome addition to the API - but why release it like this? It doesn’t work.

Quoted post says it the best.

The most blatant form of ban evasion is account hopping. If this doesn’t account for that, you guys are missing a key part of why this feature has even been requested in the first place and I really would suggest a different approach to it.

3 Likes