Public Bot and Support Server!
Installation Guide ๐ฅ
โ Hosting Requirements
Click to expand
- nodejs version 16.6 or higher, I recommend the latest STABLE version
- python version 3.8 or higher, to install the database
enmap
(better-sqlite3) - A VPS would be advised, so you don't need to keep your PC/laptop/RasPi 24/7 online! Click here for a debian setup.
- Check out my recommended Host: BERO-HOST and use code
milrato
for cheap OP VPS (kvm) - Click here for a Direct Order Link
๐ค Bot Requirements
Click to expand
**NOTE:** It is suggested to use the [Sharded (&Clustered) version](https://github.com/Tomato6966/Multipurpose-discord-bot/tree/sharded_with_mongo), if you plan on using it for a VERIFIED BOT (on more then 2000 Servers!)- Download the Source Code
- Either by:
git clone https://github.com/Tomato6966/Multipurpose-discord-bot
- Or by downloading it as a zip from the releases tab or a branch.
- Either by:
๐ถ Music Requirements
Click to expand
To allow your Bot to play music, you need to connect it to a LavaLink station! There are many public ones out there for example lava.link An example for a public configuration will be listed down below.
- Make sure
Java 11
is installed on your system! - Download Lavalink.jar
- Here is a direct link: https://github.com/freyacodes/Lavalink/releases/download/3.4/Lavalink.jar
- If you are on linux do this:
wget https://github.com/freyacodes/Lavalink/releases/download/3.4/Lavalink.jar
(prep:apt-get install -y wget
)
- Download application.yml
- Download my example, it's the configuration for the lavalink.jar file!
- Now put application.yml and Lavalink.jar in the same folder and start it
- To start LavaLink type:
java -jar Lavalink.jar
- Make sure to keep your terminal Open!
- If you want to use something like
npm i -g pm2
to host it without keeping your terminal open type:pm2 start java -- -jar Lavalink.jar
- To start LavaLink type:
- The settings like password in application.yml and port must be provided in the
botconfig/config.json
of the Bot- If you used the default settings, than no adjustments are needed and it should look like this:
{ "clientsettings": { "nodes": [ { "host": "node1.roverdev.xyz", "port": 2333, "password": "discord.gg/roverdev" } ] } }
- You don't want to host your own LavaLink?
- Here is a list of many free-to-use LavaLink Servers!
- Or just use something like this:
{ "clientsettings": { "nodes": [ { "host": "node1.roverdev.xyz", "port": 2333, "password": "discord.gg/roverdev" } ] } }
๐ค Configuration and Starting
Click to expand
NOTE: You can do the exact same configuration inside of the example.env
file, just make sure to rename it to .env
or use environment variables!
- Check
๐ถ Music Requirements
that you started lavalink / use a valid public lavalink station. - Fill in all required data in
./botconfig/config.json
NOTE: If you're on replit.com, it is exposed to everyone!(use .env instead) - Fill in all required data in the
.json
files in./social_log/
(./social_log/streamconfig.json
&./social_log/twitter.json
), if you want the SOCIAL LOGS to work! (the keyauthToken
in streamconfig does not need to be filled in!) - You can adjust some settings in the other
./botconfig/*.json
Files, BUT PLEASE KEEP MY CREDITS & ADS! This is the only way on how my hard work is "revenued". - Now start the bot by opening a cmd line in that folder and typing:
node index.js
ornpm start
* If you don't want to keep the terminal open or if you're on linux, check out pm2 (and my tutorial) and type:pm2 start --name Bot_Name index.js
โ Where to get which Api-Key(s)
Click to expand
NOTE: You can do the exact same configuration inside of the example.env
file, just make sure to rename it to .env
or use environment variables!
./botconfig/config.json
token
you can get from: discord-Developersmemer_api
you can get from: Meme-Development DCspotify.clientSecret
you can get from: Spotify-Developerspotify.clientID
you can get from: Spotify-Developerfnbr
is a FNBR token, which you may get from FNBRO.co (needed for fnshop)fortnitetracker
is a FORTNITE TRACKER token, which you may get from fortnitetracker.com (needed for fnstats)
./social_log/streamconfig.json
twitch_clientID
you can get from: Twitch-Developer (developer-console)twitch_secret
you can get from: Twitch-Developer (developer-console)authToken
is not required to be filled in --> will be done automatically
./social_log/twitter.json
consumer_key
you can get from: twitter Developersconsumer_secret
you can get from: twitter Developersaccess_token
you can get from: twitter Developersaccess_token_secret
you can get from: twitter Developers