Zum Inhalt

Pattern: Get Random Number

Zahl in einer Range würfeln. Wird mit If/Else kombiniert für Range-Cascade-Logik.

Pfad: Core → Logic → Get Random Number Doku: https://docs.streamer.bot/api/sub-actions/core/logic/get-random-number

Felder

Feld Bedeutung
Type Between = Integer in Range / Next Float = Float 0–1
Min Untere Grenze (inklusiv)
Max Obere Grenze (inklusiv)

Output-Variablen

Variable Inhalt
%randomNumber% Integer (bei Between)
%randomFloat% Float zwischen 0 und 1
%randomPercent% Float * 100 (Integer)

Variablen-Namen sind FEST, nicht konfigurierbar. Wenn du zwei Random Numbers brauchst → nach jeder Get Random Number sofort Set Argument aufrufen und den Wert in eigene Variable kopieren.

1. Get Random Number (Between, 0, 200)
2. Set Argument: iqScore = %randomNumber%
3. Get Random Number (Between, 1, 6)
4. Set Argument: diceRoll = %randomNumber%
5. Send Message: "@%user% IQ %iqScore%, Würfel %diceRoll%"

Inline-Alternative: $random(min, max)$

Wenn du nur EINE Zufallszahl in einem Text-Feld brauchst:

Send Message: "@%user% du hast $random(0, 200)$ IQ"

Vorteil: kein extra Sub-Action-Schritt. Nachteil: kannst nicht in If/Else darauf prüfen.

Range-Cascade Pattern

Siehe 02-if-else.md. Klassischer Use-Case:

1. Get Random Number (0, 100)
2. If/Else: %randomNumber% Less Than 20  → "Pech" + Break
3. If/Else: %randomNumber% Less Than 50  → "Mittel" + Break
4. If/Else: %randomNumber% Less Than 80  → "Gut" + Break
5. Send Message: "Jackpot" (kein If/Else = Default für 80-100)

Häufige Fallen

  • Range ist inklusivMin=1, Max=6 ergibt 1, 2, 3, 4, 5 oder 6 (genau wie Würfel)
  • %randomNumber% wird überschrieben — bei zweiter Get Random Number ist der erste Wert weg. Mit Set Argument sichern
  • Float vs Int verwechseltBetween setzt randomNumber (int), Next Float setzt randomFloat (0-1). Nicht mischen

Verwendung in Commands