Bild: © annca / Pixabay

Der Würfelsimulator RollButler auf Discord

Das Online Würfel Tool @RollButler hat eine weitere Anbindung an ein beliebtes Tool erhalten: Discord. Discord ist ein modernes Kommunikationswerkzeug, das vor allem bei Gamern beliebt ist. Im Gegensatz zu TeamSpeak und Skype verspricht Discord deutlich bessere Sprachqualität und höhere Sicherheitsstandards in puncto Datenschutz. Eine API Schnittstelle für Eigenentwicklungen besitzt die kostenfreie Lösung darüber hinaus auch noch, sodass es eigentlich nur eine Frage der Zeit war, bis der Würfel Simulator @RollButler auch an diese Software angebunden wurde.

Tatsächlich war die Implementierung bereits vor einiger Zeit begonnen, im Zuge von Schnittstellenänderungen auf Seiten von Discord dann jedoch auf Eis gelegt worden. Nach der Implementierung einer eigenen WebSocket-Implementierung (die im Übrigen einfacher zu realisieren war als die Discord API), ging es dann vergleichsweise schnell und nach Twitter, Telegram, Amazon Alexa, dem Facebook Messenger und der eigenen Weboberfläche, kann damit auf die Funktionalität des @RollButlers nun auch über Discord zugegriffen werden.

Bild: © Discord

Das Kommunikationstool Discord steht auf der Webseite des Anbieters kostenfrei zum Download zur Verfügung. Daneben ist Discord auch für die gängigen Smartphone Betriebssysteme Android und Apple iOS verfügbar. Wer die Software nicht installieren möchte, kann Discord sogar über die Weboberfläche nutzen.

Technisch ist Discord eine kostenfreie und qualitativ deutlich bessere Alternative zu Tools wie das etablierte, aber auch sperrige TeamSpeak und das heruntergewirtschaftete Skype, ganz zu Schweigen von Google Hangout.

RollButler mit Discord verbinden

Der @RollButler ist in Discord als sogenannter Bot realisiert. Hierbei handelt es sich um einen virtuellen Nutzer, den man in seine Gruppen (Gilden) einbinden kann.

Datenschutzhinweis: Wenn der @RollButler in Discord eingebunden wird, hat er – wie alle anderen Bots auf Discord auch – Zugriff auf ALLE Textnachrichten in den Kanälen, in denen er konfiguriert wurde. Die Nachrichten (Nachrichtinhalt, Absender, Kanal, etc.) werden von Discord an den Bot gesendet und von diesem auf mögliche Kommandos an ihn (/roll, /create, etc.) hin überprüft. Wenn der Bot kein passendes Kommando findet, werden die Nachrichten verworfen, ansonsten ausgewertet und beantwortet.

Besitzt man bereits einen Discord Account und hat sich einen sogenannten Server eingerichtet, ist der einfachste Weg den @RollButler einzubinden durch einen Klick auf den folgenden Link.

https://discordapp.com/api/oauth2/authorize?client_id=303766795423186944&scope=bot&permissions=85056

Nachdem man sich in seinem Discord Account angemeldet hat, erscheint der Dialog „Mit Discord verbinden“, wie er in der Grafik auf der rechten Seite zu sehen ist. Den Server, in den der @Rollbuter eingebunden werden soll, wählt man im Drop-Down Feld aus. Anschließend bestätigt man den Verbindungswunsch über den Button „Autorisieren“.

Im nächsten Dialog wird lediglich überprüft, ob man ein Mensch ist. Dies erfolgt über ein Google Captcha. In das weiße Kästchen vor dem Satz „Ich bin kein Roboter“ gilt es mit der Maus zu klicken und einen Moment zu warten bis der Dialog sich selber schließt und die Erfolgsmeldung erscheint. In seltenen Fällen dürfte die Abfrage im Captcha komplizierter sein, indem Objekte auf Fotos schlechter Qualität identifiziert werden müssen. Diese Maßnahmen dienen dem Schutz von Discord und sind nicht durch den @RollButler veranlasst oder getrieben.

Bei der Verbindung des @RollButlers mit dem Discord Account wird keinerlei Software installiert, ebenso erhält der @RollButler keine Möglichkeit Nachrichten im Namen des Nutzers zu verfassen. Wohl aber erhält er Zugriff auf alle Textnachrichten, die auf diesem Server eingehen und kann in seinem eigenen Namen Meldungen in den Kanälen veröffentlichen. Es ist daher ratsam ihm nur die Berechtigung für diejenigen Kanäle zu gestatten, die seiner Dienste benötigen. Die Kommunikation zwischen Discord und dem @RollButler erfolgt vollständig SSL verschlüsselt, ist für Dritte also nicht einsehbar.

Berechtigungen für den @RollButler in Discord

Nach der Integration des @RollButlers in Discord sollte der Bot in der Liste der aktiven User (Online User) zu finden sein.

Es ist empfohlen dem @RollButler nur in den Textkanälen Lese- und Schreibberechtigungen zu geben, in denen er auch genutzt wird. Dies entlastet zum einen den @RollButler, zum anderen muss ja nicht jede Nachricht (siehe Datenschutzhinweis oben) übertragen werden.

Der Administrator des Discord Servers sollte den @RollButler entweder als dedizierten Nutzer dem gewünschten Textkanal hinzufügen, oder einer geeigneten Rolle zuordnen.

Berechtigungen für den @RollButler in Discord einstellen

Die Berechtigungen Nachrichten lesen und Nachrichten senden sind zwingend erforderlich.

erforderliche Berechtigungen für den @RollButler in Discord

Die Berechtigungen „Links einbetten“ ist optional und für zukünftige Funktionen vorgesehen. Die „Nachrichtenverlauf anzeigen“ und „Reaktionen hinzufügen“ werden für das vereinfachte Würfeln durch Reaktion mit dem Würfel Emoji benötigt.

weitere Berechtigungen für den @RollButler in Discord

Alle anderen Rechte können für den @RollButler deaktiviert werden.

Der @RollButler Bot ist offline?

Es kann durchaus einmal vorkommen – allerdings in der Zwischenzeit nur noch sehr selten –, dass die Verbindung zwischen Discord und dem @RollButler abreißt. Es wurden verschiedene Mechanismen implementiert, mit denen der @RollButler versucht sich innerhalb von ein bis zwei Minuten selbst zu heilen.

Sollte der Bot länger als fünf bis zehn Minuten als offline angezeigt werden, ist wahrscheinlich etwas Größeres im Argen. In dem Fall darf auch gerne eine Meldung an mich (vorzugsweise über Twitter oder einen anderen Messenger Dienst, das geht einfach schneller!) abgesetzt werden und ich versuche der Sache auf den Grund zu gehen.

Beitrag vorlesen lassen

38 Kommentare

  1. Hi.
    Is there a way to use RollButler in a Group Video chat? Right now we always need to switch back to the server and roll, but it would be very convenient if we could use the butler right in the chat.

    1. Hi Toby,

      after doing some research this seems not to be possible with a bot due to Discord API restrictions. Bots are unfortunately not allowed to join video chat sessions – maybe in a future version of Discord. But I’ll keep an eye on it.

      Best regards,

      Michael

  2. Hi,

    The bot seems to be offline again.

    I assume it maybe got kicked off somehow, because the whole discord service crashed for a short while yesterday.

    Can you confirm if its a bot side problem, or just me?

    1. Hi Liska,

      thank you for your message. As I can see, one of the RollButler Agents lost its connection to Discord. This has been fixed in the meantime.

      BTW: instead of commenting this post, please message me via messenger – this usually works faster.

      Best regards,
      Michael

    1. Hallo Anonymous,

      ich habe soeben einen Funktionstest durchgeführt und der Bot läuft einwandfrei. Ich kann so leider keine genauere Fehleranalyse machen, bzw. Unterstützung anbieten.

      Zu prüfen wären ansonsten in Discord noch die Rechte, also kann der @RollButler im gewünschten Kanal lesen und schreiben?

  3. Super Arbeit! Ich habe den Bot auf meinem Discord hinzugefügt und er läuft echt gut. Nur eine Frage: Wird es noch die Möglichkeit geben die Würfel bei Bedarf explodieren zu lassen? Also bei dem höchsten gewürfelten Wert einmal automatisch neu würfeln zu lassen und das Ergebnis dem vorhergegangenen Ergebnis hinzuzufügen.

    Liebe Grüße
    Strey

    1. Hallo Strey,

      ich empfehle hier mal den Blick in die Kurzreferenz, denn dieses Feature ist natürlich bereits vorhanden ;-)

      Das Ausrufezeichen (!) ist der Parameter der Wahl und lässt den RollButler Würfel mit dem höchstmöglichen Wert erneut werfen. Soll dies rekursiv erfolgen, also auch bei einem neugewürfelten Würfel eine Explosion erfolgen, so nutzt man das doppelte Ausrufungszeichen (!!). Wünscht man eine Explosion auch schon bei kleineren Werten, so kann man den Wert hinter das, bzw. die Ausrufungszeichen setzen.

      Beispiel: /r 3W6!! – lässt alle geworfenen sechsen (auch in den Explosionen) neu würfeln. /r 3W6!!5 lässt die Würfel auch schon bei einer 5 explodieren.

  4. Hallo Michael
    Ich wollte soeben den Rollbutler verwenden. Er erscheint jedoch als Offline. Ich habe so ziemlich jede Einstellung nun ausprobiert. Ist er tatsächlich offline, oder mache ich etwas falsch? Gruss Rico

  5. Hallo Michael,

    kann man bei Bugfixing des Rollbutlers irgendwie unterstützen?

    Aktuell ist uns aufgefallen, dass er im DSA Modus die Rechnung des Ergebnisses manchmal falsch hinkriegt, und den eigentlich überwürfelten Wert anstatt abzuziehen draufschlägt. Beispiel /r _dsa(15;16;11;5) mit Ergebnis 11 19 10 zeigt einen Rest von 8 an statt einen Rest von 2. (15 -> 11 passt, 16 -> 19 = -3, 11 -> 10 passt, 5-3 = 2)

    Falls ich da aber irgendwo einen Merge Request einstellen kann für biete ich auch gerne Unterstützung an :-).

    Danke für das Tool,

    Viele Grüße

    1. Hallo Jan,

      danke für die Fehlermeldung. Ich habe dank der qualifizierten Beschreibung den Fehler nachstellen können und damit die Ursache gefunden sowie behoben, sodass die Berechnung nun wieder korrekt läuft.

      Schönen Gruß,
      Michael

  6. Hallo,
    Bei mir ist der Roll Butler jetzt seid ein paar Stunden offline. Was kann ich machen damit er wieder online ist. Liebe Grüße
    Grumpy.

  7. Ich will nächsten Freitag eine Pen and Papier Runde beginnen und habe heute festgestellt, dass der Bot offline ist und ich ihn nicht wieder online bekomme.

        1. Hi, der Fehler ist bekannt, allerdings keiner, der auf Seiten des RollButlers zu suchen ist. Soweit ich das bislang eruieren konnte kommen dafür verschiedene Ursachen in Frage:

          – Discord spielt aktuell mit sogenannten Slash-Befehlen herum. Das ist noch in der Testphase und könnte daher zu dem besagten Effekt führen
          – Das wackelnde Fenster kommt auch dann, wenn die Verbindung vom Client zu Discord nicht mehr funktioniert, bzw. der Slow Modus aktiviert ist

          Oft ist das Phänomen nach einiger Zeit wieder verschwunden.

          Workaround:
          Nutze einen der alternativen Befehle für den RollButler, also /r, /roll, /rbr oder /rbroll.

          Ich prüfe derzeit die Möglichkeit einen anderen Initiator als „/“ zu ermöglichen.

  8. Habe gestern Rollbutler in einen Discord Server integriert, er funktionierte ohne Probleme.

    Heute wird er konsequent als Offline angezeigt (in anderen Servern funktioniert er einwandfrei), wenn ich einen privaten Chat mit ihm mache, funktioniert er auch.

    Irgendwelche Ratschläge, was ich tun könnte? Danke. :0)

      1. Das Problem besteht bei mir leider auch jetzt noch. Auf einigen Servern läuft er, auf anderen nicht. Danke schonmal für den tollen Support!

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.