Twitchbot AI — Handbuch
Konfigurierbarer Twitch-Chat-Bot mit OpenAI-Anbindung, eigenen Commands, Timern, Persona-System und einem optionalen Dashboard für Moderation, Alerts, Loyalty und Minispiele.
Übersicht
Was der Bot mitbringt, in einem Blick.
KI-Chat
Antwortet selbstständig, immer wenn direkt angesprochen (@bot, Name am Satzanfang) und optional spontan mit einstellbarer Wahrscheinlichkeit.
Eigene Commands
Statisch oder KI-generiert, direkt im Dashboard angelegt — Aliase, Cooldowns, Kanal-Beschränkungen inklusive.
Gedächtnis
Merkt sich dauerhaft Fakten pro User — manuell (!remember) und automatisch aus dem Chatverlauf.
Sofort wirksam
Änderungen im Dashboard erreichen den Bot innerhalb weniger Sekunden — kein Neustart nötig.
Dashboard
Webdienst mit Login: Commands, Timer, Alerts, Loyalty, Minispiele, Moderation — pro Kanal.
Alerts & Overlays
Stream-Einblendungen für OBS bei Sub, Bits, Raid, Spende und mehr — Optik und Texte frei einstellbar.
Deine Rolle im DashboardSTREAMER
Das Dashboard ist der zweite, optionale Dienst des Bots — Login unter deiner Adresse, kanal-beschränkt auf das, was dir zugewiesen wurde.
Als Streamer siehst du ausschließlich den Tab Meine Kanäle mit seinen Unter-Reitern, jeweils nur für die dir zugewiesenen Kanäle — kein Zugriff auf Übersicht, OpenAI-Grundeinstellungen, User-Suche oder Benutzerverwaltung. Ein Admin weist dir Kanäle über Benutzer → Kanäle zu.
| Rolle | Sichtbar |
|---|---|
| ADMIN | alles, für alle Kanäle |
| STREAMER | alle Reiter unter „Meine Kanäle" — nur eigene Kanäle |
| MOD | nur Commands & Timer, Giveaways, Medien, Minispiele — nur eigene Kanäle |
reporter.interval_seconds, üblich 45 s). Ein gleichnamiger Eintrag aus der config.yaml hat immer Vorrang vor einem Dashboard-Eintrag.Commands & TimerSTREAMERMOD
Für deine zugewiesenen Kanäle legst du eigene Chat-Commands und Timer direkt im Browser an.
Command-Felder
| Feld | Bedeutung | Beispiel |
|---|---|---|
Name | Command-Wort ohne Präfix | discord → im Chat !discord |
Typ | static feste Antwort, ai KI-generierte Antwort | static |
Antwort (bei static) | fester Text; Platzhalter $user $args $channel $random.chatter | Unser Discord: https://discord.gg/beispiel |
Prompt (bei ai) | Anweisung an das Modell, wird mit der Persona kombiniert | Beantworte kurz und witzig: $args |
Aliase | weitere Namen, die denselben Command auslösen | disco, dc |
Cooldown (Sek.) | Sperrzeit, standardmäßig pro Kanal gezählt | 30 |
Pro User | Häkchen: Cooldown gilt je User statt je Kanal | an |
Nur Mods | nur Moderatoren + Broadcaster dürfen den Command nutzen | an |
Nur Admin | nur Broadcaster + Bot-Admins | aus |
Erlaubte User | Positivliste bestimmter Logins, unabhängig vom Mod-Status — z. B. für einen Editor | meineditorin |
Aktiv | Häkchen zum vorübergehenden Deaktivieren, ohne zu löschen | an |
Overlay-Einblendung | zusätzlich Bild/GIF/Video + Sound über eine Browserquelle abspielen (Dauer, Position, Animation, Bildgröße %, Ziel-Quelle) | Bild hype.gif, 4 s, Mitte, 60 % |
Sichtbar und bearbeitbar sind alle Commands des Kanals — auch die anderer zugewiesener User; die Spalte „angelegt von" zeigt den Ersteller.
Timer-Felder
| Feld | Bedeutung | Beispiel |
|---|---|---|
Name | eindeutiger Timer-Name | discord-hinweis |
Intervall (Min.) | Mindestabstand zwischen zwei Nachrichten | 30 |
Mind. Chat-Nachrichten | so viele echte Chatnachrichten müssen seit der letzten Timer-Nachricht gefallen sein | 20 |
Text(e) | eine feste Nachricht oder mehrere, die reihum rotieren | Folgt uns auf Discord: discord.gg/beispiel |
Als Ankündigung | Ausgabe über Twitchs offizielle /announce statt normaler Chatnachricht | an, Farbe purple |
Aktiv | Häkchen zum vorübergehenden Deaktivieren | an |
Typ: ai) muss dein Admin serverseitig freischalten (allow_ai_commands) — bewusst restriktiver Default, größere Angriffsfläche.Schritt für Schritt: eigenen Command anlegen
- Meine Kanäle → Commands & Timer öffnen Kanal oben auswählen, falls du mehrere betreust.
- „Neuer Command"
Namediscord,Typstatic. - Antwort eintragen
Unser Discord: https://discord.gg/beispielins FeldAntwort. - Zugriff einschränken (optional)
Cooldown15Sek. setzen, damit der Command nicht spammbar ist. - Speichern
Der Command erscheint sofort in der Liste; im Chat funktioniert
!discordbeim nächsten Bot-Sync (≤ 45 Sek.).
Schritt für Schritt: wiederkehrenden Timer anlegen
- Reiter Commands & Timer → Abschnitt Timer „Neuer Timer" klicken.
- Grunddaten
Namediscord-hinweis,Intervall30Min.,Mind. Chat-Nachrichten20. - Text festlegen
Folgt uns auf Discord: discord.gg/beispiel— optional mehrere Texte für Rotation hinzufügen. - Ausgabeart wählen
Häkchen „Als Ankündigung" für eine offizielle
/announce-Nachricht mit Farbe, sonst normale Chatnachricht. - Speichern Der Timer postet frühestens nach 30 Minuten — und erst, sobald seitdem 20 echte Chatnachrichten gefallen sind.
Chat-VerhaltenSTREAMER
Einstellungen, die sonst per !bot … im Chat gehen — jetzt per Klick. Jeder Block hat ein „hier verwalten"-Häkchen; ohne Häkchen gilt die zentrale Vorgabe deines Admins.
Spontane Antworten
| Feld | Bedeutung | Beispiel |
|---|---|---|
An/Aus | ob der Bot ungefragt mitreden darf | an |
Wahrscheinlichkeit | Chance pro Chatnachricht, von sich aus zu antworten (0–1) | 0.05 = 5 % |
Mindestpause (Sek.) | Abstand zwischen zwei spontanen Antworten | 90 |
Link-Schutz
| Feld | Bedeutung | Beispiel |
|---|---|---|
An/Aus | Nachrichten mit Links von normalen Usern löschen | an |
VIPs erlauben | VIPs dürfen trotzdem Links posten | an |
Erlaubte User | diese Logins dürfen immer Links posten | meinco_host |
Erlaubte Links | Muster mit * als Wildcard, die niemals gelöscht werden | clips.twitch.tv/*, youtube.com/watch* |
Moderatoren und der Broadcaster sind immer ausgenommen. Löschen braucht serverseitig den Twitch-Moderator-Status des Bots im Kanal.
Shoutout
| Feld | Bedeutung | Beispiel |
|---|---|---|
Auto-Shoutout nach Raid | shoutet automatisch, sobald ein Raid ankommt | an |
Mindest-Raider | ab so vielen Raidern greift der Auto-Shoutout | 3 |
!so <username> nutzt dieselbe Vorlage — mit Platzhaltern $display_name, $game (zuletzt gespielt), $url.
Clips
| Feld | Bedeutung | Beispiel |
|---|---|---|
Aktiv | eingebauten Clip-Command freischalten | an |
Command | Chat-Wort ohne Präfix | clip |
Nur Mods | nur Moderatoren/Broadcaster dürfen clippen | an |
Cooldown (Sek.) | Sperrzeit pro Kanal | 60 |
Ignorierliste
Beliebige Logins (z. B. andere Bots) für den Kanal ausschließen — sie bekommen keine KI-Antworten und keine Begrüßung.
Persona & BegrüßungSTREAMER
Persönlichkeit und Willkommensgruß deines Kanals, unabhängig von der zentralen Vorgabe.
Persona
| Feld | Bedeutung | Beispiel |
|---|---|---|
Name | Name, auf den der Bot zusätzlich hört | Nova |
Beschreibung | Freitext — der Kern der Persönlichkeit | Schlagfertiger Co-Host mit trockenem Humor |
Charakterzüge | einzelne Eigenschaften als Liste | neugierig, leicht sarkastisch |
Sprachstil | Ton, Emotes, Anrede | locker, duzt alle, nutzt gern Emotes |
Regeln | harte Leitplanken, die immer gelten | Maximal 2 Sätze pro Antwort |
Antwortlänge | Zeichenlimit einer Antwort (Twitch-Max. 500) | 220 |
Begrüßung
| Feld | Bedeutung | Beispiel |
|---|---|---|
An/Aus | neue Chatter automatisch begrüßen | an |
Modus | first_msg nur beim allerersten Schreiben im Kanal, first_seen jeden User erneut nach einer Pause | first_seen |
Feste Nachricht | Text mit Platzhaltern $user $channel — hat Vorrang vor der KI-Variante | Willkommen im Chat, $user! 👋 |
KI-Begrüßung | alternativ von der Persona generieren lassen, wenn keine feste Nachricht gesetzt ist | Begrüße $user kurz und herzlich |
Cooldown (Sek.) | Mindestabstand zwischen zwei Begrüßungen | 5 |
Raid-Pause (Sek.) | nach einem Raid so lange nicht begrüßen, um Massen-Begrüßung zu vermeiden | 300 |
Wiederholung nach (Std.) | nur bei Modus first_seen: denselben User nach so vielen Stunden erneut begrüßen | 12 |
Jeder Block hat ein eigenes „Für diesen Kanal hier verwalten"-Häkchen — ohne Häkchen gilt die zentrale Vorgabe.
AlertsSTREAMER
Stream-Einblendungen für OBS bei Sub, Bits, Raid, Spende, Follow und Werbepausen.
Globale Optik
Vorgabe für alle Varianten; jede Variante kann einzelne Werte überschreiben.
| Feld | Bedeutung | Beispiel |
|---|---|---|
Position | wo die Einblendung im Overlay erscheint | oben / mitte / unten |
Lautstärke | Abspiellautstärke von Sound/Video | 80 % |
Schriftgröße | Textgröße in Pixeln | 32 |
Bildgröße | Skalierung von Bild/GIF/Video in Prozent | 100 % |
Text-/Akzentfarbe | beliebige CSS-Farbe | #a970ff |
Schriftart | websichere Schrift | Poppins |
Text-Verschiebung | Feinjustage in Pixeln, horizontal/vertikal | 0 / 12 |
Vorlesen-Stimme | „Browser" (kostenlos, in OBS meist stumm) oder eine OpenAI-Stimme (zuverlässig in OBS, braucht Admin-Key) | nova |
Je Ereignis-Variante
Pro Ereignistyp (Sub, Bits, Raid, Follow, Spende, Werbung …) eine oder mehrere Varianten. Mehrere Varianten mit Schwelle = Stufen — es greift die höchste passende.
| Feld | Bedeutung | Beispiel |
|---|---|---|
Name | interner Name der Variante | Bits ab 1000 |
Schwelle | ab welchem Wert diese Variante greift (Bits-Anzahl, Raid-Größe …) | 1000 |
Bild/Video | Medium aus dem Medien-Pool oder per URL | confetti.gif |
Sound | abgespielter Sound | tada.mp3 |
Dauer (Sek.) | Anzeigedauer der Einblendung | 6 |
Text-Vorlage | angezeigter Text mit Platzhaltern {user} {amount} {months} {tier} … | {user} hat {amount} Bits dagelassen! 🎉 |
Text im Bild | Text liegt über dem Medium statt darunter | an |
Animation | Ein-/Ausblend-Effekt | Fade |
Vorlesen (TTS) | zusätzlicher Text, der vorgelesen wird | {user} hat gecheert! |
Browserquelle | Ziel-Overlay dieser Variante (Standard oder eine benannte Quelle) | Standard-Overlay |
Chat-Nachricht | zusätzlich zur Einblendung eine Chat-Nachricht posten, optional als offizielle Ankündigung | Danke {user} für {amount} Bits! |
Aktiv | Variante an-/ausschalten | an |
Ohne passende Variante wird für ein Ereignis nichts eingeblendet. Der Button „Test" spielt eine Variante sofort auf allen verbundenen Browserquellen ab.
Browserquellen
Jeder Kanal hat ein Standard-Overlay; weitere benannte Browserquellen lassen sich anlegen (Name, eigene URL/Token, umbenennbar, Token neu erzeugen, löschen sofern unbenutzt) — jede Variante wählt ihr Ziel.
Spenden-Webhook
| Feld | Bedeutung | Beispiel |
|---|---|---|
Anbieter | Auto-Erkennung oder fest wählen | Ko-fi, StreamElements, Streamlabs, PayPal, Generisch |
Mindestbetrag | kleinere Spenden lösen keinen Alert aus | 5 |
Währung (Fallback) | greift, wenn der Anbieter keine mitschickt | EUR |
Feld-Zuordnung | nur bei „Generisch": Punkt-Pfade auf verschachtelte Felder | data.donor |
Die Webhook-URL trägst du beim Spenden-Anbieter als Ziel ein. Leakt sie, im Dashboard „Secret neu erzeugen".
Schritt für Schritt: Sub-Alert einrichten
- Browserquelle in OBS einbauen Meine Kanäle → Alerts → Browserquelle kopieren, in OBS als „Browserquelle" einfügen (1920×1080, „Quelle beim Aktivieren neu laden" aus).
- Medium hochladen
Im Reiter Medien ein GIF hochladen, z. B.
sub-hype.gif. - Variante anlegen
Unter „Einblendungen je Ereignis" bei
Subauf „Neue Variante" —NameStandard-Sub,Bildsub-hype.gif,Dauer6Sek. - Text-Vorlage eintragen
{user} ist jetzt Subscriber! 🎉ins Feld Text-Vorlage. - Optional Chat-Nachricht
Häkchen „Chat-Nachricht" setzen:
Danke {user} für den Sub! - Testen & aktivieren Button „Test" klicken — läuft die Einblendung in OBS durch, Häkchen „Aktiv" setzen und speichern.
MedienSTREAMERMOD
Eigener Reiter für Bild-, Video- und Sound-Uploads — mit eigenem Speicherkontingent je Kanal.
| Feld | Bedeutung | Beispiel |
|---|---|---|
Datei | Bild/GIF/Video/Sound — Format wird an den tatsächlichen Bytes geprüft, nicht am Dateinamen | png, gif, webp, mp4, webm, mp3, ogg |
Für alle Kanäle | Häkchen „shared" — Datei erscheint zusätzlich im Medien-Pool jedes anderen Kanals, zählt aber nur auf dein Kontingent | an |
Kontingent | maximaler Gesamtspeicher je Kanal, vom Admin gesetzt | 250 MB |
Genutzt von Alerts, Commands mit Overlay-Einblendung und Minispielen.
WerbungSTREAMER
Werbepausen-Automatik pro Kanal, unabhängig von der zentralen Vorgabe. Häkchen „Werbe-Einstellungen hier verwalten" aktiviert die eigenen Werte.
| Feld | Bedeutung | Beispiel |
|---|---|---|
Command aktiv | erlaubt !werbung [30…180] (Alias !commercial, !ad) für Mods/Broadcaster | an |
Länge | Dauer einer Werbepause in Sekunden | 60 |
Chat-Text (Start) | Nachricht beim Beginn der Pause, {duration} = Sekunden | Kurze Werbepause ({duration}s) – gleich zurück! |
Als Ankündigung | Text als offizielle /announce senden, mit Farbe | an, purple |
Vorwarnung an/aus | warnt vor dem geplanten Werbestart | an |
Vorlauf (Sek.) | wie weit vorher gewarnt wird | 60 |
Vorwarn-Text | {seconds} = Vorlauf, {duration} = Werbelänge | ⚠ In {seconds}s startet die Werbung! |
Automatik an/aus | eigener Zyklus statt Einzelauslösung | an |
Intervall (Min.) | Abstand zwischen automatischen Werbepausen | 60 |
!ad stop beendet den Zyklus, !ad status zeigt die nächste geplante Pause, !ad once [sek] löst eine einmalige Pause ohne Zyklus aus.
KanalpunkteSTREAMER
Twitch-Kanalpunkte-Rewards direkt aus dem Dashboard anlegen und mit einer Bot-Aktion verknüpfen — ganz ohne Erweiterungs-Panel bei Twitch.
Reward-Felder (bei Twitch)
| Feld | Bedeutung | Beispiel |
|---|---|---|
Titel | Name der Belohnung, wie er bei Twitch erscheint (max. 45 Zeichen) | Songwunsch |
Kosten | Preis in Kanalpunkten | 5000 |
Beschreibung | Prompt-Text unter dem Titel (max. 200 Zeichen) | Wünsch dir einen Song für die Playlist! |
Nutzereingabe nötig | Zuschauer muss bei der Einlösung Text eingeben | an |
Hintergrundfarbe | Kachelfarbe im Twitch-Kanalpunkte-Menü | #9146FF |
Cooldown (Sek.) | globale Sperrzeit, bis der Reward erneut einlösbar ist | 300 |
Max. pro Stream | Obergrenze der Einlösungen je Stream (0 = unbegrenzt) | 3 |
Aktiv / pausiert | Reward für Zuschauer sichtbar bzw. gesperrt | aktiv |
Neue Rewards legt der Bot direkt bei Twitch an; bestehende, bereits vorhandene Rewards lassen sich zum Verknüpfen auswählen, aber nur bot-eigene Rewards vollständig bearbeiten oder löschen.
Verknüpfte Aktion — Aktionstyp
| Typ | Was passiert bei Einlösung | Beispiel |
|---|---|---|
Minispiel | startet automatisch ein Minispiel mit festem Einsatz — Feld Spiel + Einsatz | Glücksrad, Einsatz 500 |
Sound | spielt eine Sound-Datei aus dem Medien-Pool ab — Feld Sound + Lautstärke | airhorn.mp3, 80 % |
Text | zeigt einen Text im Overlay — Feld Text-Vorlage | {user} hat einen Songwunsch: {input} |
TTS | liest einen Text vor — Feld Text-Vorlage + Stimme | Stimme nova |
Bild/Video | spielt ein Medium aus dem Medien-Pool ab — Feld Medium | confetti.gif |
Command | löst einen Timeout oder einen freigegebenen Dashboard-Command/-Timer aus | Timeout, 60 Sek. |
Zähler | erhöht einen bestehenden Counter um einen festen Betrag | Counter hype, +1 |
Gemeinsame Felder jeder Verknüpfung
| Feld | Bedeutung | Beispiel |
|---|---|---|
Browserquelle | Ziel-Overlay der Einblendung (bei Minispiel/Sound/Bild-Video immer aktiv, sonst wählbar) | Standard-Overlay |
Chat-Nachricht | eigene Antwort im Chat, mit {user} {input} {reward} {cost} | {user} löst „{reward}" ein! |
Vorlesen (TTS) | zusätzlich die Chat-Nachricht vorlesen lassen, unabhängig vom Aktionstyp | an |
Aktiv | Verknüpfung an-/ausschalten; deaktiviert pausiert der Bot den Reward — soweit möglich — automatisch bei Twitch | an |
Der Button „Test" löst die Aktion einmal probeweise aus, ohne echte Kanalpunkte abzuziehen — bei Timeout/eigenem KI-Command prüft er nur, ob die Aktion korrekt aufgelöst wird.
Schritt für Schritt: Reward mit Soundeffekt verknüpfen
- Meine Kanäle → Kanalpunkte öffnen Kanal muss vorher unter Alerts mit Twitch verbunden sein.
- Neuen Reward anlegen
„Neuer Reward" —
TitelAirhorn,Kosten2000,Max. pro Stream5. - Sound hochladen (falls nötig)
Im Reiter Medien
airhorn.mp3hochladen. - Aktion verknüpfen
Beim neuen Reward auf „Aktion verknüpfen" —
AktionstypSound,Soundairhorn.mp3,Lautstärke80 %. - Chat-Nachricht ergänzen (optional)
{user} lässt den Airhorn los! 📣ins Feld Chat-Nachricht. - Testen & aktivieren Button „Test" prüft die Einblendung in OBS, Häkchen „Aktiv" setzen und speichern — der Reward ist ab sofort bei Twitch einlösbar.
LoyaltySTREAMER
Punkte- und Watchtime-System mit Leaderboard.
| Feld | Bedeutung | Beispiel |
|---|---|---|
An/Aus | Loyalty für diesen Kanal aktivieren | an |
Currency-Name | Punktename, daraus wird der Chat-Command !<name> | memecoins → !memecoins |
Punkte | Menge pro Intervall | 10 |
Intervall (Min.) | wie oft Punkte vergeben werden | 5 |
Sub-Multiplikator | Subscriber bekommen fürs Zusehen entsprechend mehr Punkte | 2 = doppelt |
Aktiv-Chatter-Multiplikator | wer kürzlich geschrieben hat, bekommt mehr Punkte (nicht Watchtime); stapelt mit dem Sub-Multiplikator | 1.5 |
Aktiv-Fenster (Min.) | Zeitraum, der als „kürzlich geschrieben" zählt | 15 |
Alle Anwesenden zählen | Watchtime/Punkte auch für stille Lurker mit offenem Chat, nicht nur Schreiber | an |
Follow-Bonus | einmalige Punkte beim Follow | 100 |
Tip-Bonus | Punkte je Spenden-Einheit (Bonus × Betrag) | 10 pro € |
Cheer-Bonus | Punkte je 100 Bits | 5 |
Raid-Bonus | Punkte an den raidenden Kanal | 50 |
Ignorierte User | bekommen keine Punkte fürs Zusehen | nightbot |
Watchtime-Command | Chat-Command für die gesehene Zeit | watchtime → !watchtime |
Leaderboard mit Punkte-/Watchtime-Sortierung, Username-Suche, manuellem ± je Zeile und CSV-Import (StreamElements-Export oder generisch, Modus zusammenführen/ersetzen).
MinispieleSTREAMERMOD
Chat-Minispiele je Kanal an-/ausschalten und konfigurieren — alle setzen aktives Loyalty voraus.
Gemeinsame Felder (jedes Spiel)
| Feld | Bedeutung | Beispiel |
|---|---|---|
Aktiv | Spiel für den Kanal freischalten | an |
Command | Chat-Wort ohne Präfix; leer = Spielname | flip |
Aliase | zusätzliche Trigger, max. 5 | coin |
Einsatz min./max. | erlaubte Einsatzspanne in Loyalty-Punkten | 10 – 1000 |
Cooldown (Sek.) | Sperrzeit je User | 5 |
Tages-Verlustlimit | kanalweit: kappt den Netto-Tagesverlust je User (0 = aus) | 5000 |
Browserquelle | Overlay-Ziel für die Spiel-Einblendung | Standard-Overlay |
Chat-Texte | Vorlagen je Ausgang (win/push/lose/no_bet) mit {user} {bet} {payout} {balance} | {user} gewinnt {payout} Punkte! 🎉 |
Coinflip
Klassischer Einsatz-Münzwurf — nur die gemeinsamen Felder, Auszahlung als Multiplikator je Ausgang.
Slots — zusätzliche Felder
| Feld | Bedeutung | Beispiel |
|---|---|---|
Gewichte | Auftrittshäufigkeit je Symbol (Ganzzahl) | 🍒: 40, 7️⃣: 2 |
Auszahlungen | Multiplikator je Symbol-Kombination | three_7: 20× |
Jackpot-Schwelle | ab diesem Multiplikator gilt ein Treffer als Jackpot | 10 |
Gewinnchance überschreiben | feste Gewinnwahrscheinlichkeit statt der aus den Gewichten berechneten | an, 0.3 = 30 % |
Glücksrad — zusätzliche Felder
| Feld | Bedeutung | Beispiel |
|---|---|---|
Segmente | Liste der Rad-Felder mit Multiplikator | 0×, 2×, 5×, Mystery |
Gleiche Segmentgröße | alle Segmente gleich groß statt gewichtet | aus |
Mystery min./max. | Spanne, aus der ein Mystery-Treffer seinen Multiplikator würfelt | 0.1 – 10 |
Gratis-Dreh-Wert | virtueller Einsatz für kostenlose Drehs (echter Einsatz bleibt 0) | 50 |
Chatrain-Punkte | Punkte, die bei einem „Chatrain"-Segment verteilt werden | 50 |
Duell — zusätzliche Felder
Nutzt nur die gemeinsamen Felder: ein Chatter fordert per Command einen anderen heraus, Einsatz und Auszahlung wie oben.
Heist — zusätzliche Felder
| Feld | Bedeutung | Beispiel |
|---|---|---|
Lobby-Dauer (Sek.) | wie lange sich die Crew sammeln kann | 120 |
Crew min./max. | nötige bzw. maximale Teilnehmerzahl | 2 – 50 |
Crew-Bonus | Erfolgschance steigt mit jedem Mitglied | 0.02 je Kopf |
Solo-Abzug | Erfolgschance sinkt, wenn nur einer mitmacht | 0.1 |
Beute-Modus | multiplier (Einsatz × Faktor) oder split (Topf geteilt) | split |
Heist-Cooldown (Sek.) | Sperrzeit zwischen zwei Heists im Kanal | 300 |
Erinnerung vor Start (Sek.) | Chat-Erinnerung, bevor die Lobby schließt | 30 |
Letzter Aufruf (Sek.) | letzte Erinnerung kurz vor Lobby-Ende | 5 |
Ergebnis ansagen | Ausgang zusätzlich als Chat-Ankündigung | an |
Jackpot — zusätzliche Felder
| Feld | Bedeutung | Beispiel |
|---|---|---|
Auslösekosten | Punkte, die ein Zug kostet | 100 |
Mods gratis | Moderatoren zahlen keine Auslösekosten | an |
Mindest-Topf | der Topf muss mindestens so viele Punkte enthalten, bevor er ausgeschüttet werden kann | 1000 |
Beitragsrate | Anteil des Hausgewinns anderer Spiele, der in den Topf fließt | 1.0 = 100 % |
Gewinnchance | Wahrscheinlichkeit, den Topf bei einem Zug zu gewinnen | 0.02 = 2 % |
Status-Command | zeigt den aktuellen Topfstand | pot → !pot |
GiveawaysSTREAMERMOD
Verlosungen mit Chat-Eintrag und Ziehung — auch für Mods verfügbar.
| Feld | Bedeutung | Beispiel |
|---|---|---|
Preis-Text | was verlost wird | Steam-Key: Hollow Knight |
Eintrag-Command | Chat-Wort, je offenem Giveaway eindeutig | giveaway → !giveaway |
Kosten je Ticket | kostenlos oder Loyalty-Punkte je Los | 50 |
Max. Tickets je User | Obergrenze pro Teilnehmer | 5 |
Sub-Multiplikator (Lose) | Subscriber bekommen pro Ticket mehr Lose (Punktekosten unverändert) | 2 |
Botantwort im Chat | bestätigt Eintrag/zu wenig Punkte/Blacklist | an |
Chat-Nachricht beim Öffnen | Text beim Anlegen/Wieder-Öffnen, mit {prize} {command} {cost} {max} | 🎁 Verlosung „{prize}" ist offen! Mitmachen mit !{command} |
Vorheriges Schreiben nötig | User muss seit Streambeginn schon einmal im Chat geschrieben haben | an |
Auto-Blacklist nach N Verstößen | sperrt einen User nach wiederholten Verstößen automatisch (0 = aus) | 3 |
Ziehungs-Overlay | Browserquelle für die Ziehungs-Animation | Standard-Overlay |
Animationsdauer | Länge der Ziehungs-Animation | 5 s |
Announce-Text | Gewinner-Ansage im Chat, mit {winner} {prize} | 🎉 {winner} gewinnt „{prize}"! |
Reiter Status: Teilnehmer einsehen/entfernen, schließen, Gewinner ziehen, als abgeschlossen markieren. Reiter Liste: wiederverwendbare Preise mit Name, Sponsor und Restbestand. Reiter Archiviert: abgeschlossene Giveaways durchsuchen und nach Alter aufräumen.
Schritt für Schritt: Giveaway durchführen
- Meine Kanäle → Giveaways → Settings öffnen „Neues Giveaway" klicken.
- Preis & Command festlegen
Preis-TextSteam-Key: Hollow Knight,Eintrag-Commandgiveaway. - Kosten wählen
kostenlos lassen oder
Kosten je Ticket50Loyalty-Punkte setzen, dazuMax. Tickets je User3. - Öffnen
Speichern — der Bot postet die Chat-Nachricht beim nächsten Sync und
!giveawaynimmt ab sofort Einträge an. - Verlauf beobachten Im Reiter Status → „Übersicht öffnen" die aktuelle Teilnehmerliste ansehen.
- Schließen & ziehen Wenn genug Einträge da sind: „Schließen", dann „Gewinner ziehen" — die Ziehungs-Animation läuft im Overlay, danach postet der Bot den Announce-Text im Chat.
- Abschließen Nachdem der Gewinner sich gemeldet hat: „Als abgeschlossen markieren" — das Giveaway wandert ins Archiv.
ToolsSTREAMER
Overlay-Werkzeuge, dieselbe Optik wie bei den Alerts (gerahmte Box, konfigurierbares Namensschild).
Stoppuhr
| Feld | Bedeutung | Beispiel |
|---|---|---|
Start-Command | startet die Stoppuhr | stoppuhr |
Stop-Command | stoppt und zeigt die Zeit | stopp |
Aliase | zusätzliche Trigger je Command | sw |
Wer darf bedienen | mods oder everyone | mods |
Zeitformat | mm:ss, mm:ss.d oder hh:mm:ss | mm:ss.d |
Overlay-Ziel | Standard oder eine benannte Browserquelle | Standard-Overlay |
Stopp-Nachricht | Chat-Text mit {time} = gestoppte Zeit | Zeit gestoppt: {time} |
Auto-Ausblendzeit (Sek.) | Overlay blendet sich nach dem Stopp automatisch aus | 20 |
Rahmen / Namensschild / Schrift / Farben | Optik wie bei den Alerts — Rahmen an/aus, Schild-Text, Schriftart/-größe, Text-/Akzentfarbe | Schild-Text Speedrun |
Countdown
| Feld | Bedeutung | Beispiel |
|---|---|---|
Name | Bezeichnung des benannten Countdowns | Pause |
Command | startet genau diesen Countdown | pause |
Dauer (Sek.) | feste Laufzeit dieses Countdowns | 300 |
Start-Nachricht | Chat-Text beim Start | ⏳ Pause gestartet! |
Ablauf-Nachricht | Chat-Text mit {name}, wenn die Zeit abläuft | ⏰ {name} – Zeit abgelaufen! |
Ablauftext im Overlay | kurzer Text, der im Overlay bei 0 erscheint | Zeit abgelaufen! |
Abbrechen-Command | stoppt alle laufenden Countdowns auf einmal | countdownstop |
Zusätzlich ein spontaner Countdown, dessen Dauer aus dem Chat-Command selbst kommt, z. B. !countdown Pause 5 Minuten 30 Sekunden (eigenes Feld Max. Dauer begrenzt den größtmöglichen Wert). Mehrere gleichzeitig laufende Countdowns werden im Overlay gestapelt.
ModerationSTREAMER
Keyword-Blacklist je Kanal — eine Liste von Regeln, komplett im Dashboard gepflegt.
| Feld | Bedeutung | Beispiel |
|---|---|---|
Muster | der zu erkennende Text | schleichwerbung |
Vergleich | word ganzes Wort, substring auch mitten im Wort, regex reguläre Ausdrücke (≤ 200 Zeichen) | word |
Strafe | purge (1-Sek.-Timeout, entfernt sichtbare Nachrichten), timeout oder ban | timeout |
Dauer | nur bei timeout: 1 Sekunde bis 14 Tage | 600 (10 Min.) |
Grund | an Twitch sichtbarer Grund; leer = „Blacklist-Keyword: <Muster>" | Verbotener Begriff |
Chat-Warnung | optionale öffentliche Warnung mit $user/$channel, 10 s Anti-Spam je User | $user, bitte die Regeln beachten. |
Ausnahmen | Mods / VIPs / Subs von dieser Regel ausnehmen | VIPs ausgenommen |
Aktiv | Regel vorübergehend deaktivieren | an |
Broadcaster und Admins sind immer ausgenommen. Es greift immer die erste passende Regel; Suche über das Muster, Pagination ab 15 Regeln.
Chat-Befehle — für alle
Jeder Zuschauer kann diese Commands im Chat nutzen.
| Command | Wirkung |
|---|---|
!remember <text> | speichert einen Fakt über dich selbst |
!forget <nr> / !forget all | löscht einen / alle Fakten über dich |
!aboutme | zeigt, was der Bot über dich gespeichert hat |
Aliase: !merkdir !vergiss !whoami !uebermich
Chat-Befehle — Mods & Admins
Live-Steuerung direkt im Chat via !bot …. Link-Schutz und die Moderationsbefehle funktionieren zusätzlich für Moderatoren, alles andere nur für Broadcaster und twitch.admins.
| Command | Wirkung | Rechte |
|---|---|---|
!bot help | Kurzhilfe | Admin |
!bot linkprotection on|off | Link-Schutz im aktuellen Kanal an/aus | Mod+ |
!bot linkprotection status | effektiver Link-Schutz-Zustand des Kanals | Mod+ |
!bot timeout <user> <sek> [grund] | User timeouten (1–1 209 600 s) | Mod+ |
!bot ban / unban / purge <user> | bannen, entbannen, Nachrichten entfernen | Mod+ |
!bot status | aktueller Zustand (Pause, Spontaneität, Overrides) | Admin |
!bot persona <text> / clear | temporärer Persona-Zusatz setzen / entfernen | Admin |
!bot engage <0..1> | Spontan-Wahrscheinlichkeit live setzen | Admin |
!bot spontaneous on|off [*] | spontane Reaktionen im Kanal (* = global) an/aus | Admin |
!bot pause / resume | Not-Aus / wieder aktiv | Admin |
!bot say <text> | Bot sagt den Text (gekürzt) | Admin |
!bot ignore <user> [*] | User im Kanal (bzw. global) ignorieren | Admin |
!bot remember/forget <user> … | Fakt über einen anderen User setzen/löschen | Admin |
!bot-Overrides werden gespeichert und überleben einen Neustart. Jede zustandsändernde Aktion landet 30 Tage lang im Audit-Log — im Dashboard nur für den Superadmin sichtbar.