Skip to content
This repository has been archived by the owner on May 17, 2021. It is now read-only.

Discord bot research #28

Closed
Brunya opened this issue May 3, 2021 · 2 comments
Closed

Discord bot research #28

Brunya opened this issue May 3, 2021 · 2 comments
Assignees

Comments

@Brunya
Copy link
Member

Brunya commented May 3, 2021

Do market research about best discord bots.
Which features should we implement in the future?
Write a prioritized list about features, best practices.

@ejayxyz
Copy link
Member

ejayxyz commented May 4, 2021

DiscordBot Research

Node package - https://github.com/discordjs/discord.js

Best Discord bots on the market
https://top.gg/

Best Practices

  • bots should not activate on normal chat - use prefix or mention directly (commands should be excplicitly invoked)
  • unique prefixes - other bots uses common single character prefixes such as ! $ / - . etc. avoid using # and @, we might use words or bot's prefix could be configurable on a server-by-server basis, so the owners can setup the prefix by their choices
  • have an info and help command - provide information about the bot, list of commands
  • use Discord API properly - rate-limit
  • ignore own and other bot's messages - preventing infinite self-loops and security exploits. Discord API's User object shows if a user is a bot ( https://discord.com/developers/docs/resources/user#user-object - bot? property )
  • whenever a bot replies/responds , ensure that it escapes mentions (@everyone and @here) - while the user may not have permission to mention, the bot might ( discord.js {"mentionEveryone": false} )
  • use mentioning the bot to help users - like adding a way to find out the bot's prefix with only a mention @agorabot (or including it in the bot's presence)
  • NSFW features should only work in nsfw-marked channels
  • the bot should be fully usable even when there are no permissions given, just reply that need permission for specific commands

Prioritized list for a basic bot

  • ? database connection (usually mongodb with mongoose | we could try redis as well)
  • help and info command
  • automatized role management
  • ? guide for self-hosting
  • moderation commands (kick, mute, ban, unmute, unban, delete messages)

@Brunya
Copy link
Member Author

Brunya commented May 5, 2021

Available here

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants