caca
  • C++ 91.3%
  • CMake 8.7%
Find a file
2026-04-29 16:57:57 +02:00
external first commit 2026-04-13 01:20:00 +02:00
profiledata New profile "Mencho", pfp and banner added. 2026-04-29 16:57:57 +02:00
src Added shiny catchphrases 2026-04-29 14:42:31 +02:00
.clangd first commit 2026-04-13 01:20:00 +02:00
.gitignore ricar should play tsukihime 2026-04-13 13:05:29 +02:00
.gitmodules first commit 2026-04-13 01:20:00 +02:00
CMakeLists.txt fix ubuntu building, added the diddler™ 2026-04-26 23:01:58 +02:00
config.example.json add basic database stuffs 2026-04-19 21:09:58 +02:00
config.schema.json add basic database stuffs 2026-04-19 21:09:58 +02:00
README.md add basic database stuffs 2026-04-19 21:09:58 +02:00

Robert Kyle

Build Instructions

Clone the repository (including submodules with --recursive).
Ensure you have a C++ compiler like gcc or clang installed.
Ensure that you have a recent build of cmake installed.
Run:

cmake -S . -B build

This will create the build files. To specify using clang over gcc, first run:

export CXX=clang++
export CC=clang

To use a build system like ninja over makefiles, add -G Ninja to the end of the cmake command.

Then run make -j$(nproc) in the created build directory (or ninja -j $(nproc) if you specified Ninja).

The bot will be the rkylebot executable.

To authenticate the bot, copy the config.example.json file to config.json, then place the bot token in the token property and the sqlite file location in databasePath (for example ./bot.db). Finally ensure the config.json file is in the directory where the rkylebot command gets executed (not the directory where the binary is found).

For archlinux, ensure that you have extra/nlohmann-json installed as it is a nessecary library for the bot.

Text command system

Commands are message-based (e.g. !tsukihime) and are registered through src/commands/register_commands.cpp. Each command lives in its own src/commands/*_command.cpp file. Commands register with a display name plus aliases (triggers), so help systems can list one name per command while still supporting multiple trigger words.