diff --git a/README.md b/README.md
index 3011aa3..5de9b73 100644
--- a/README.md
+++ b/README.md
@@ -38,11 +38,11 @@ Guava is a Discord music bot with support for multiple different music and video
Getting started is easy, simply invite Guava to your server and run `/help` to see what all Guava has to offer.
# Want to self-host?
-Guava is built on Python and requires a Lavalink node running release `v4` or higher with the LavaSrc plugin. If you would like to configure Guava and run it on your own, follow the steps below.
+Guava is built on Python and requires a Lavalink node running release `v4` or higher with the [LavaSrc](https://github.com/topi314/LavaSrc) and [youtube-source](https://github.com/lavalink-devs/youtube-source) plugins.
-*NOTE: For information on each configuration variable, look at the [Configuration](#configuration) section of this page.*
+If you would like to run your own version of Guava, continue to read the information below.
-*P.S. Some information on starting your own lavalink node can be found [here](#lavalink-information)*
+*NOTE: No matter which option you choose (Docker or bare metal) you will get a fatal error on first run due to missing the `config.yaml` file. A new config.yaml file will be created for you with the necessary fields for configuration. For information on each configuration field, see [Configuration](#configuration).*
## Docker
To run Guava in Docker, use the provided [docker-compose.yaml](docker-compose.yaml) file as a template for the container.
@@ -52,13 +52,11 @@ In addition to the Guava container, you must also create a Lavalink node however
## Bare metal
To run Guava on bare metal, follow the steps below.
-*NOTE: On first run you will likely get a critical warning in your console, don't worry, this is expected. It will automatically create a `config.ini` file for you in the root of the directory with all of the necessary configuration options.*
-
-1. Install Python and Pip
+1. Install Python 3 and Pip
2. Clone this repository
3. Install the requirements with `pip install -r requirements.txt`
4. Run the `code/bot.py` file
-5. Input information into the newly created config.ini file.
+5. Input information into the newly created config.yaml file.
6. Re-run the `code/bot.py` file.
# Configuration
@@ -67,31 +65,28 @@ Field | Description | Requirement
--- | --- | ---
TOKEN | The token for your bot. Create a bot at [discord.com/developers](https://discord.com/developers) | **REQUIRED**
BOT_COLOR | `HEX CODE`: Color that will be used for the color of message embeds | **REQUIRED**
-BOT_INVITE_LINK | `URL`: Discord Invite link for your bot (shown on the `help` command) | **REQUIRED**
-FEEDBACK_CHANNEL_ID | `CHANNEL ID`: Discord channel for feedback messages to be sent to | **OPTIONAL**
-BUG_CHANNEL_ID | `CHANNEL ID`: Discord channel for bug messages to be sent to | **OPTIONAL**
-SPOTIFY_CLIENT_ID | Client ID from Spotify Developer account | **REQUIRED**
-SPOTIFY_CLIENT_SECRET | Client Secret from Spotify Developer account | **REQUIRED**
-GENIUS_CLIENT_ID | Client ID from Genius API Dashboard | **OPTIONAL**
-GENIUS_CLIENT_SECRET | Client Secret from Genius API Dashboard | **OPTIONAL**
-OPENAI_API_KEY | API Key from OpenAI for autoplay recommendations | **REQUIRED**
+BOT_INVITE_LINK | `URL`: Discord Invite link for your bot (shown on the `help` command) | **OPTIONAL** - *Adds an "Invite Me" button to the /help message*
+FEEDBACK_CHANNEL_ID | `CHANNEL ID`: Discord channel for feedback messages to be sent to | **OPTIONAL** - *Used for feedback messages*
+BUG_CHANNEL_ID | `CHANNEL ID`: Discord channel for bug messages to be sent to | **OPTIONAL** - *Used for bug reporting*
+SPOTIFY_CLIENT_ID | `CLIENT ID`: ID from Spotify Developer account | **OPTIONAL** - *Used for Spotify support*
+SPOTIFY_CLIENT_SECRET | `CLIENT SECRET`: Secret string from Spotify Developer account | **OPTIONAL** - *Used for Sporify support*
+GENIUS_CLIENT_ID | `CLIENT ID`: ID from Genius API Dashboard | **OPTIONAL** - *Used for the /lyrics command*
+GENIUS_CLIENT_SECRET | `CLIENT SECRET`: Secret string from Genius API Dashboard | **OPTIONAL** - *Used for the /lyrics command*
+OPENAI_API_KEY | API Key from OpenAI for autoplay recommendations | **OPTIONAL** - *Used to support the /autoplay feature*
HOST | Host address for your Lavalink node | **REQUIRED**
PORT | Port for your Lavalink node | **REQUIRED**
PASSWORD | Password to authenticate into the Lavalink node | **REQUIRED**
-# Lavalink Information
+# Lavalink
-As previously state, a Lavalink node running at least `v4` with the LavaSrc plugin is required. Due to the plugin requirement, it is unlikely that you will be able to use a free/public Lavalink node.
+For instructions on setting up a Lavalink node on bare metal, look [here](https://lavalink.dev/getting-started/). Refer to the plugin repositories for support on configuring them.
-For instructions on setting up a Lavalink node on bare metal, look [here](https://lavalink.dev/getting-started/), and for instructions on the LavaSrc plugin, look [here](https://github.com/topi314/LavaSrc).
-
-*P.S. Only the Deezer/SoundCloud sources/search providers are needed.*
+*P.S. Only the Deezer/SoundCloud sources/search providers are needed in the LavaSrc plugin.*
-It is also highly recommended to setup IPv6 rotation in order to avoid blocks and other issues. There are helpful guides for this both [here](https://blog.arbjerg.dev/2020/3/tunnelbroker-with-lavalink) and [here](https://gist.github.com/Drapersniper/11fee08f91ea7174e0d8af12496f3443).
+After setting up your Lavalink node, it is highly recommended to configure IPv6 rotation with at least a /64 or /48 block. IPv6 rotation helps to relieve issues from getting rate limited/blocked from YouTube and other sources. There are helpful guides for setting this up which are available on GitHub, however, [this](https://github.com/Nansess/tunnelbroker-guide) is the one that I have used .
-An example of my personal `application.yml` file can be found [here](https://github.com/PacketParker/Guava/blob/main/application.yml.example).
+An example of my personal `application.yml` configuration file can be found [here](https://github.com/PacketParker/Guava/blob/main/application.yml.example).
-
If you have any questions, feel free to email at [contact@pkrm.dev](mailto:contact@pkrm.dev). Thank you for checking out Guava, and happy coding.