CATH.EXE
>
This is a Bot Template based on Cath.exe, This templated **does not** conatain any data from Project Lighthouse.
>For Call of duty mobile stats, Please invite the main instance using the **INVITE ME** badge.
**Cath.exe** is a Multipurpose Discord Bot with many features that include but are not limited to Moderation, Music and Economy. The Call of Duty Stats are courtesy of [**Project Lighthouse**](https://discord.gg/ARNFCu9NxK) by [**Path.exe**](https://www.youtube.com/channel/UC0hvUWYhyx_DOEBzLWEJxsw).
If you like this bot, feel free to
**Star** and **fork** this repository.
[](https://discord.com/oauth2/authorize?client_id=800966959268364288&permissions=4231314550&scope=bot%20applications.commands)
[ ](https://discord.gg/SR7TeNJG67)

[](https://github.com/night0721/cath.exe/blob/main/CODE_OF_CONDUCT.md)
[](https://ko-fi.com/I2I35XISJ)
## Build with:
[](https://developer.mozilla.org/en-US/docs/Web/JavaScript)
[](https://nodejs.org/en/)
[](https://www.npmjs.com/)
[](https://mongodb.com/)

Deployment
## Deploy Online
[](https://repl.it/github/night0721/cath.exe)
[](https://heroku.com/deploy?template=https://github.com/night0721/cath.exe)
## Deploy Locally
### Prerequisite
Download all these programs on your local machine by clicking on the badge & following the standard installing procedure. You can use any IDE but we recommand VS Code.
[](https://git-scm.com/downloads)
[](https://code.visualstudio.com/Download)
[](https://nodejs.org/en/download/)
### Step by Step Walkthrough
### 
1. Clone this repository
```cmd
git clone https://github.com/night0721/cath.exe
```
2. Rename the [`.env.example`➚
](https://github.com/night0721/cath.exe/blob/main/.env.example) file into `.env`.
3. Create an application from Discord Developer's Portal then copy these things into the `.env` file.
[](https://discord.com/developers/applications)
- **Bot Token** (TOKEN)
- **Application ID** (CLIENT_ID)
- **Client Secret** (CLIENT_SECRET)
4. To view the logs, Create 5 Channels & 5 Webhooks in a **Discord Server** corresponding to these logs.
- **Server Log** (Log new Server Added/Premium Server)
- **Error Log** (Log Unhandled Rejection Error)
- **Ready Log** (Log when bot online)
- **Command Log** (Log command usage)
- **DM Log** (Log when someone send DM to Bot)
>You can also just use one Channel & one Webhook for everything but it will be really inconvenient.
5. One by one paste the webhook url in a web browser & copy the **ID** & the **TOKEN** and paste it in the corresponding feilds in the `.env` file.
6. Setup the **MongoDB Database** as [instructed](https://github.com/night0721/cath.exe#mongo-db-setup) below.
7. Setup a **Spotify Application** as [instructed](https://github.com/night0721/cath.exe#spotify-setup) below.
8. Go back to the Discord Developer's Portal in the OAuth2 tab, Select `BOT` in the **Scopes Section** & Select `ADMINSTRATOR`from the **BOT PERMISSIONS** Section.
9. Copy the URL and by using the URL invite the bot to a server.
10. After this, you need to install all dependencies by using this command. This will takes a few minutes.
```cmd
npm i
```
11. Now, to start the bot use this command in the terminal.
```cmd
node .
```
# Additional Steps
## Mongo DB Setup
To use the Economy Commands, you need to Setup a MongoDB Database.
1. Create a Free [MongoDB Account](https://www.mongodb.com/cloud/atlas/register)
2. Click on the `Create a New Database`.
3. Selct the `CREATE` option in the **Shared** Teir.
4. Select a `Cloud Provider & Region` that is geographically closer to the average user that will use the bot. *This will effect the responce time of the bot.*
5. Then you can Name your Cluster, after that click on `Create Cluster`. *This should take a couple of minutes.*
6. Then click on `Database Access` from the sidebar & then click on `Add New Database User`.
7. Under the `Password - Authentication Method`. Enter a username & password. then click on `Add User`.
8. After that, click on `Network Access` from the sidebar & then click on `Add IP Address`. & click on the `Allow Access from Anywhere` Then click on `Confirm`.
9. now, Click on `Database` from the sidebar & then click on `Connect`.
10. Then on click on `Connect your Application`. & Copy the link.
11. The paste that link in the `MONGODB` feild in the `.env` file.
12. Now you need to modify that link,
- Replace `` with the password for the user that you created in **Step 7**.
- Replace `myFirstDatabase` with the name of the Database that you named in **Step 5**.
13. That's it.
## Spotify Setup
To use spotify urls to play music follow these steps.
1. Go to the [**Spotify's Developer Dashboard**](https://developer.spotify.com/dashboard/).
2. Click on **Create an app**.
3. Fill out the required info, then click on **CREATE**.
4. Copy the **Client ID** & paste it in the `SPOTIFY_ID` feild in the `.env` file.
5. Back in the Dashboard, Click on **SHOW CLIENT SECRET**
6. Copy the **Client Secret** & paste it in the `SPOTIFY_SECRET` feild in the `.env` file.
7. That's it.
# Support, Feature Request & Bug Reports
##
Support & Feature Request
Join the official [Support Server](https://discord.gg/SbQHChmGcp) on Discord & we will be happy to assist you.
To Request new features contact us on Discord using the support server.
##
Report Bugs
You can report bugs or issues by opening a issue in this repository. Alternatevely you can also contact us on Discord using the support server.
[ ](https://discord.gg/SR7TeNJG67)
CONTRIBUTORS
Contributions are always welcomed, but make sure to read [Contributing.md](/CONTRIBUTING.md) first.