A Discord bot designed to assist with DKP (Dragon Kill Points) tracking for World of Warcraft: Wrath of the Lich King (3.3.5) raids. It reads DKP data from LUA files generated by the QDKP_V2 addon and offers two useful commands for tracking points and distributing loot. You can download the addon here.
- Displays the current DKP of raiders;
- Shows loot won in ICC25 and RS25 raids, along with DKP spent;
- Customizable settings via the config.json file;
- Standalone executable available.
This project is licensed under the GNU GPLv3. See the LICENSE file for details.
The bot must be configured locally, as it requires files generated by the QDKP_V2 addon. To use this bot, you first need to obtain a Discord bot token, as explained in step 1.
Note: This guide has been tested on Windows 10, and the instructions assume you're using Windows. If you're using a different operating system, some steps may differ.
- Go to the Discord Developer Portal;
- Log in with your discord credentials;
- Click "New Application", give it a name and click "Create";
- (Optional) Add an image to the bot;
- Copy your Discord bot token. If the token is not displayed, go to the "Bot" tab, and under the "Token" section, click "Reset Token" and enter your password. A new token will appear—copy it and store it somewhere safe.
Do NOT share your bot token! Each user must generate its own.
- Ensure you have at least "Manage Server" permission on the server where you want to add the bot;
- In the "Bot" tab, enable "MESSAGE CONTENT INTENT";
- In the "OAuth2" tab, scroll down to the "OAuth2 URL Generator" box and select the "bot" scope;
- Scroll down to "BOT PERMISSIONS" and enable the "Send Messages" permission;
- Scroll down to find "INTEGRATION TYPE" and "GENERATED URL". Make sure the integration type is set to "Guild Install", then copy the URL and paste it into your web browser.
- When you click "Continue to Discord", a window should appear in your Discord app;
- Select "Add to Server", then choose the server where you want to add the bot. (Note: You must have at least "Manage Server" permission for the server to appear in the list.)
- Authorize the permission, and voilà! The bot is now in your server;
- You should now be able to see the bot as a member of your server.
The bot to run is going to need:
- The token you previously copied;
- The path to a file generated by the addon;
- The name of the character that started the DKP session;
- The name of the server and guild.
The first two items (token and path) are sensible and should not be shared under any circumstances. To prevent accidental sharing, the path to the file containing this information must be defined in an environment variable.
- Move the file .env to any location of your choice and copy the absolute path;
- Edit the file with all the information needed (TOKEN and path to QDKP_V2.lua file).
- Open the Start Menu (Windows key) and search for "Envionment Variables" (or its equivalent in your system language);
- When it appears, click "Edit the system environment variables";
- Select the "Advance" tab and click on "Environmental Variables...";
- Click "New" under User variables;
- Define the variable name and it's value. The variable name must be "DKPBOT_CONFIG_PATH". For the value, insert the path to the .env file;
- Click OK.
- Open Windows PowerShell;
- Type and execute the following command
$env:DKPBOT_CONFIG_PATH; - If the path you configured does not appear, double-check that the variable was saved correctly and that both the name and path were set properly. If everything seems correct, restart your computer.
- Download the ZIP file containing the source code and extract it to a location of your choice;
- Simply execute (double-click) the executable named "bot.exe" in the "dist" folder;
- If everything was done correctly until now the bot should appear as online in the server.
Below is a brief explanation of the purpose of each configuration variable:
- prefix: Defines the character that must be used at the beginning of commands;
- server, guild and dkp_master: These values must match the character you used to back up the data. The dkp_master is the character that opened the dkp session;
- icc25_session_name and rs25_session_name: these should match the session names. The default names are set by the addon, so there's no need to change them unless you manually rename the session;
- wow_data: You can change it, but keep in mind that different websites may have different URL structures, which could cause issues.
- ignore_list: By default, the bot tracks all players who have earned DKP at least once (i.e., total DKP is not 0). However, if a player becomes inactive, their points will still be displayed. This ignore list allows you to exclude inactive players or those who no longer raid.
| Commands | 1st Argument | 2nd Argument | Purpose |
|---|---|---|---|
| !roster | NA | NA | Lists players current DKP |
| !loot | icc25 / rs25 | YYYY-MM-DD | Lists loot won in a specific raid. If the second argument (date) is not specified, it returns the most recent raid. The first argument is mandatory |
The commands rely on a file generated by the QDKP_V2 addon. This file is updated only when the player logs out of the game.
- The path depends on the account username. This means the bot can only read data from a single account. If you raid with characters from multiple accounts, you must update the path to QDKP_V2.lua accordingly.

















