Skip to content
backblue edited this page Aug 31, 2025 · 8 revisions

Set up this bot to run on your own is dependent on the version.

Latest

Compile the executable yourself. Requires Java 21

  1. Create your bot, and get it's token from here in discord's developer portal and keep record of the token.
  2. Clone the repository and navigate to the root directory of the project. Use mvn clean compile package to build an executable.
  3. Move your executable jar to the directory of your choice (an empty is preferred).
  4. Create a new folder with name data in root directory. Copy-paste rulebook.json, modules.json, settings.json and tasks.json into that directory, and configure them as you wish.
    It is highly recommended settings.json be configurated before you move onto the next step
  5. Set up an SQL database with userinfo with the following columns:
id (integer)
cacheUsername (string)
lastRefresh (integer)
lastProfileScan (integer)
lastAvatarURL (string)
lastBannerURL (string)
lastCustomStatus (string)
profilePoints (integer)
  1. Create a new file: data/keys.properties and paste the following into it, then configure:
TOKEN=
AZURE_SAFETY_ENDPOINT=
AZURE_SAFETY_KEY=
JDBC=
BSKY_DID_TO_FETCH=
BSKY_USER=
BSKY_PASSWORD=
BSKY_REFRESH_MINS=
#BSKY_FOOTER_TEXT=
#BSKY_FOOTER_ICON=

AZURE_SAFETY_ENDPOINT and AZURE_SAFETY_KEY is not required if module profileScanning/messageScanning is not enabled.
Any keys with the prefix BSKY_ is not required if module bSkyTracker is not enabled.

  1. If cache setting is enabled, create a folder named cache in folder data.

Create a new file bsky.json, and paste this into it: {"lastTimestamp":""}
Create a new file imageScan.json, and paste this into it: {}

  1. Optional: If you want to show off some "new features" when /uptime is ran, create a new file: data/news.txt, and any text in that file will be added to a non-inline field named "What's New"

v0.6.x

Compile the executable yourself. Requires Java 21

  1. Create your bot, and get it's token from here in discord's developer portal and keep record of the token.
  2. Clone the repository and navigate to the root directory of the project. Use mvn clean compile package to build an executable.
  3. Move your executable jar to the directory of your choice (an empty is preferred).
  4. Create a new folder with name data in root directory. Copy-paste modules.json, settings.json and tasks.json into that directory, and configure them as you wish.
    It is highly recommended settings.json be configurated before you move onto the next step
  5. Set up an SQL database with userinfo with the following columns:
id (integer)
cacheUsername (string)
lastRefresh (integer)
lastProfileScan (integer)
lastAvatarURL (string)
lastBannerURL (string)
lastCustomStatus (string)
profilePoints (integer)
  1. Create a new file: data/keys.properties and paste the following into it, then configure:
TOKEN=
AZURE_SAFETY_ENDPOINT=
AZURE_SAFETY_KEY=
JDBC=
BSKY_DID_TO_FETCH=
BSKY_USER=
BSKY_PASSWORD=
BSKY_REFRESH_MINS=
#BSKY_FOOTER_TEXT=
#BSKY_FOOTER_ICON=

AZURE_SAFETY_ENDPOINT and AZURE_SAFETY_KEY is not required if module profileScanning/messageScanning is not enabled.
Any keys with the prefix BSKY_ is not required if module bSkyTracker is not enabled.

  1. If cache setting is enabled, create a folder named cache in folder data.

Create a new file bsky.json, and paste this into it: {"lastTimestamp":""}
Create a new file imageScan.json, and paste this into it: {}

  1. Optional: If you want to show off some "new features" when /uptime is ran, create a new file: data/news.txt, and any text in that file will be added to a non-inline field named "What's New"

v0.5.x (and earlier)

Either compile the executable yourself, or download the JARs here. Requires Java 21

  1. Clone the repository and navigate to the root directory of the project. Then compile with mvn clean compile package.
  2. Move your executable jar to the directory of your choice (an empty is preferred).
  3. Create a new folder with name data, and copy-paste all the files from data into that directory and configure it how you like
  4. Set up an SQL database with userinfo with the following columns:
id (integer)
cacheUsername (string)
lastRefresh (integer)
lastProfileScan (integer)
lastAvatarURL (string)
lastBannerURL (string)
  1. Create your bot, and get it's token from here in discord's developer portal
  2. Create a new file: data/keys.properties and paste the following into it, and then run.
TOKEN=
AZURE_SAFETY_ENDPOINT=
AZURE_SAFETY_KEY=
JDBC=
GOOGLE_SAFE_BROWSING_KEY_ENDPOINT=
Clone this wiki locally