1
0
Fork 0
mirror of https://gitlab.com/niansa/SomeBot.git synced 2025-03-06 20:48:26 +01:00

Add README.md

This commit is contained in:
niansa 2023-02-11 17:12:56 +00:00
parent fa6bc21f8a
commit e160fdda60

72
README.md Normal file
View file

@ -0,0 +1,72 @@
# KeineAhnung Bot
Der KeineAhnung Bot ist ein simpler Discord Bot mit der D++ Discord Library!
## Features
Der Bot ist komplett Modular und erlaubt das Erstellen von verschiedenen Konfigurationen fuer verschiedene Bot-Tokens. Libdpp erlaubt ausserdem Auto-Sharding und startet automatisch die richtige Anzahl an Shards.
### Module
* Captcha: Gibt Leuten eine bestimmte Rolle, wenn sie ein Captcha beantworten
* Embedmaker: Erstellt Benutzerdefinierte Embeds
* Fun: Ein paar unnoetige Spasskommandos
* Globalchat: verbindet Textkanaele auf verschiedenen Servern miteinander
* Info: Zeigt Informationen ueber den Bot, den Server und Benutzer an
* Lastseen: Trackt Benutzeraktivitaet und zeigt an, wann ein Benutzer zuletzt aktiv war
* Levels: Vergibt Levels mit benutzerdefinierter Geschwindigkeit und vergibt Rollen
* Management: Erlaubt, den Bot von einem Zentralen Discord Server zu verwalten (Bans, Globalchat Moderatoin, etc.)
* Ticket: Erlaubt das erstellen und verwalten von Support-Tickets und speichert Logs
## Konfiguration
Hier ist eine Beispielkonfiguration:
[
{
"id": "tuxi",
"management_guild_id": "1073679409623617556",
"token": "ODAyODYzNTU0MjY4NjI2OTY1<redacted>r7zrQOCRI",
"owner_id": "609486822715818000",
"privte": false
},
{
"id": "exxo",
"token": "MTA0ODk3NjA3MDA4NDQxMTM5Mg<redacted>sCvig8wEA",
"owner_id": "<redacted>",
"private": true,
"modules": ["Captcha", "Levels", "Info", "Globalchat", "Lastseen", "Ticket", "Embedmaker"]
}
]
Und hier eine Erklaerung fuer die verschiedenen Optionen:
{
"id": "<Name der Instanz, beliebig>",
"token": "<Bot Token>",
"owner_id": "<ID des Besitzers, optional>",
"management_guild_id": "<ID des Management Servers, fuer das "Management" Modul>",
"private": <Ob der Bot privat ist, also nur von dem Benutzer auf Servern hinzugefuegt werden wird>,
"modules_mode": "<Ob die folgende Modulliste eine Blacklist oder eine Whitelist ist (whitelist/blacklist), optional (Standard: whitelist)>",
"modules": "<Liste an Modulen, siehe modules_mode>",
"command_alias_mode", "<Welche Varianten der Kommando-Bezeichnungen verwendet werden (all/first/last), optional (Standard: all)>"
}
Die Konfiguration muss als `config.json` im CWD des Bots gespeichert werden.
## Building
Der Bot wird mit CMake gebuiled und benoetigt einige Submodules:
git submodule update --init --depth 1 --recursive
mkdir build
cd build
cmake ..
make -j$(nproc)
Das Executable wird unter `./KeineAhnung` erstellt.
## Hinweise
Das Executable benoetigt keine Argumente, aber wenn es Probleme mit den Slashcommands gibt (nach dem deaktivieren von Modulen), koennen sie mit `--reregister-commands` zurueckgesetzt werden.