Skip to content

Bot Setup

Baytae Tistear edited this page Jul 7, 2026 · 3 revisions

Bot Setup

This page explains first-time Discord bot setup after the server is installed.

1. Create The Discord Application

In the Discord Developer Portal:

  1. Create an application.
  2. Create a bot user.
  3. Copy the bot token into the server env file as DISCORD_TOKEN.
  4. Copy the application/client ID into DISCORD_CLIENT_ID.
  5. Keep the client secret private for OAuth setup.

Never paste token or secret values into the wiki.

2. Enable Required Discord Settings

Enable the Discord features the bot needs, such as slash commands/application commands and any privileged intents required by the current bot behavior.

Use the least privileged permissions that still allow:

  • Posting submission reposts.
  • Reading configured channels.
  • Sending embeds/files where submissions/games are used.
  • Managing messages only where moderation features require it.
  • Using slash commands.

3. Invite The Bot

Generate an invite URL from the Developer Portal or the dashboard setup helper. The invite should include the scopes and permissions SDAC needs.

Common scopes:

  • bot
  • applications.commands

After inviting, confirm the bot appears in the server member list.

4. Confirm Slash Commands

After the bot starts, slash commands should sync. In Discord, test:

/commands
/admincommands
/setupstatus

If commands do not appear, check bot logs and Discord command sync output.

5. Run The Setup Wizard

Start with:

/setup

Then run:

/setupstatus
/setupchecklist
/setuptest
/diagnose

These commands help catch missing permissions, missing channels, public URL problems, and command sync issues.

6. Configure Channels

At minimum, configure where submissions go:

/setsubmit

Optional channels/settings:

/setweeklychannel
/setweeklytime
/setweeklyday
/setgamesummarychannel
/seterrorchannel
/setnotification

7. Configure Categories

Create categories with:

/setcategory

Review and edit with:

/categories
/editcategory
/deletecategory

No categories should be hard-coded by default. Each server should configure its own.

8. Configure Staff Access

Grant Discord roles that can manage SDAC:

/setadminrole
/removeadminrole

Dashboard role rules are separate and documented in Roles and Permissions.

9. Configure Features

Use:

/setfeature

Feature toggles can include submissions, approval queues, guessing games, weekly posts, public gallery visibility, cross-server visibility/rankings, and other server-specific behavior depending on the current version.

10. Configure Moderation

Use:

/setapproval
/setmoderation
/setlimit

These control approval-before-repost, blocked words, allowed media types, new-user approval, spoiler approval, file size, monthly submissions, active games, and storage limits.

11. Configure Games

Common setup:

/setgamesettings
/setguesstimeout
/setgamesummarychannel

Test with:

/startgame
/guess
/hint
/correct

Website-managed game library setup is handled from the dashboard.

12. Configure Polls

Test Discord poll flow:

/createpoll
/polls
/votepoll
/closepoll

Polls can also be managed in the dashboard.

13. Configure Backups

Optional Discord backup setup:

/backupguide
/backupsetup
/setserverbackup
/backupnow
/backupstatus
/serverbackupstatus

Provider credentials should be configured on the server and never published in the wiki.

14. Configure Branding

Server branding can be set with:

/setbranding

Dashboard theme/layout settings are configured in the dashboard.

15. Final Bot Verification

Confirm:

  • /commands works.
  • /admincommands works for staff.
  • /submit can create a test submission.
  • The bot can post in configured channels.
  • /setuptest passes or shows only expected warnings.
  • /diagnose does not show critical failures.
  • Admin alert channels receive testable notices where configured.

Clone this wiki locally