Self Hosting Ear Tensifier

Recently Youtube took down two massive Discord Bots, Rythm and Groovy. Both bots are no longer functioning due to a cease and desist letter from Google. There are a couple theories on why Youtube has taken down these bots. One theory is that Youtube did not want them profiting off playbacking Youtube content. Another theory is that Discord is currently experimenting with a feature called YouTube together which allows a group of people to watch a YouTube video in a call.

As a result of these series of events I've decided to create a self hosting guide for my music bot, Ear Tensifier. The bot has been open source but I've never added a self hosting guide since it was never designed to be a bot that anyone could run. However, now I feel it is necessary since commercial music bots are being taken down and people are scrambling to find new, working bots.

This self hosting guide assumes that you have some experience with creating and running Discord Bots. Also, please make sure you follow the license when self hosting the bot.


Requirements for Ear Tensifier to run:


Clone the repo on your machine

git clone

Navigate to the newly created EarTensifier folder and install the npm packages

npm install


Navigate to the .env.example file and rename it to .env. Then fill out the following credentials:

  1. Set the DISCORD_PREFIX key to the prefix you wish the bot to respond to.
  2. Set the DISCORD_ID key to your bot's ID.
  3. Set the DISCORD_TOKEN key to your bot's token.
  4. Set the MONGO_URL key to your monogdb's connection URL.
  5. Set the LAVALINK_HOST key to the IP address of the machine you're hosting the lavalink instance on.
  6. Set the LAVALINK_PORT key to the port the lavalink instance is being hosted on.
  7. Set the LAVALINK_PASSWORD key to the password located in the Lavalink application.yml file.
  8. Set the SPOTIFY_CLIENT_ID and SPOTIFY_CLIENT_SECRET key to the credentials of your Spotify app


To deploy the bot simply run:

npm start

If you installed and setup eveything correctly then the bot should output something like this:

[10/7/2021, 8:00:14 PM] > [Shard 1] Ready
[10/7/2021, 8:00:14 PM] > Ear Tensifier is online: 1 shards, 1 server and 1 member.
_____             _____              _  __ _ 
| ____|__ _ _ __  |_   _|__ _ __  ___(_)/ _(_) ___ _ __
|  _| / _` | '__|   | |/ _ \ '_ \/ __| | |_| |/ _ \ '__|
| |__| (_| | |      | |  __/ | | \__ \ |  _| |  __/ |
|_____\__,_|_|      |_|\___|_| |_|___/_|_| |_|\___|_|