Rückgabewerte des @RollButlers

Der @RollButler liefert bei korrektem Aufruf einen einfachen Text oder einen JSON kodierten String zurück, der – je nach Anfrage – recht komplexer Natur sein kann.

Antwort bei Format text, colortext und markdown

In diesem Format wird ohne Metainformationen lediglich der Ergebnistext zurückgeliefert. Je nach gewähltem Format ist der Text mit farblichen Marken (colortext), bzw. im Markdown Format (markdown) gegeben.

Antwort bei Format extended (empfohlen)

Dieses Format ist für einfache Anfragen geeignet, wenn die Antwort lediglich das Würfelergebnis mit minimalen Metainformationen erfordert. Die Rückantwort erfolgt im JSON Format und ist wie folgt aufgebaut:

FeldbezeichnungWertBeispielBeschreibung
iserrorBoolenfalseIst die Rückmeldung eine Fehlermeldung? Dieses Feld wird auf true gesetzt, wenn z. B. die Anweisung nicht korrekt war.
messageString“I rolled 3d6 for you which resulted in **12**.”Die textuelle Rückmeldung des Ergebnisses mit Markdown Formatierung.
privateBooleanfalseDie Antwort ist als privat gekennzeichnet, z. B. durch das Kommando /pr (private roll).
anonymous ?BooleantrueDie Antwort sollte anonym gekennzeichnet werden. Dies ist z. B. bei der Nutzung der X-Karte (/xcard) gegeben.
image ?Stringhttps://rollbutler.net/img/x-card.pngURL zu einem Bild. Wird z. B. bei Verwendung der X-Karte genutzt.
log_id ?Integer160620ID der Rückmeldung in der Datenbank, erfordert Aufruf mit auf true gesetztem Feld logit.

Die in der Tabelle mit “?” gekennzeichneten Felder sind optional und werden nur ausgefüllt, wenn entsprechende Werte vorhanden, bzw. angefordert sind.

Antwort bei Format json (Standard)

Dieses Format ist das umfangreichste und komplexeste Datenpaket, dass der @RollButler zurückliefern kann. Dies eignet sich für eine detailierte Auswertung des Würfelvorgangs.

Die folgende Ausgabe ist das Ergebnis eines “/roll 4d8!FEMT 5d6#demonstrativer Aufruf” Aufrufs.

{
  "settings": {
    "lang": "EN"
  },
  "var": [],
  "comment": "demonstrativer Aufruf",
  "rollcounter": 2,
  "expression": {
    "1": {
      "command": "roll",
      "total": 33,
      "roll": {
        "1": {
          "resultstring": " 4 5 5 1=",
          "success": 0,
          "fails": 1,
          "triggers": 0,
          "misses": 1,
          "rolls": {
            "1": {
              "value": 4,
              "result": 4
            },
            "2": {
              "value": 5,
              "result": 5
            },
            "3": {
              "value": 5,
              "result": 5
            },
            "4": {
              "value": 1,
              "result": 1,
              "fail": true,
              "miss": true
            },
          },
          "resulttype": "numeric",
          "total": 15
        },
        "2": {
          "resultstring": " 5 2 3 2 6",
          "rolls": {
            "1": {
              "value": 5,
              "result": 5
            },
            "2": {
              "value": 2,
              "result": 2
            },
            "3": {
              "value": 3,
              "result": 3
            },
            "4": {
              "value": 2,
              "result": 2
            },
            "5": {
              "value": 6,
              "result": 6
            }
          },
          "resulttype": "numeric",
          "total": 18
        }
      },
      "triggers": 0,
      "misses": 1,
      "success": 0,
      "fails": 1,
      "effectives": -1,
      "instruction": "4d8!FEMT 5d6",
      "resulttype": "list",
      "result": [
        [
          18,
          "num"
        ],
        [
          15,
          "num"
        ],
        [
          2,
          "list"
        ]
      ]
    }
  },
  "chat": [],
  "initial_instruction": "4d8!FEMT 5d6#demonstrativer Aufruf",
  "logit": true,
  "expressions": 1
}

Ergebnis Objekt

FeldbezeichnungWertBeispielBeschreibung
settingsSettings ObjektListe von angewandten Parametern für den Aufruf aus /set
varListeListe von im Aufruf definierten Variablen
commentStringKommentarKommentar zum Aufruf
rollcounterInteger2Anzahl der Würfelinstruktionen im Aufruf
expressionExpression Objekte
chatChat Objekt
initial_instructionStringInitial übergebene Würfelinstruktion
logitBooleanStatus der Ablage des Würfelergebnis in der Datenbank
expressionsInteger1

Settings Objekt

FeldbezeichnungWertBeispielBeschreibung
langStringENGewünschte Sprache für die Ergebnisausgabe
<Parameterbezeichnung>String<Wert des Parameters>Übergebene Parameter und Werte

Expression Objekt

Für jede Würfelinstruktion gemäß rollcounter wird fortlaufend nummeriert ein Objekt der folgenden Form übergeben.

FeldbezeichnungWertBeispielBeschreibung
resultstringString 8#! 5 2 7markierte Einzelergebnisse des Wurfs
success ?Integer1Anzahl der Erfolge (aus S oder E)
fails ?Integer0Anzahl der Fehlschläge (aus F)
triggers ?Integer1Anzahl der Trigger (aus T)
misses ?Integer0Anzahl der Patzer (aus M)
effectives ?Integer1Anzahl der effektiven Erfolge (success – fails)
rollsWürfel ObjekteDetailinformationen zu den einzelnen Würfen
resulttypeStringnumericArt des Ergebnisses (numeric, text oder list)
resultInteger/ListeGesamtergebnisse
reroll ?Würfel ObjekteDetailinformationen zu explodierenden Würfen
totalInteger3Gesamtsumme/Endergebnis

Die in der Tabelle mit “?” gekennzeichneten Felder sind optional und werden nur ausgefüllt, wenn entsprechende Werte vorhanden, bzw. angefordert sind.

Liste

Liste von Werten in umgekehrter Reihenfolge (Stack) mit Typbezeichner [Wert => Typ]. Das letzte Tupel gibt die Anzahl der Werte der Liste sowie den Typ “list” an.

Chat Objekt

FeldbezeichnungWertBeispielBeschreibung
to_user_idInteger0Empfänger der Nachricht. 0 Kennzeichnet “alle” in der jeweiligen Gruppe.
messageString“Test”Die Chat-Nachricht
anonymous ?BooleantrueDie Nachricht soll anonym dargestellt werden. Dies ist z. B. bei Nutzung der X-Karte (/xcard) der Fall.

Würfel Objekte

Für jeden Wurf wird fortlaufend nummeriert ein Objekt der folgenden Form übergeben.

FeldbezeichnungWertBeispielBeschreibung
valueInteger/String8Ergebnis des Wurfs
resultInteger8Ergebnis des Wurfs
explosion ?BooleantrueWurf explodiert
success ?BooleantrueWurf ist ein Erfolg (aus S oder E)
trigger ?BooleantrueWurf ist ein Trigger (aus T)
fail ?BooleanfalseWurf ist ein Fehlschlag (aus F)
miss ?BooleanfalseWurf ist ein Patzer (aus M)
innerrollInner Roll ObjekteDetailinformationen zu den inneren Würfen

Inner Roll Objekt

Wenn der Wurf mit inneren Würfen angefordert wurde, werden diese Würfe hiermit dargestellt. Die inneren Würfe werden in jedem Würfel Objekt fortlaufend nummeriert erfasst.

FeldbezeichnungWertBeispielBeschreibung
valueInteger/String8Ergebnis des Wurfs
resultInteger8Ergebnis des Wurfs

Inhalt

Schreibe einen Kommentar

Nutze dieses Kommentarfeld um deine Meinung oder Ergänzung zu diesem Beitrag kundzutun. Verhalte dich bitte respektvoll und höflich! Kommentare werden vor der Veröffentlichung in der Regel moderiert und bei Verstößen gegen geltendes Recht, die guten Sitten, fehlendem Bezug oder missbräuchlicher Verwendung nicht freigegeben oder gelöscht.
Über die Angabe deines Namens, deiner E-Mail Adresse und deiner Webseite freuen wir uns, doch diese Felder sind optional. Deine E-Mail Adresse wird dabei zu keinem Zeitpunkt veröffentlicht.

Um mit dem Betreiber dieser Seite nicht-öffentlich in Kontakt zu treten, nutze die Möglichkeiten im Impressum.