Page cover

Basic Setup Guide

Ready to get started? Let's go!

Hosting Options

Several Ways to Start

There is no such thing as absolutely free hosting!

Either your information is the payment, or your feature set is extremely limited! Be careful for scams, obscure hosting plans, or sneaky payment systems and plans!

Self Hosting

If you're looking to host a tiny instance, or something that's not critical to keep online all the time, you're more than welcome to run it on your local machine!

VPS/KVM/VDS Systems

There's many services that host systems that you could use for this! Hostinger, DigitalOcean, Contabo, etc.! These are much more in depth due to you needing knowledge of how to manage the system.

Pterodactyl Panel

The most "plug and play" out of them all! This is the most popular option since this panel lets you do anything from Console Management, File Management, and more! Something like SparkedHost comes to mind!

Configuration

Getting Ready

This configuration happens in the common.json file stored at the root of the bot directory.

Don't worry about messing up.

If you make a mistake, the bot will let you know what's broken or missing!

Get your License!

All customers need to have a license! This is to allow your bot to communicate with our API and support neat features like global bans, Lavalink services, and some other things! Plus, it helps us protect our product.

If you need a license, open a ticket in our Support Server!

Without your license, your bot will not start!

You can use MultiBot's license in Athena!

Change your .json file format if necessary!

Pterodactyl can sometimes not play well with .json5 files, which is why we gave you the option to enable or disable the .json5 format!

Set your Bot Token!

For this, you'll have to look in the Discord Developer Portal!

For new bots, you need to create an Application, go to Bot, then press the Reset Token button to generate a new token.

For those with MultiBot or an older version of Athena, you can just copy over your current token into the new configuration file.

If you need help finding how to make one, I'll link that here!

Set your MongoDB URI!

This is what lets your bot save data! The process for that is here!

Set your Discord Bot ID!

Without this, your bot doesn't know which account to interface with.

You need to have Discord's Developer Mode enabled if you haven't yet! It's pretty simple to get it, just right click your bot user and 'Copy ID'.

Set your Discord Server ID!

This is the Server your bot is in! (Right-click your server icon to get it)

Make sure Developer Mode is false!

When enabled, this can lead to your bot not responding to certain commands! So set it to false

Set your server name!

This is for your bot's reference in regards to your server name in it's messages.

Set your server color!

This just makes your embeds correlate to the color you wanted to see the most, so choose whatever you want here.

Set your language!

This is the language the bot responds in on Discord.

  • English: en

  • German: de

  • Spanish: es

  • French: fr

  • Portugese: pt


After everything is done, it should look something similar to below!

{
    "general": {
        "license": "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
        "config_version": "2.0.0",
        "json5": false,
        "lang": "en"
    },
    "bot": {
        "mongodb_uri": "URI KEY HERE",
        "discord_bot_token": "BOT TOKEN HERE",
        "discord_bot_id": "BOT ID HERE",
        "discord_guild_id": "SERVER ID HERE",
        "server_name": "SERVER NAME HERE",
        "server_color": "YOUR FAVORITE COLOR IN HEX HERE"
    },
    "console": {
        "logs_include_date": true
    },
    "util": {
        "register_commands": true,
        "auto_restart": true,
        "auto_restart_every": "7d",
        "debug": false,
        "developer_mode": false
    }
}

Installing Dependencies

Pterodactyl Setup

Self-Host/Non-Pterodactyl Setup

Manual Installation

For Bot Persistence even after closing the CMD Prompt window:

Linux:

Just type in pm2 start index.js --name Athena snippet to keep your bot alive...

And use pm2 stop index.js --name Athena to turn it back off! Windows:

This script allows you to keep AthenaBot online even after restarts. This batch script was made by @.dodgeman (334154279029833728)

@echo off
chcp 65001 >nul
cls

REM CONFIGURATION FOR SCRIPT, SHOULD ONLY NEED TO CHANGE THIS SECTION, NOTHING BELOW.

REM This is set to the path wherever your bot resides.

set "ATHENA_PATH=C:\Users\myusername\Desktop\Athena Bot" 


REM NOTHING BELOW HERE SHOULD NEED CHANGING UNLESS YOU NEED TO TWEAK OR ADD SOMETHING ELSE. WORKS AS IS.


set "RESTARTED=0"

:START
cls
if %RESTARTED% equ 0 (
    ECHO.      ╔════════════════════════════════════════╗
    ECHO.      ║                                        ║
    ECHO.      ║      Starting Athena Discord Bot       ║
    ECHO.      ║                                        ║
    ECHO.      ╚════════════════════════════════════════╝
) else (
    ECHO.      ╔════════════════════════════════════════╗
    ECHO.      ║                                        ║
    ECHO.      ║     RE-Starting Athena Discord Bot     ║
    ECHO.      ║                                        ║
    ECHO.      ╚════════════════════════════════════════╝
)

ECHO.
ECHO.

cd /d "%ATHENA_PATH%"
echo Starting AthenaBot...
ping -n 2 127.0.0.1 >nul
node index.js

ping -n 4 127.0.0.1 >nul

if %errorlevel% equ 2 exit

set "RESTARTED=1"
goto START

Finalizing Setup

Last updated