noDoot is a Discord bot developed by HeroGamers#0001, which denies Userbots from joining your guild, effictively stopping all DM and server spam from those bots that have been quite active on Discord lately. The bot currently runs on +10 guilds, with a total unique user count of +1000 users.
noDoot was originally developed as a submission for Discord's Hack Week 2019, in the moderation category, and is now run as a hobby project. PR's are always welcome!
noDoot works by taking users who are joining a server, sending them an invite to the noDoot Verification Server, and kicking them after five minutes, if they aren't verified yet.
On the noDoot Verification Server, the user is sent a Captcha through their DM's, and once verified, the user will be able to join all servers using noDoot, and should never need to do the verification again, ever, because don't we all hate doing Captcha's?
- Keeps out userbots without you having to lift a finger
- No setup of the bot on your server, other than the permissions given to the bot upon invitation
- Global Verification - A one-time verification across all servers using noDoot
Category | Command | Aliases | Description | Who can use | Usage |
---|---|---|---|---|---|
Bot Administration | ~adduser | ~au | Adds a user to the database | Bot Owner | ~adduser |
Bot Administration | ~removeuser | ~ru | Removes a user from the database | Bot Owner | ~removeuser |
Bot Administration | ~verifyuser | ~vu, ~vuser, ~verify | Verifies a user manually | Bot Owner | ~verifyuser |
Bot Administration | ~unverifyuser | ~uvu, ~removeverify, ~unverify | Removes the verification from a user | Bot Owner | ~unverifyuser |
Bot Administration | ~isverified | ~iv, ~isuserverified | Returns whether a user is verified | Bot Owner | ~isverified |
Bot Administration | ~getcaptcha | ~gc, ~captcha | Gets a user's current captcha | Bot Owner | ~getcaptcha |
Bot Administration | ~fcaptcha | ~generatecaptcha, ~forcenewcaptcha | Generates a new captcha for a user | Bot Owner | ~fcaptcha |
Bot Administration | ~stop | ~restart, ~shutdown | Stops the bot's script | Bot Owner | ~stop |
User Interaction | ~newcaptcha | ~new, ~nc, ~ncaptcha | DM's Only - Gets a new captcha for the user | Everyone | ~newcaptcha |
Information | ~botinfo | ~info | Gets information about the bot | Everyone | ~botinfo |
Information | ~invite | ~inv, ~botinvite, ~botinv | Sends OAuth 2 links to add the bot | Everyone | ~invite |
Information | ~feedback | ~support | Leave feedback or get support regarding the bot | Everyone | ~feedback |
Information | ~source | ~sourcecode, ~github, ~git | Sends a link to the bot's GitHub page | Everyone | ~source |
WARNING BEFORE ADDING THE BOT: Adding this bot to your server definitely helps with keeping the userbots away for your server, but for smaller servers it may also cause less members to actually join the server, as they would see it as a hassle to complete the verification process!
You can invite noDoot to your servers, and thus enable the verification process on them, using these invite links:
The Kick Members Permissions is required, but can be given through other roles if wanted. The Create Instant Invite Permissions is optional, but is required if you want the bot to give the user a new invite back to the server they tried to join, if kicked. It is highly recommended to turn off the random welcome messages, as the bot will not delete those after a possible kick.
If you want to test out how noDoot works in action, you can try joining one of the servers protected by noDoot, or try skipping straight ahead to the noDoot Verification Server to try out the captcha!
I would be very happy if you could give some feedback on the bot, after you have tried the verification process. After the verification process is done, the bot will send an invite to my server, Treeland, where you can then afterwards send me a DM through.
Running the bot locally is not recommended, but it can be done.
- Install Python 3.6.6
- Run
pip install -r requirements.txt
in the bot's root directory.- Sometimes Pillow is having missing dependencies, on Debian-based distros, at which you need to run
sudo apt-get install libjpeg-dev zlib1g-dev
(it should be somewhat the same with apk).
- Sometimes Pillow is having missing dependencies, on Debian-based distros, at which you need to run
- Copy "config_example.py", and rename it to "config.py". Fill out the config file.
- Run bot.py