Skip to content

Commit 043f3da

Browse files
committed
Localize docs to English and clarify setup
Translate and clean up Discord multibot documentation. Changes include: - configuration.md: translated headings and examples to English, clarified disabling a bot, database section and points system configuration example. - getting-started.md: fully translated command/event/minigames sections to English, clarified feedback channel behavior, updated points system table and reward tiers, noted /8ball exclusion, and converted file tree comments to English (added .gitignore to tree). - installation.md: translated installation and systemd instructions to English, clarified environment variable setup, testing, service commands, and expanded security notes (never commit .env, /backup_database use of os.system, systemd user privileges). General: documentation wording, tables and examples updated for clarity and consistency; no functional code changes.
1 parent b105d3a commit 043f3da

3 files changed

Lines changed: 130 additions & 121 deletions

File tree

discord/discord_multibot/configuration.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -29,28 +29,28 @@ UPDATE_NOTIFY_ROLE_ID=your_update_notify_role_id_here
2929
GIVEAWAY_NOTIFY_ROLE_ID=your_giveaway_notify_role_id_here
3030
TEAM_ROLE_ID=your_team_role_id_here
3131

32-
# ─── Datenbank (für /backup_database) ────────────────────────────────────────
32+
# ─── Database (for /backup_database) ────────────────────────────────────────
3333
DB_HOST=your_db_host_here
3434
DB_USER=your_db_user_here
3535
DB_PASS='your_db_pass_here'
3636
DB_NAME=your_db_name_here
3737
```
3838

39-
### Einzelnen Bot deaktivieren
39+
### Disable a Bot
4040

41-
Token in `.env` leer lassen – der Bot wird beim Start automatisch übersprungen:
41+
Leave the token empty in `.env` — the bot will be automatically skipped on startup:
4242

4343
```bash
44-
# Beispiel: Minigames Bot deaktivieren
44+
# Example: disable the Minigames Bot
4545
MINIGAMES_BOT_TOKEN=
4646
```
4747

4848
---
4949

50-
### Punktesystem konfigurieren
50+
### Configure the Points System
5151

52-
Alle Punktwerte und Belohnungen befinden sich in `bots/minigames/points_config.json`.
53-
Rollen-IDs für automatische Rollenvergabe dort eintragen:
52+
All point values and rewards are defined in `bots/minigames/points_config.json`.
53+
To enable automatic role assignment, add the Discord role ID:
5454

5555
```json
5656
{ "points": 1500, "description": "🥈 Silver Player", "role_id": 123456789 }

discord/discord_multibot/getting-started.md

Lines changed: 103 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -6,81 +6,87 @@ sidebar_position: 1
66

77
# Discord Multi Bot
88

9-
A modern, self-hosted Discord multi bot built on **Discord.py**, full feature set out of the box.
9+
A modern, self-hosted Discord multi bot built on **Discord.py**, full feature set out of the box for the MSK Scripts Discord server.
10+
All bots run in a single process, each bot stays in its own module for clarity and maintainability.
1011

1112
---
1213

1314
## ✨ Features
1415

1516
### Commands Bot
1617

17-
| Command | Beschreibung | Rollen |
18-
| ------------------ | --------------------------------------------- | --------------------------- |
19-
| `/ping` | Bot-Latenz anzeigen | Alle |
20-
| `/userinfo` | Infos über einen User (inkl. Minigame-Punkte) | Alle |
21-
| `/flachwitz` | Zufälliger Flachwitz | Alle |
22-
| `/rg` | Zahl raten | Alle |
23-
| `/script_guides` | Support-Guides für MSK-Scripts | Alle |
24-
| `/clear` | Nachrichten löschen (max. 100) | Team |
25-
| `/random` | Geheimzahl für Ratespiel setzen | Team |
26-
| `/add_flachwitz` | Flachwitz hinzufügen | Team |
27-
| `/send_message` | Nachricht über Modal senden | Founder, Manager |
28-
| `/send_embed` | Embed über Modal senden | Founder, Manager |
29-
| `/information` | Information-Embed senden | Founder, Manager |
30-
| `/rules` | Regelwerk senden | Founder, Manager |
31-
| `/backup_database` | MySQL-Backup erstellen | Founder |
18+
| Command | Description | Roles |
19+
| ------------------ | --------------------------------------- | ---------------- |
20+
| `/ping` | Show bot latency | Everyone |
21+
| `/userinfo` | User info including minigame points | Everyone |
22+
| `/flachwitz` | Random German flat joke | Everyone |
23+
| `/rg` | Guess the secret number | Everyone |
24+
| `/script_guides` | Support guides for MSK scripts | Everyone |
25+
| `/clear` | Delete messages (max. 100) | Team |
26+
| `/random` | Set secret number for the guessing game | Team |
27+
| `/add_flachwitz` | Add a new flat joke | Team |
28+
| `/send_message` | Send a message via modal | Founder, Manager |
29+
| `/send_embed` | Send an embed via modal | Founder, Manager |
30+
| `/information` | Post the information embed | Founder, Manager |
31+
| `/rules` | Post the rules embed | Founder, Manager |
32+
| `/backup_database` | Create a MySQL database backup | Founder |
3233

3334
---
3435

3536
### Events Bot
3637

37-
**Geloggte Events (alle als farbige Embeds mit Timestamp):**
38+
**Logged events (all as colored embeds with timestamp):**
3839

39-
| Kategorie | Events |
40-
| ---------- | ---------------------------------------------------------------------------------------------------- |
41-
| 👤 Member | Join, Leave (inkl. Kick-Erkennung), Ban, Unban, Username/Nickname-Änderung, Rollen vergeben/entzogen |
42-
| 💬 Messages | Gelöscht (inkl. Anhänge & Löscher), Bulk-Delete, Bearbeitet (Vorher/Nachher + Jump-Link) |
43-
| 📁 Channels | Erstellt, Gelöscht, Umbenannt, Topic/Slowmode/NSFW geändert |
44-
| 🔑 Roles | Erstellt, Gelöscht, Umbenannt, Farbe/Berechtigungen/Mentionable geändert |
45-
| 🔊 Voice | Joined, Left, Gewechselt |
46-
| 🔗 Invites | Erstellt (mit Code, Channel, Ablaufdatum), Gelöscht |
40+
| Category | Events |
41+
| ---------- | --------------------------------------------------------------------------------------------- |
42+
| 👤 Member | Join, Leave (incl. kick detection), Ban, Unban, Username/Nickname change, Roles added/removed |
43+
| 💬 Messages | Deleted (incl. attachments & who deleted), Bulk delete, Edited (before/after + jump link) |
44+
| 📁 Channels | Created, Deleted, Renamed, Topic/Slowmode/NSFW changed |
45+
| 🔑 Roles | Created, Deleted, Renamed, Color/Permissions/Mentionable changed |
46+
| 🔊 Voice | Joined, Left, Switched channel |
47+
| 🔗 Invites | Created (with code, channel, expiry), Deleted |
4748

48-
**Context-Menu-Commands (Rechtsklick auf Nachricht):**
49+
**Context menu commands (right-click on a message):**
4950

50-
| Command | Beschreibung | Rollen |
51-
| ---------------- | -------------------------------- | ---------------- |
52-
| Comment Feedback | Kommentar zu Feedback hinzufügen | Founder, Manager |
53-
| Answer a Message | Auf eine Nachricht antworten | Founder, Manager |
54-
| Edit Message | Nachricht des Bots bearbeiten | Founder, Manager |
55-
| Edit Embed | Embed des Bots bearbeiten | Founder, Manager |
51+
| Command | Description | Roles |
52+
| ---------------- | --------------------------------------------------------------------- | ---------------- |
53+
| Comment Feedback | Add a comment to a feedback embed. The original author receives a DM. | Founder, Manager |
54+
| Answer a Message | Reply to a message | Founder, Manager |
55+
| Edit Message | Edit a bot message | Founder, Manager |
56+
| Edit Embed | Edit a bot embed | Founder, Manager |
57+
58+
**Feedback channel behavior:**
59+
- Messages posted in the feedback channel are automatically converted into embeds.
60+
- When a team member comments on feedback via "Comment Feedback", the original author receives a **DM** containing the comment text and who wrote it.
61+
- If the user has DMs disabled, the comment is still saved in the embed — only the DM is skipped.
5662

5763
---
5864

5965
### Minigames Bot
6066

61-
Alle Spiele (außer `/8ball`) sind in das **Punktesystem** integriert.
62-
Mit `/points` können User ihren Stand und Fortschritt zu Belohnungen einsehen.
67+
All games (except `/8ball`) are integrated into the **points system**.
68+
Use `/points` to check your current score and progress toward rewards.
6369

6470
#### Commands
6571

66-
| Command | Beschreibung |
67-
| ------------ | ---------------------------------------------------- |
68-
| `/tictactoe` | TicTacToe gegen den Bot (Easy / Medium / Hard) |
69-
| `/8ball` | Magic 8-Ball – Ja/Nein-Fragen |
70-
| `/dice` | Würfeln (d4, d6, d8, d10, d12, d20, d100) |
71-
| `/flipcoin` | Münze werfen (Heads / Tails) |
72-
| `/rps` | Rock Paper Scissors |
73-
| `/slots` | Einarmiger Bandit mit Animation |
74-
| `/trivia` | Multiple-Choice Quiz (OpenTrivia DB + Fallback-Bank) |
75-
| `/hangman` | Galgenmännchen mit ASCII-Art |
76-
| `/connect4` | Vier Gewinnt gegen den Bot |
77-
| `/wordle` | 5-Buchstaben-Wort in 6 Versuchen erraten |
78-
| `/blackjack` | Blackjack mit Hit / Stand / Double Down |
79-
| `/points` | Punktestand & Fortschrittsbalken anzeigen |
80-
81-
#### Punktesystem
82-
83-
| Spiel | Punkte |
72+
| Command | Description |
73+
| ------------ | ----------------------------------------------------- |
74+
| `/tictactoe` | TicTacToe vs bot (Easy / Medium / Hard) |
75+
| `/8ball` | Magic 8-Ball – yes/no questions |
76+
| `/dice` | Roll dice (d4, d6, d8, d10, d12, d20, d100) |
77+
| `/flipcoin` | Flip a coin (Heads / Tails) |
78+
| `/rps` | Rock Paper Scissors |
79+
| `/slots` | Slot machine with animation |
80+
| `/trivia` | Multiple choice quiz (OpenTrivia DB + local fallback) |
81+
| `/hangman` | Hangman with ASCII art |
82+
| `/connect4` | Connect Four vs bot |
83+
| `/wordle` | Guess the 5-letter word in 6 tries |
84+
| `/blackjack` | Blackjack with Hit / Stand / Double Down |
85+
| `/points` | Show your points and reward progress |
86+
87+
#### Points System
88+
89+
| Game | Points |
8490
| --------- | ---------------------------------------------------------------------- |
8591
| TicTacToe | Easy: Win +5 / Lose -2 / Draw +1 · Medium: +10/-4/+2 · Hard: +20/-5/+5 |
8692
| Flipcoin | Win +3 / Lose -1 |
@@ -92,73 +98,76 @@ Mit `/points` können User ihren Stand und Fortschritt zu Belohnungen einsehen.
9298
| Wordle | 1 try +50 → 6 tries +5 / Lose -5 |
9399
| Blackjack | Win +15 / Blackjack +25 / Lose -5 / Draw +0 |
94100

95-
#### Belohnungsstufen
101+
> `/8ball` is excluded from the points system.
102+
103+
#### Reward Tiers
96104

97-
| Stufe | Punkte | Belohnung |
98-
| ---------------- | ------ | --------- |
99-
| 🥉 Bronze Player | 500 | Rolle |
100-
| 🥈 Silver Player | 1.500 | Rolle |
101-
| 🥇 Gold Player | 4.000 | Rolle |
102-
| 💎 Diamond Player | 10.000 | Rolle |
105+
| Tier | Points | Reward |
106+
| ---------------- | ------ | -------------------------------------------- |
107+
| 🥉 Bronze Player | 500 | Role |
108+
| 🥈 Silver Player | 1,500 | Role + 1 free encrypted script from the shop |
109+
| 🥇 Gold Player | 4,000 | Role |
110+
| 💎 Diamond Player | 10,000 | Role + 1 free source script from the shop |
103111

104-
> Belohnungen und Punktwerte können in `bots/minigames/points_config.json` angepasst werden.
105-
> Rollen-IDs werden dort ebenfalls konfiguriert – nach Änderungen Bot neu starten.
112+
> Point values and rewards can be adjusted in `bots/minigames/points_config.json`.
113+
> Add Discord role IDs there to enable automatic role assignment — restart the bot after changes.
106114
107115
---
108116

109117
## 📁 Project Structure
110118

111119
```
112120
discord_multibot/
113-
├── main.py # Einstiegspunkt – startet alle Bots parallel
114-
├── .env # Tokens & IDs (nicht committen!)
115-
├── .env.example # Vorlage für .env
121+
├── main.py # Entry point – starts all bots in parallel
122+
├── .env # Tokens & IDs (never commit this!)
123+
├── .env.example # Template for .env
124+
├── .gitignore
116125
├── requirements.txt
117-
├── multibot.service # systemd-Unit
118-
├── multibot.log # Log-Datei (wird automatisch erstellt)
126+
├── multibot.service # systemd unit file
127+
├── multibot.log # Log file (created automatically)
119128
120-
├── data/ # Persistente Daten (automatisch erstellt)
121-
│ ├── flachwitze.json # Flachwitz-Datenbank
122-
│ └── points.json # Punkte aller User
129+
├── data/ # Persistent data (created automatically)
130+
│ ├── flachwitze.json # Joke database
131+
│ └── points.json # Minigame points for all users
123132
124-
├── core/ # Geteilte Komponenten
125-
│ ├── config.py # Alle Einstellungen aus .env
126-
│ ├── utils.py # Embed-Builder, JSON-Helfer, BaseModal
127-
│ └── points_manager.py # Punkte lesen/schreiben, Belohnungen vergeben
133+
├── core/ # Shared components used by all bots
134+
│ ├── config.py # All settings loaded from .env
135+
│ ├── utils.py # Embed builder, JSON helpers, BaseModal
136+
│ └── points_manager.py # Read/write points, handle reward unlocks
128137
129138
└── bots/
130-
├── commands/ # Haupt-Slash-Command-Bot
139+
├── commands/ # Main slash command bot
131140
│ ├── bot.py
132141
│ └── cogs/
133142
│ ├── admin.py # /backup_database, /send_message, /send_embed
134-
│ ├── community.py # /rules, /information + persistente Views
143+
│ ├── community.py # /rules, /information + persistent views
135144
│ ├── minigames.py # /random, /rg, /flachwitz, /add_flachwitz
136145
│ ├── support.py # /script_guides
137-
│ └── utility.py # /ping, /userinfo (inkl. Punkte), /clear
146+
│ └── utility.py # /ping, /userinfo (incl. points), /clear
138147
139-
├── events/ # Event-Logging-Bot
148+
├── events/ # Event logging bot
140149
│ ├── bot.py
141150
│ └── cogs/
142-
│ ├── logging_cog.py # Alle Guild-Events als farbige Embeds
143-
│ ├── message_handler.py # on_message, Feedback-Channel
144-
│ └── context_menus.py # Comment Feedback, Answer/Edit Message, Edit Embed
151+
│ ├── logging_cog.py # All guild events as colored embeds
152+
│ ├── message_handler.py # on_message, feedback channel handling
153+
│ └── context_menus.py # Comment Feedback (+ DM), Answer/Edit Message, Edit Embed
145154
146-
└── minigames/ # Minigames-Bot
155+
└── minigames/ # Minigames bot
147156
├── bot.py
148-
├── points_config.json # Punktwerte & Belohnungen (editierbar)
157+
├── points_config.json # Point values & rewards (user-editable)
149158
└── cogs/
150-
├── tictactoe.py # /tictactoe – Easy / Medium / Hard KI
151-
├── eightball.py # /8ball – Magic 8-Ball
152-
├── dice.py # /dice – Würfeln (d4–d100)
153-
├── flipcoin.py # /flipcoin – Münze werfen
154-
├── rps.py # /rps – Rock Paper Scissors
155-
├── slots.py # /slots – Einarmiger Bandit
156-
├── trivia.py # /trivia – Multiple-Choice Quiz
157-
├── hangman.py # /hangman – Galgenmännchen
158-
├── connect4.py # /connect4 – Vier Gewinnt
159-
├── wordle.py # /wordle – 5-Buchstaben-Wort erraten
160-
├── blackjack.py # /blackjack – Blackjack mit Double Down
161-
└── points.py # /points – Punktestand & Fortschritt
159+
├── tictactoe.py # /tictactoe – Easy / Medium / Hard AI
160+
├── eightball.py # /8ball – Magic 8-Ball
161+
├── dice.py # /dice – Roll dice (d4–d100)
162+
├── flipcoin.py # /flipcoin – Flip a coin
163+
├── rps.py # /rps – Rock Paper Scissors
164+
├── slots.py # /slots – Slot machine with animation
165+
├── trivia.py # /trivia – Multiple choice quiz
166+
├── hangman.py # /hangman – Hangman with ASCII art
167+
├── connect4.py # /connect4 – Connect Four vs bot
168+
├── wordle.py # /wordle – Guess the 5-letter word
169+
├── blackjack.py # /blackjack – Blackjack with Double Down
170+
└── points.py # /points – Show points & reward progress
162171
```
163172

164173
---

0 commit comments

Comments
 (0)