Discord-To-Roblox Ban bot

I think this idea is great. Though many people in the thread are noting that Google Sheets isn’t an effective/useful database, I believe this solution is an intuitive way to manage bans.


I like how this works because:
a) There’s no maze when you try to set it up. It’s open-sourced, clearly explained, and is written well.
b) Developers respond when asked questions. For several questions, devs replied within an hour, which is a great response time, imo.
c) This can be managed using Discord and Sheets, which is helpful in the rare event that the bot/Discord goes down and I need to add an emergency ban.


I’m investigating a possible use for this with my game, and I think I’ll try to add features like groupban/unban commands, role restrictions, and user lookups. Kudos – this is amazing!

6 Likes

Hey, that’s pretty cool. You should add a feature, probably with Regex, to check whether the ;ban command’s first argument is a Username or UserId, then using the Roblox API, get the UserId of the Username.

2 Likes

I’ve actually been updating this bot behind the scenes, with a few other people. I will be updating it to a new version of it, with ban reasons and it also logs mod names ect, I will also be giving credits to the people who made this new update possible. As clearly they want to help the community, but I appreciate the suggestion, that can help.

3 Likes

Awesome! I’m excited to see what you come up with! :+1:

2 Likes

This idea’s super cool - I was planning to try something, but I can’t figure out Regex to save my life lol

I think that this idea and creation was a great compared to other responses criticizing the use of Google sheets and that it needs to be credited for its positive things. I am not saying you should not give feedback to improve, just that an argument about the use of Google sheets isn’t necessary…

5 Likes

If ever the spreadsheets start sucking your script execution time, you may look at PropertiesServices and CacheService. Properties should allow you to properly store them in a permanent way so that lookup is fast. The cache is pretty much unlimited, the data can be hold up to 6h but you can renew it with triggers, that way you don’t have to loop over the spreadsheet every time. If you’re doing a linear search, please use breaks so you don’t need to go all the way to the end everytime.

2 Likes

I know MongoDB is just an example, but I would use MySQL for a bandatabase.

This bot is definitely usefull for all developers but, do you reccomend glitch?

1 Like

For me, as I can’t pay for anything. It works well. It has a great code editor and it even has collaboration.
Just make sure to use Uptime Robot to ping it every 5 mins; and, keep your project private.

1 Like

This is pretty cool!!! I can’t wait to use this for some of my groups as this system would make it easier.

1 Like

The bot is not working… Followed all tips. Help?

Keep getting the error that loadlibrary is being deprecated, don’t know if that’s related.

1 Like

Doesn’t work for me can I please get some help?

1 Like

Most likely isn’t related , make sure you did all the steps properly, if you could also provide screen shots ect of the code ( blur out private information like the Tokens ect. ) it would be helpful, this source doesn’t use loadlibrary. This error is most likely coming from other code in your game or from a plugin, and if from this source, please provide a screen shot. Thanks!

@V1uk Same goes to you, please be detailed about the issue and if you followed all the steps, including or providing screen shots.

2 Likes

Could you make a gitlab/github repo with the source, so others can make improvements to the code?

if (message.author.id != BOTID) could very well be:
if (message.author.bot) return

There’s just a lot of really weird / questionable code choices in it.

2 Likes

This is so useful. I’ll try it once I get home.

2 Likes

I have been using this for a while but then I started to use MySQL/MyPHPAdmin and I find MySQL a bit better seeing that it looks hard but it is fairly easy. I have been able to log bans, command logs (working on it.), inactivity notices, etc. I think that this could be used for more than just bans such as kicking someone from the game which should just be sending a request to the server then having Roblox respond when it gets the request then having the name deleted from the list.

Suggestion!

1. Reason

Self explainatory
[prefix]ban userId Reason

When the player gets kicked
It will show the reason.

2. Appealing ban

This can
Like it’s an option for appeal center/centre, if the player can appeal their ban.
Usage[p]ban UserId [Can Appeal?] [Reason]
[p]ban UserId [y/n]

1 Like

I could add this to the bot, I will do this as an addition. Reasons would be super easy to create, I’ll let you know once these suggestions are added. Thank you for inserting them!

2 Likes

Dear @Kensizo,

Thank you for listening to the suggestion. Keep up your incredible work. I listed more suggestion below! Plus, permission to add this link to the credits of my group game? (Sorry required to ask or I will get fired.)
Plus, MORE suggestions!

ROBLOX search

ROBLOX Search to look up ROBLOX username/Userid!
usage: [Prefix here]search (UserId/Username)

Ban Information

Plus, ban info, get the player information about their ban. In embed on discord (Sorry if not allowed saying this on the dev forums, please no ban ROBLOX. Thanks.)
Usage: [Prefix here]baninfo (UserId/Username)

Embed list:
Username and UserId
Ban Reason
If can appeal the ban.
And more information as you wish.

Please get back to me about adding this to credits. (Don’t want to get fired.) You did hard work on this and should have your name is credits. (This ending is funny. “A fellow player in ROBLOX,” had good chuckle.)

A fellow player in ROBLOX,
AlertShamrock!

1 Like