BanIt - Simple ban module for anyone

Update 8 is out! 58% of you voted for ShadowBan, so here it is. Here’s the documentation:

Technical details

Some improvements were made to shorten code, based on suggestion by a GitHub user named @ccuser44, were implemented. All pcalls were replaced by xpcalls, and some asserts were added. (Remember to make pull requests for anything you feel needs fixed!)

Thanks for choosing BanIt for all of your banning needs (and be sure to make suggestions)!

1 Like

ShadowBan has been MASSIVELY improved… but not by me. This is why open-source code is the future:

  • More kick messages added
  • Sometimes user appearance does not load
  • Ownership of character is transferred to server to add lag
  • Speed and jump changes are randomly decided
  • AutoRotate is randomly enabled/disabled

Thanks to Github user ccuser44 for the awesome additions!


Man, activity on this has been extremely great. Keep it up!

1 Like

I am assuming this uses data stores for banning, and if so, why should we use your module when we can make our own? Making data store requests for both regular player data and bans rather than combining the two is not very efficient, and honestly, banning is not that difficult to implement.

You can ask this about basically any module. I can personally tell you this took days to make. Implementing bans with a module just saves some extra time (and keeps lines of code short).


So why not answer the question? I personally find ban modules not that hard to make, so why not just implement banning in our own datastore method? Why should I use yours? Is it better? Does it provide any extra functionality? Also I find it hard to believe this took days to make.

I did give an answer:

This module has the advantage of easily-implemented timed bans and banning where the user does not have to be in-game to be banned.

A little uncalled for, but it did.

So if it uses datastores to tell wether a player is banned, wouldn’t datastore requests be throttled when used with regular datastores for player data?

The read request is done infrequently, and the write request is as well, so there’s a 97ish% chance it won’t.

On games with 200 datastores, maybe. But chances are your game doesn’t have that.

Get and write requests throttle at 60 + numPlayers × 10 requests a minute. If there is 1 player in the server you are allowed 70 requests a minute, so the likelihood of throttling is much lower than people fear, especially with the way my system is set up.

(As a side note, most ban modules use a datastore as well as admin systems, so I’d be more worried about your actual game’s requests throttling than modules.)

What are the reasons to use this over well established ban systems? This module doesn’t provide any usefulness which makes it practically useless.

Are you talking about admin systems? This is not an admin system, but you could easily make it one by using plr.Chatted.

1 Like

It is useful if you’re implement a quick ban system, though for me personally I would have connected all datastores into one key.

One thing that can be cool is using “profiles”. I did this with the bs3 v2, so you’re supposed to create your own datastore on it instead of it being automated. @Ty_Scripts

1 Like

No, I’m asking what benefits does this module provide?

Well, there’s Server Bans, normal Bans, Timed Bans, and Shadow Bans, and the player never has to be in-game to ban them. Also, it’s open-source, so you can always improve on existing code. I don’t know of any ban module that has all of these.

1 Like

Technically basic admin with HD Admin as well could provide all those functions except the Shadow Ban feature

What are the advantages of using this over, say:

ik you’re just saying this because of what i wrote here: Restrictly V3 - Ban Functions - #6 by Ty_Scripts in which btw your argument of “why not” makes no sense

The advantage over yours is that it has more optimized code and far more features than “Ban” and “ServerBan”. The advantage over EZban is that this module has ShadowBan, and this module also has better documentation (though to be entirely honest EZban is not a terrible alternative).

> ik you’re just saying this because of what i wrote here: Restrictly V3 - Ban Functions - #6 by Ty_Scripts in which btw your argument of “why not” makes no sense


Okay, I agree with you on the optimized code part. But you only have more 2 main features than mine. Also Shadow Ban gives exploiters 45 seconds to do… whatever

Well, that’s if you ban exploiters with it. It’s your choice to do that.

The names for the DataStores will be updated on Wednesday, March 24th, 2021, at 3:00PM EST, to fix a bug concerning Universes. If you would like to have a full data recovery before this change takes place, please DM me so we can work together to save your data.