Skip to content

Latest commit

 

History

History
30 lines (20 loc) · 2.27 KB

README.md

File metadata and controls

30 lines (20 loc) · 2.27 KB

Abertay HackSoc Gameathon Bot

This repository contains a discord bot for use in the Abertay 2021 Gameathon. Specifically it currently consists of points tracking for Hacksoc members competing in CTFs during the event; however, it can easily be expanded for other uses.

Usage

Clone the repository, install the requirements (pip3 install -r requirements.txt), make sure that the records directory is writeable by your current user, and add your token to a config/secret.json file. The bot can then be run with ./main.py. This bot was written and tested on Linux. It shouldn't be problematic to run it under Windows, but be aware that this is not how it was designed.

The bot will create an SQLite DB when run. Users can then register for various sites by DMing the bot with registration tokens. The bot will then track their scores until the event is over and the bot is stopped. Leaderboards are generated by the bot, however, you are also free to do as you wish with the SQLite DB from the event.

By default DBs are created in the records directory using the current date. This means that if you want to run more than one separate event in one calendar day, you will need to either move the original DB or change the configuration file (db -> path in config/config.json). If the database already exists (i.e. if the program is restarted on the same day it was deployed), it will link in with the previous database and continue operation as previously.

Configuration

All config files are stored in the config directory. These can be used to tweak most of the bot's operations without altering the code itself. Note: One configuration file: (config/secret.json) is missing. This file contains the bot token. It has the following structure:

{
	"TOKEN":"bot_token"
}

This will need added before the bot can be deployed.

Contributing

If you wish to contribute to the bot's development, please fork the repository and submit a PR with your changes. If you've made any changes to the code itself then please feel free to add a preferred name + socials into the config/contributors.json file.

Future Upgrades

  • Multi-language support
  • Switch to an activation module where an admin activates / deactivates the bot (rather than literally starting and stopping it)