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:
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 inklusiv —
Min=1, Max=6ergibt 1, 2, 3, 4, 5 oder 6 (genau wie Würfel) %randomNumber%wird überschrieben — bei zweiterGet Random Numberist der erste Wert weg. MitSet Argumentsichern- Float vs Int verwechselt —
BetweensetztrandomNumber(int),Next FloatsetztrandomFloat(0-1). Nicht mischen
Verwendung in Commands¶
- commands/04-iq-range-cascade.md — 0-200 IQ würfeln