Utility bot for Sunfish Village discord server. Right now it only works for the Sunfish Village server.
Its not public rn so you'll have to self host it:
-
Clone the repo
-
Install the dependencies with
npm install- make sure you have node installed (latest)
Copy .env.example to .env and fill in the values.
Create a MongoDB Atlas project and database.
- MongoDB URI: copy the connection string from Atlas and set
MONGODB_URI. - Database name: optionally set
MONGODB_DATABASE; otherwise the bot usesdevelopmentorproductionbased onDEV_MODE.
create a testing bot and a main bot in https://discord.com/developers/applications.
- enable the guild members intent ("Bot" tab)
- go to Installation tab, set it to use a Discord Provided Link, choose only the permissions needed by the utility and festival features, and invite it to your server
- go to your discord settings and enable developer mode
- guildId: right click on ur server name -> Copy Server ID
(You dont need to reset token if you already know it)
-
productionToken: go to your main bot -> "Bot" -> Reset Token -> click "Copy"
-
devToken: same as above but for testing bot
-
productionClientId: go to your main bot -> General Information -> copy Application ID
-
devClientId: same as above but for testing bot
- cloudflare and vercel will not work with this, you'll have to use something like Render or Koyeb etc.
render is free i found a funny loophole Do not have multiple web services under a single workspace or you'll hit usage limit fast
- create a new workspace
- create a web service and import from your cloned github repo
- set build command to
npm installand start command tonpm run dev - Add the values from
.env.exampleas environment variables. - deploy
Haven't had much experience with others so here's a general guide:
- import from github
- Add the values from
.env.exampleas environment variables. - set build command to
npm installand start command tonpm run dev - deploy
You may need to change channel IDs and role IDs in helpers.js and the member join/leave event files.
run node deploy-commands.js in the same directory as your bot's source code.
- closepost
- helpers
- ping
- reopenpost
- ping
- reload