The Ochulus is a simple personal discord bot used for tracking games completed during a 100 Game Challenge.
Requirements
Software
- Node.js (version v21.2.0 or later)
- npm (version 10.2.3 or later)
API Keys
- Discord Developer Application
- IGDB Developer Application
How to deploy
- Create accounts and install software
- Create
.envusing.env.template- Populate
discordClientId,discordGuildIdanddiscordTokenwith your Discord Developer Application details. - Populate
igdbClientIdandigdbClientSecretwith your IGDB Developer Application details.
- Populate
- Run
npm installto install Node Packages - Run
node .\dbInit.jsto create database. - Run
node .\deploy-commands.jsto deploy commands to your guild - Run
node .\index.jsto run the bot.
Commands
A list of current commands that can be accessed by all users.
/beatgame
Log a beat game towards the 100 Game Challenge.
Parameters:
Note: One parameter is required.
- Required
gamename- The name of the game.gameid- The IGDB game ID.
/beatlist
Show a list of games the user has beaten.
Parameters:
- Optional
user- The username of a user to check.
/deletegame
Deletes a game from the users beaten games.
Parameters:
Note: If no parameter is supplied, the latest beat game is deleted.
- Optional
beatgamenumber- The number of the beat game entry to delete.
/gamedetails
Get the details of a game from the IGDB database.
Parameters:
Note: Only one parameter is required.
- Required
gamename- The name of the game.gameid- The IGDB game ID.
/info
Get info on the bot.
/leaderboard
Shows the leaderboard for the 100 Game Challenge.
/och
Responds "och".
/recentbeat
Get the most recent game a given user has beaten.
Parameters:
- Optional
user- The username of a user to check.
/register
Manually registers the user into the 100 Games Challenge.
/searchgames
Searches the IGDB database for a list of matching games.
Parameters:
- Required
gamename- The name of the game.
