Skip to content

Customizable soundboard bot for Discord, along other useful commands

License

Notifications You must be signed in to change notification settings

thibautbessone/DiscordBlueBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BlueBot - A Java-written Discord bot

BlueBot BlueBot
Join the support server :


You can add the bot to your server by clicking on this link

You can also contact me on Steam :

The API can be found here. However, the required dependencies for the bot are included in this repository.

BlueBot will provide useful features like :

  • Moderation & utility features
  • Ability to enable & disable features
  • Owner-only commands
  • Extensible & customizable soundboard
  • CleverBot integration (currently disabled)
  • GIFs search
  • Twitch alerts
  • Command prefix customization
  • Quick reactions, jokes & other stuff
  • Cyanide & Hapiness comics
  • More to come !

Getting started

To edit the code, just follow these steps :

  • Create your own app here.
  • Clone the project into your favorite IDE using GitHub's integration (if you're not downloading a release).
  • On your application page, get your application token
  • Open config.blue
  • Replace YOURTOKENHERE by your application token
  • Replace YOURIDHERE by your ID
  • Create a directory named soundboard in the bot's root folder. You will place your .mp3 files here.

Interface

  • Double click anywhere on the background to minimize
  • Click anywhere on the background to drag the window
  • Start buttons launches the bot, Stop button stops it
  • Edit button opens the config file in your default text editor
  • Quit button stops the bot (if running) and closes the window

Commands

BlueBot provides a lot of commands. Use !help to display the complete list of them.

By typing help after each command, you'll get information on how to use the command.

Example : by typing !ping help you'll get the following response :

The command ping pings the bot (to check if it's online). Usage : !ping

Hosting the bot

You can host your own instance of the bot. To do so, head over to the Releases page and download the latest one. To run BlueBot, you'll need Java 8 and OpenJFX. After installing them (Google is your friend, it depends on your OS), you'll be ready to go.

If you are using the bot on several servers, in order to have a dedicated soundboard per server, you'll have to :

  • Enable Discord Developer mode (in the app settings, go to Appearance -> Advanced -> Toggle Developer mode on), then right click on your server and click on Copy ID.
  • Inside the soundboard folder, create a folder named like the server ID (for example, if one of the server has 264445054966991498 as ID, you want to name your folder 264445054966991498)
  • Drop your .mp3 files inside this folder. These sounds will only be available on this particular server.

To toggle between the general soundboard and the dedicated one, remember to use the !enable and !disable commands.

Running BlueBot on a headless device (VPS, Raspberry ...)

First, install Java with OpenJDK & OpenJFX:

  • Install OpenJDK (ex. Debian : sudo apt-get install openjdk-11-jdk)
  • Install OpenJFX (ex Debian : sudo apt-get install openjfx)

Since BlueBot is using JavaFX for the GUI, you'll need to install a display emulator to run the app. I personally use Xvfb

  • Install Xvfb (ex. Debian : sudo apt-get install xvfb)
  • Run Xvfb :1 & to start an emulated display in the background
  • Run export DISPLAY=:1 to set it as main display
  • Run the bot with java --module-path /usr/share/openjfx/lib --add-modules javafx.controls -jar BlueBot.jar cmd &

License

This project is released under the MIT License.