Anleitung zum Online Würfel Tool @RollButler – Würfelvorschrift

Modifikatoren, Variablen und Ergebnisauswahl

Modifikatoren

Hat man Gratiserfolge (oder Fehlschläge, Patzer oder Trigger), können diese der Würfelvorschrift mitgegeben werden. ‚+2E‘ fügt zwei Erfolge dem Würfelergebnis hinzu. ‚-F‘ reduziert die Zahl der resultierenden Fehlschläge um eins. Vollständiges Beispiel: ‚3W6E5+E‘ lässt den @RollButler drei sechsseitige Würfel werfen und jede fünf oder sechs als Erfolg werten. Anschließend wird ein Erfolg hinzugefügt.

Variablen und Ergebnisauswahl

Um für weitere Berechnungen auch auf die Zahl der Trigger, Erfolge, Fehlschläge, etc. zugreifen zu können, kann die Würfelvorschrift mit speziellen Funktionen umgeben werden. Wichtig ist dabei allerdings, dass der Würfelvorschrift die zugehörigen Parameter (F, E und/oder T, bzw. P) mitgegeben wurden.

  • F(w), bzw. fehlschlaege(w) – liefert die Zahl der Fehlschläge des Würfelwurfs w (erfordert die Option F)
  • E(w), S(w), bzw. erfolge(w) – liefert die Zahl der Erfolge des Würfelwurfs w (erfordert die Option E)
  • T(w), bzw. trigger(w) – liefert die Zahl der Trigger des Würfelwurfs w (erfordert die Option T)
  • M(w), bzw. misses(w) – liefert die Zahl der negativen Trigger (Patzer) des Würfelwurfs w (erfordert die Option M)
  • L(w), bzw. liste(w) – wandelt die Einzelergebnisse des Wurfs in eine Liste um (bedarf keiner Option)
  • P(w), bzw. gerade(w) – liefert die Anzahl der geraden Würfelergebnisse des Würfelwurfs w (erfordert die Option P)
  • I(w), bzw. ungerade(w) – liefert die Anzahl der ungeraden Würfelergebnisse des Würfelwurfs w (erfordert die Option P)
  • effektiv(w) – liefert die Zahl der effektiven Erfolge (Erfolge – Fehlschläge) des Würfelwurfs w (erfordert die Optionen E und F)
  • augensumme(w) – liefert die Zahl der Augen des Würfelwurfs w. Diese Funktion ist üblicherweise nicht erforderlich, da die Würfelvorschrift selber bereits die Augensumme liefert.
  • null(w) – liefert eine 0, unabhängig vom Ergebnis des Würfelwurfs
  • G(w[; x]), bzw. gruppen(w[; x]) – liefert die Anzahl der Gruppen gleicher Augenzahlen (bedarf der Option G), optional beschränkt auf Augenzahl x

Möchte man also die Zahl der Erfolge eines 3W6 Würfelwurfs in der Berechnung verwenden, so verwendet man die Formel ‚E(3W6E5)‘.

Um auf die Ergebnisse eines Würfelwurfs an einer anderen Stelle der Würfelvorschrift erneut zugreifen zu können, können diese in eine Variable zwischengespeichert werden. Variablen sind Textbezeichner, die mit einem ‚$‘ Zeichen beginnen, z.B. ‚$wurf‘. Um der Variablen ‚$wurf‘ einen Wert zuzuweisen verwendet man beispielsweise das folgende Kommando: ‚$wurf=(3W6FE5T)‘. Man beachte, dass das, was der Variablen zugewiesen werden soll, in runden Klammern gefasst werden muss.

Zur Vereinfachung werden zudem alle Würfe automatisch in den Variablen $1, $2, $3, etc. in der Reihenfolge ihres Vorkommens gespeichert.

An einer anderen Stelle kann anschließend mit einer der oben beschriebenen Funktionen auf Ergebnisse des Wurfs zurückgegriffen werden. Beispiel: ‚$w=(3W6T+T($w))‘ liefert als Ergebnis die Augensumme von drei sechsseitigen Würfeln plus die Anzahl der Trigger (hier: sechsen). Möchte man die Augensumme des Würfelwurfs unterdrücken, klammert man die Zuweisung in die Funktion null() ein, also ’null($w=(3W6E5T))+E($w)+T($w)‘, was gleichbedeutend mit ‚E(3W6E5T)+T($1)‘ die Summe der Erfolge und Trigger liefert.

Variablen können beliebige Inhalte speichern, also nicht nur Würfelwürfe, sondern auch Zahlen, Text etc.

Gruppen (G())

Um die Anzahl der Gruppen (z. B. Pasch) ausgeben zu können, muss die Würfelinstruktion den Parameter G beinhalten, z.B. 10WG für das Erfassen von Paaren gleicher Augenzahl bei zehn sechsseitigen Würfeln. (Man beachte, dass W ohne Angabe einer Zahl oder Menge für einen sechsseitigen Würfel, also W6 steht.)

Ist nun für die weitere Auswertung lediglich die Anzahl dieser Gruppen relevant, kann die Ergebnisauswahl G() um die Würfelinstruktion gesetzt werden: ‚G(10WG)‘. Das Ergebnis dieses Aufrufs liefert somit nicht mehr die Augensumme der 10 Würfel, sondern lediglich die Anzahl der Pasche.

Interessiert man sich nur für die Anzahl der Pasche einer bestimmten Augenzahl (z. B. 6), so kann diese Augenzahl als zweiter Funktionsparameter mitgegeben werden: ‚G(10WG;2)‘.

Sollen die Sechser-Trippel eines Wurfs gezählt und ausgegeben werden, kommt die folgende Instruktion zum Einsatz: ‚G(10WG3;6)‘.

Bei der Ermittlung der Gruppen sind folgende Punkte zu beachten:

  • Es können nur Gruppen einer Anzahl ausgewertet werden, also nur Pasche oder nur Trippel, etc.
  • Die Gruppen werden für die Gesamtausgabe über alle Würfe ermittelt, auch wenn unterschiedliche Gruppengrößen angegeben wurden. ‚3WG+5WG3‘ ergibt in der Gesamtübersicht möglicherweise ein inkonsistentes Bild.

9 Kommentare

  1. Gibt es eine Möglichkeit die höchsten/niedrigsten Werte aus einem Wurf mit mehreren Würfeln auszugeben?
    Ich kenne es aus anderen Programmen, wo man z.B. 4W6H3 verwenden kann um 4 W6 zu werfen und die höchsten 3 zusammen zu zählen.

    1. Hi,
      in der Tat ist dies möglich, aber leider nicht ganz so trivial.

      /roll last(3;sort(4xW6))

      um sich nur die höchsten drei Werte anzeigen zu lassen oder

      /roll sum(last(3;sort(4xW6)))

      um deren Augensumme zu ermitteln.

      Zugegeben, das ist etwas sperrig, aber ich schau mal, ob ich in einem der kommenden Updates diese ‚H‘ Option mit einbaue.

      1. So, jetzt ist die Option ‚H‘ auch implementiert:

        /roll 4W6H3

        liefert nur die Augensumme der drei höchsten Werte bei vier Sechsseitern.

        Und

        /roll 4W6B3

        macht das gleiche, nur mit den drei kleinsten Werten.

  2. Hi,
    gibt es die Möglichkeit eine Zahl mit zwei Erfolgen/ Fehlschlägen zu belegen, und dann die Zahl der Erfolge/ Fehlschläge anzeigen zu lassen?

    1. Hi,

      das ist bedingt möglich über den Trigger. Beispiel 10D6F1E4T6 (oder kürzer: 10DFE4T), dabei werden Einsen als Fehlschlag, Werte ab 4 als Erfolg und Sechsen (zusätzlich) als Trigger gewertet. In der Ausgabe steht dann beispielsweise

      Erfolge 6,
      Fehlschläge 2,
      effektive Erfolge +4,
      Trigger 1

      Für den gewünschten Effekt müssten nun (noch im Kopf) die Trigger noch zu den Erfolgen (und dem effektiven Erfolg) hinzugerechnet werden, also in diesem Beispiel: 7 Erfolge, effektive Erfolge +5.

      Automatisch geht dies mit folgender Formel: e(10dfe4t6)+t($1)

      e() liefert die Anzahl der Erfolge (und nicht die Augensumme) der in der Klammer angegebenen Würfelinstruktion.
      t() liefert analog die Anzahl der Trigger.
      $1 referenziert auf die erste ausgeführte Würfelinstruktion, t($1) liefert damit in diesem Beispiel die Zahl der Trigger der vorangegangenen Würfelei.

      Ich nehme die Idee allerdings einmal auf und überlege, ob dafür auch eine geeignete Option sinnvoll wäre, aber kürzer wird es dadurch nicht …

      Ich hoffe, das hilft.

  3. Hej, ich sehe gerade, das es für Alien bereits eine Mechanik/ein Makro ähnlich der gibt, die ich derzeit für V5 suche – Vampire, 5. Edition. Hier werden W10 gegen 6 gewürfelt, und in den meisten Lagen werden sog. Hungerwürfel in den Pool eingestreut. Zwei Zehner sind besondere Erfolge und werden als 4 Erfolge gezählt, besondere Ergebnisse aus den Hungerwürfeln haben noch andere Effekte.
    Klingt in der Grundlage sehr ähnlich wie die Sache mit den Stresswürfeln. Lässt sich das auch als Makro (zB _v5?) einrichten? Würde ungern einen zweiten Bot zum würfeln installieren müssen.

      1. Hallo Michael,
        ich habe mich auch gerade an einer Umsetzung für Vampire versucht und habe aktuell diese Lösung für mich herausgeknobelt:
        /r 5xd(4xErfolg;1xKritisch;5x.)+8xd(4xErfolg;1xBiestKritisch;3x.;1xBeastFailure)

        5xd(4xErfolg;1xKritisch;5x.) stellt die schwarzen Würfel dar und der zweite Teil den roten. Das ist noch nicht so optimal, aber hilft mir erstmal.

        Viele Grüße
        Selina

        1. Hallo Selina,

          danke, dass Du die die Mühe gemacht hast.

          Für V5 hatte ich zwei Makros realisiert _v5() mit einem, bzw. zwei Parametern. Dahinter stecken die folgenden Formeln:

          S(aD10S6T)+if(T($1)>1;2;0)

          bzw.

          S(aD10S6T)+S(bD10S6T)+if(T($1)+T($2)>1;2;0)

          mit a als erstem, b als zweitem Parameter.

          Deine Formel /r 5xd(4xErfolg;1xKritisch;5x.)+8xd(4xErfolg;1xBiestKritisch;3x.;1xBeastFailure) hat den Haken, dass mathematisch mit „Erfolg“ keine Rechenoperation („+“) durchgeführt werden kann – das ist halt keine Zahl.

          Der zweite Würfel bei Dir hat darüber hinaus nur 9 Werte, also ein W9 – ist das so beabsichtigt?

          Meine zweite Formel löst das Problem, indem Erfolge und Trigger genutzt werden.

          a 10-Seiter, Werte 6 und größer sind Erfolge, die 10 sogar ein Trigger
          b ebensolche 10-Seiter

          Von beiden werden die Erfolge gezählt und addiert. Danach noch einmal die Trigger der beiden Würfe, damit die kritischen Erfolge halt doppelt zählen.

          Den BeastFailure kann man mit einem Fehlschlag realisieren, dann wäre das

          S(aD10S6T)+S(bD10S6TF)+if(T($1)+T($2)>1;2;0)

          In dem Fall müssten dann aber a die regulären und b die Hunger-Würfel sein.

          Im Endeffekt müsste das noch etwas komplexer werden um Messy critical und Bestial failure mit abbilden zu können.

          Schönen Gruß,
          Michael

Kommentar hinterlassen

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.