diff --git a/README.md b/README.md index 078128f..791b645 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ SQLite (better-sqlite3, FTS5) · Docker Multi-Stage, deploybar als Portainer-Sta ## Inhalt * [Zwei Seiten, ein Bot](#zwei-seiten-ein-bot) -* [Funktionen](#funktionen) — [Inhalte](#inhalte--feeds) · [Community](#community) · [Moderation](#moderation--support) · [Server](#server--technik) · [Plattform](#plattform) +* [Funktionen](#funktionen) — [Inhalte](#inhalte--feeds) · [Community](#community) · [Moderation](#moderation--support) · [Gaming](#gaming) · [Server](#server--technik) · [Plattform](#plattform) * [Webinterface](#webinterface) * [Config-Seite](#config-seite-settings) * [Ersteinrichtung](#ersteinrichtung) @@ -96,12 +96,17 @@ auf nichts mehr: keine Posts, keine Hintergrund-Prüfungen. | 🪪 **Auto- & Sticky-Roles** | Start-Rolle für neue Member; Rollen werden bei Leave gesichert und bei Rejoin wiederhergestellt | | 🐛 **`/bug`** | Eingabefenster (was ist passiert, was war erwartet, wie nachstellen) → Gitea-Issue inkl. Screenshot-Upload; Issue geschlossen → DM an den Reporter | +### Gaming + +| Funktion | Was sie macht | +|---|---| +| 🎮 **Game-Server-Monitor** | DiscordGSM-Stil: pro Server ein Live-Embed (🟢/🔴, Spieler-Balken, Map, Version, Mod-Anzahl, Spieler-Liste, Knöpfe für Verbinden und Mod-Download, Ping); **alle Spiele, die gamedig kennt** — die Auswahl im Panel kommt aus der Bibliothek selbst, inklusive Standard-Port und Hinweis auf nötige Zugangs-Codes (Farming Simulator, Terraria) — plus FiveM + HTTP-Check; Down/Up-Alerts mit Ausfalldauer | +| 🚜 **LS — Höfe & Preise** | Für Farming-Simulator-Server: Besitzkarte auf dem Luftbild des Servers (Parzellen nach Hof eingefärbt, Fläche = Hektar, Fahrzeuge und Spieler live), Hof-Übersicht mit Hektar und Wert, Meldung bei Landkauf, dazu die Preiskurven übers Jahr mit „jetzt verkaufen oder warten". **Nicht möglich:** welche Frucht auf welchem Feld steht — das gibt der Feed nicht her (siehe [docs/ls-feed.md](docs/ls-feed.md)) | + ### Server & Technik | Funktion | Beschreibung | |---|---| -| 🎮 **Game-Server-Monitor** | DiscordGSM-Stil: pro Server ein Live-Embed (🟢/🔴, Spieler-Balken, Map, Version, Mod-Anzahl, Spieler-Liste, Knöpfe für Verbinden und Mod-Download, Ping); **alle Spiele, die gamedig kennt** — die Auswahl im Panel kommt aus der Bibliothek selbst, inklusive Standard-Port und Hinweis auf nötige Zugangs-Codes (Farming Simulator, Terraria) — plus FiveM + HTTP-Check; Down/Up-Alerts mit Ausfalldauer | -| 🚜 **LS — Höfe & Preise** | Für Farming-Simulator-Server: Besitzkarte auf dem Luftbild des Servers (Parzellen nach Hof eingefärbt, Fläche = Hektar, Fahrzeuge und Spieler live), Hof-Übersicht mit Hektar und Wert, Meldung bei Landkauf, dazu die Preiskurven übers Jahr mit „jetzt verkaufen oder warten". **Nicht möglich:** welche Frucht auf welchem Feld steht — das gibt der Feed nicht her (siehe [docs/ls-feed.md](docs/ls-feed.md)) | | 🚨 **Wächter** | Prüft eigene Dienste in einstellbarem Takt, DM-Alarm bei Ausfall + Entwarnung; speist die öffentliche Statusseite | | 💓 **Herzschlag** | Der Bot zeichnet sich selbst auf — im Dashboard steht neben der Laufzeit ein Erreichbarkeits-Balken über 7 Tage. Fehlende Stunden sind rot: dass nichts dasteht, *ist* die Aussage | | 🔊 **Temp-Voice** | „Join to Create": Hub-Kanal betreten → eigener Voice-Kanal mit Control-Panel (Umbenennen, Sperren, Limit, Löschen — nur für den Besitzer), löscht sich wenn leer | diff --git a/frontend/src/pages/Settings.jsx b/frontend/src/pages/Settings.jsx index f858aa5..3d1e63d 100644 --- a/frontend/src/pages/Settings.jsx +++ b/frontend/src/pages/Settings.jsx @@ -29,6 +29,10 @@ const TAB_SECTIONS = [ { id: 'auftritt', label: 'Auftritt' }, { id: 'inhalte', label: 'Inhalte' }, { id: 'community', label: 'Community' }, + // Getrennt von „Technik": dort geht es um den Bot selbst, hier um die + // Spiele-Server drumherum. Wer seinen LS-Server einträgt, sucht ihn nicht + // neben der Datenbank-Sicherung. + { id: 'gaming', label: 'Gaming' }, { id: 'technik', label: 'Technik' }, { id: 'zugang', label: 'Zugang' }, ]; @@ -66,8 +70,8 @@ const TABS = [ { id: 'bewerbungen', Icon: IconApplications, label: 'Bewerbungen', section: 'community', find: 'formular fragen bewerbung prüfen annehmen ablehnen' }, - { id: 'server', Icon: IconServer, label: 'Server', section: 'technik', - find: 'game server monitor fivem minecraft status spieler gamedig' }, + { id: 'server', Icon: IconGame, label: 'Game-Server', section: 'gaming', + find: 'game server monitor fivem minecraft ls landwirtschaft farming status spieler gamedig hof karte preise' }, { id: 'system', Icon: IconSystem, label: 'System', section: 'technik', find: 'backup gitea watchdog twitch youtube events sprachkanäle impressum datenschutz' }, diff --git a/src/modules.js b/src/modules.js index 69bebd6..5a4e22e 100644 --- a/src/modules.js +++ b/src/modules.js @@ -15,6 +15,10 @@ export const MODULE_GROUPS = [ { id: 'inhalte', label: 'Inhalte & Feeds' }, { id: 'community', label: 'Community' }, { id: 'moderation', label: 'Moderation & Support' }, + // Alles, was an einem Spiel hängt. Vorher stand der Game-Server-Monitor + // zwischen DB-Sicherung und Member-Gate — technisch verwandt, aber wer + // seinen Server einträgt, sucht ihn nicht unter „Technik". + { id: 'gaming', label: 'Gaming' }, { id: 'server', label: 'Server & Technik' }, ]; @@ -231,9 +235,9 @@ export const MODULES = [ ], }, - /* ── Server & Technik ─────────────────────────── */ + /* ── Gaming ──────────────────────────────────── */ { - id: 'server_monitor', group: 'server', name: 'Server-Monitor', + id: 'server_monitor', group: 'gaming', name: 'Game-Server-Monitor', desc: 'Live-Status der Game-Server mit Verlauf und Ausfall-Alarm.', tab: 'server', default: true, fields: [ @@ -243,7 +247,7 @@ export const MODULES = [ tool: { tab: 'server', label: 'Game-Server verwalten' }, }, { - id: 'ls_farm', group: 'server', name: 'LS — Höfe & Preise', + id: 'ls_farm', group: 'gaming', name: 'LS — Höfe & Preise', desc: 'Landwirtschafts-Simulator: Besitzkarte mit Höfen, Fahrzeugen und Spielern, ' + 'dazu die Preiskurven übers Jahr. Braucht einen LS-Server mit Zugangs-Code unter „Game-Server".', tab: 'server', setting: 'ls_farm_enabled',