Today I’m showing up my DataBan System and asking your feedback on it.
Information:
My DataBan System is currently installed in my games Group to kick any Players that are databan with a reason.
My external Database is Firebase.
I have set a database called DataBan: in this list, Players ID is set and with a reason.
When I’m databanned when and I try to join any game of my group it will kick me.
Now its does not only kick you from the game but also from my group discord.
The current commands to databan someone are only the database console, but soon I’m going to make it for in-game and also in-discord to databan someone, Databan in discord will also make a remote to kick the player if his in-game.
Databan users are able to appeal the ban in a DataBan Appeal Center when they can only appel ONCE, the appeal request in the database under the databan player and send the appeal to the Discord for review, if denied, the player will stay databanned and cannot apply anymore.
I’m also using my External Database for other information as this database can be transferred between games and even being read and edited by discord, for example, Playtime between games.
That all I have to show you and I like your feedback and even suggestion on how to improve it if you got any ideas!
Hey, nice work!
I myself used Firebase as a database and used it for bans and storing general data about the player.
I have a few suggestions/feedback for you, first one would be the kick message.
You can format the kick message to look much more readable, using \n. This makes the text go to a new line.
I used this as the command line to achieve that:
game:GetService("Players").LocalPlayer:Kick("\nDataBan\nYou are banned\n\nReason: Being a noob!\nUnban date: 23/06/2020 (DD/MM/YYYY)\n\nIf you want to appeal this ban, please contact a moderator.")
sorry for messy code lol.
The second suggestion I have, which might be a bit obvious from seeing the screenshot of the kick message example screenshot, is that there should be a length to the ban itself. Say someone does something petty but still punishable, such as harassing someone in the game (use Roblox report too in that case), you could ban them for 5 days as a warning.
You might argue that the moderators could do the same after 5 days, but the problem here is that the moderator may forget, or do it a few hours too late. Or there’s a lot of bans that are be removed that day, meaning it takes time to unban each of them manually.
The third suggestion I have is to log who banned the person, whether or not it was the game.
This would prevent moderators from being able to abuse their powers without anyone knowing who did it.
Maybe even add an option where for the longer bans multiple people are needed to ban someone?
The final suggestion is to not include any unnecessary information about the user, such as the playtime. You could incorporate to your bot a command which gets the data of a user.
Wow you making me leaning things, i never know that \n was a thing, thanks! in fact im going to update with this! thanks for your feedback!
And with you other suggestion, im going to impvrove to make a list of the banned user, example:
Reason, UpBan Data: (if not perm), and the moderator who banned him.