Betatester gesucht für Discord DSA Bot
Verfasst: 04.09.2018 19:56
Hallo zusammen.
Ich habe da einen DSA Bot für Discord. Der hat als Würfelbot angefangen, mittlerweile kann er ein bissel mehr als das. Gesucht werden nun Spieler oder Spielrunden, die sich das gerne mal ansehen würden und mir Rückmeldung geben, was gut und vor allem, was nicht so gut ist. Und was fehlt. Und alles andere auch. Nebenbei kann man das Ding natürlich auch einfach benutzen. Ziel des Bots war bisher, uns möglichst viel Zeit beim Kämpfen zu sparen.
Sonderfertigkeiten
- Würfeln in allen Varianten
- Eilige Attacke und Parade
- Trefferzonen und Patzer
- Iniliste
- Spielfelder
Würfeln
Natürlich kann der Bot 3W20 werfen
.3d20
für 3w20 führt zu:
@DerGeier (3d20:) 13 + 19 + 12 ( = 44)
Und auch eine (fast) beliebige Anzahl W6
.d
.3d6
.2d6+4
.6d6-6
@DerGeier (d:) 2 ( = 2)
@DerGeier (3d6:) 1 + 6 + 3 ( = 10)
@DerGeier (2d6+4:) 5 + 2 ( + 4 = 11)
@DerGeier (6d6-6:) 5 + 6 + 3 + 3 + 2 + 4 ( - 6 = 17)
Zusätzlich merkt sich der Bot deinen letzten Wurf und führt ihn auf Befehl (Eingabe einzelner Punkt: ".") erneut aus, davon ausgehend, daß in einer DSA-Runde fast ständig 3w20 geworfen werden und keiner Lust hat, den generischen Befehl ".3d20" ständig neu einzutippen.
.
für die Wiederholung des letzten gespeicherten Wurfes:
@DerGeier (6d6-6:) 2 + 4 + 6 + 2 + 2 + 5 ( - 6 = 15)
Eilige Attacke und Parade
Der Bot würfelt Attacke, Parade, Trefferpunkte und Trefferzone in einem einzelnen Befehl (entweder ".at" oder als einzelnes Zeichen ein Komma: ","). Sollten Attacke oder Parade eine 20 zeigen, gibts auch noch einen Wurf auf die Patzertabelle. Den jeweils zweiten Wurf in den Zeilen AT und PA kann man zur Bestätigung eines eventuellen Patzers nutzen. Die TP mußt du (zurzeit noch) selbst zusammenzählen, ebenso mußt du von Hand zu Fuß im Kopf bestimmen, ob der Treffer für eine Wunde ausreicht und die Auswirkungen der Trefferzonenzeile zum Tragen kommen. Derselbe Befehl läßt sich natürlich auch für den Fernkampf benutzen (halt "FK" statt "AT" denken), allerdings ist die Patzertabelle auf den Nahkampf festgelegt.
.at
@DerGeier: Attacke!
AT: 19, 9
PA: 14, 2
TP: 1, 5, 4
Rechtes Bein: AT, PA, GE, INI-Basis –2; GS –1, Dritte Wunde Sturz, kampfunfähig
,
@DerGeier: Attacke!
AT: 7, 14
PA: 20, 4
TP: 2, 2, 2
PATZER: 6: Stolpern. INI-2.
Rechtes Bein: AT, PA, GE, INI-Basis –2; GS –1, Dritte Wunde Sturz, kampfunfähig
Grade die "automatisierte Parade" spart zwar viel Zeit, erfordert aber auch vom Verteidiger, daß er sich entweder vorher überlegt, welches Parademanöver er anwenden möchte oder er muß halt selber würfeln. Dieses aber auch festlegen, bevor er den automatisierten Paradewurf sieht
Trefferzonen und Patzer
Natürlich kann man auch Trefferzonen und Patzer einzeln würfeln.
.hit
@DerGeier Brust: AT, PA, KO, KK –1; +1W6 SP, Dritte Wunde bewusstlos, Blutverlust
.nahkampfpatzer
@DerGeier 10: Waffe verloren. INI-2.
.fernkampfpatzer
@DerGeier 10: Fehlschuß. INI-2.
Iniliste
Natürlich kannst du für Freunde und Feinde und für dich selbst eine INI würfeln oder setzen, und die resultierende INI-Liste dann ausgeben. Spaßig wird diese Sonderfertigkeit aber erst im Zusammenspiel mit den Spielfeldern.
Der Bot würfelt (derzeit) nur den W6 für dich und fügt dich der INI-Liste hinzu. Alle anderen Faktoren aus Aufmerksamkeit und Waffen-INI-Malus mußt du selber bestimmen. Das Ergebnis gibst du dem Bot:
.ini 19
@DerGeier INI: 23
Desgleichen für die Gegner, nur halt hier mit Namen, damit die auch brav in der Liste auftauschen.
.eini Goblin 15
@DerGeier INI: 18
Die resultierende INI-Liste wird dann sortiert angezeigt
.showini
Ini Liste:
23: DerGeier
18: Goblin
Bei einer INI-Änderung kannst du
.setini 17 DerGeier
DerGeier INI: 17
.showini
Ini Liste:
18: Goblin
17: DerGeier
Spielfelder
Auf einem Spielfeld tummeln sich Freunde und Feinde auf einem 2D Raster inklusive Hintergrundbild. Die Tokens lassen sich (derzeit nur mit Befehl, später auch per DragDrop) verschieben. Nebenan gibts nochmal die INI-Liste zu sehen. Derzeit werden die Spielfelder auf krude Art aktualisiert, da haben meine Spieler schon eine hübschere AJAX-Version angefragt. Derzeit aktualisiert sich das Spielfeld alle 15 Sekunden selbst, das flimmert dann so unhübsch.
Die zahlreichen Befehle zum laden und speichern zeigst du so an:
.helpbattle
Ein 15 Felder breites und 10 Felder hohes Spielfeld erstellst du so:
.battle 15 10
Kampffeld erstellt. Bitte würfelt Initiative!
(Benutze .helpbattle um die Kampfbefehle anzuzeigen)
Hier findest du das Kampffeld:
https://dergeier.com/c486581995401379850/
Um ein hübsches Hintergrundbild einzufügen, kannst du es entweder irgendwo ins Netz hochladen und dann die URL einfügen, oder du kopierst es direkt in Discord und nutzt dann deren Link.
.setbg https://cdn.discordapp.com/attachments/ ... nknown.png
Um dich selbst nach irgendwohin zu bewegen, bestimmt du die Feldkoordinaten, wohin du möchtest
.move A1
@DerGeier Du hast dich bewegt. Bitte ladet alle das Kampffeld neu!
Du kannst Gegnerische Tokens, neutrale und sonstige setzen:
.neutral G3 Magier
.neutral J8 Krieger
.neutral I14 Elf
.neutral C14 Zwerg
.rest B9 Fass
.enemy C9 Goblin
All diese Tokens tauschen auch in der INI-Liste auf und lassen sich wie oben eine INI zuweisen
Soll sich nun der Elf bewegen, setzt du ihn einfach "neu". Der Name muß natürlich übereinstimmen.
.neutral F13 Elf
Du kannst alle Tokens bewegen, ihnen eine neue INI oder ein neues Team zuweisen oder sie aus dem Kampfverlauf rauslöschen. Ein Spielfeld kannst du speichern oder laden (und natürlich löschen). Bedenke, daß jeder seine eigenen gespeicherte Spielfelder hat, die auch nur für diesen einen Channel sichtbar sind. Natürlich gibt es auch die Möglichkeit, Spielfelder woanders vorzubereiten und dann zu übertragen. Wenn du dich mit JSON auskennst, kannst du auch Spielfelder offline vorbereiten und dann in einem Schuß einfügen.
.showBattlegrounds: Zeigt alle in diesem Channel gespeicherten Spielfelder an
.showAllBattlegrounds: Zeigt alle für diesen Discordnutzer gespeicherten Spielfelder an, aus allen Channels aus allen Servern
.saveBattleground X: Speichert das Spielfeld unter X und ersetzt bestehende desselben Namens.
.loadBattleground X: Lädt das Spielfeld namens X
.loadOtherBattleground X Y: Lädt das Spielfeld namens X aus Channel Y
.loadThisBattleground: Lädt das Spielfeld aus dem Attachment
.deleteBattleground X: Löscht das Spielfeld namens X
.deleteManyBattlegrounds X Y Z A B C ... : Löscht alle eigenen Spielfelder mit den IDs X Y Z A B C ...
Ich habe da einen DSA Bot für Discord. Der hat als Würfelbot angefangen, mittlerweile kann er ein bissel mehr als das. Gesucht werden nun Spieler oder Spielrunden, die sich das gerne mal ansehen würden und mir Rückmeldung geben, was gut und vor allem, was nicht so gut ist. Und was fehlt. Und alles andere auch. Nebenbei kann man das Ding natürlich auch einfach benutzen. Ziel des Bots war bisher, uns möglichst viel Zeit beim Kämpfen zu sparen.
Sonderfertigkeiten
- Würfeln in allen Varianten
- Eilige Attacke und Parade
- Trefferzonen und Patzer
- Iniliste
- Spielfelder
Würfeln
Natürlich kann der Bot 3W20 werfen
.3d20
für 3w20 führt zu:
@DerGeier (3d20:) 13 + 19 + 12 ( = 44)
Und auch eine (fast) beliebige Anzahl W6
.d
.3d6
.2d6+4
.6d6-6
@DerGeier (d:) 2 ( = 2)
@DerGeier (3d6:) 1 + 6 + 3 ( = 10)
@DerGeier (2d6+4:) 5 + 2 ( + 4 = 11)
@DerGeier (6d6-6:) 5 + 6 + 3 + 3 + 2 + 4 ( - 6 = 17)
Zusätzlich merkt sich der Bot deinen letzten Wurf und führt ihn auf Befehl (Eingabe einzelner Punkt: ".") erneut aus, davon ausgehend, daß in einer DSA-Runde fast ständig 3w20 geworfen werden und keiner Lust hat, den generischen Befehl ".3d20" ständig neu einzutippen.
.
für die Wiederholung des letzten gespeicherten Wurfes:
@DerGeier (6d6-6:) 2 + 4 + 6 + 2 + 2 + 5 ( - 6 = 15)
Eilige Attacke und Parade
Der Bot würfelt Attacke, Parade, Trefferpunkte und Trefferzone in einem einzelnen Befehl (entweder ".at" oder als einzelnes Zeichen ein Komma: ","). Sollten Attacke oder Parade eine 20 zeigen, gibts auch noch einen Wurf auf die Patzertabelle. Den jeweils zweiten Wurf in den Zeilen AT und PA kann man zur Bestätigung eines eventuellen Patzers nutzen. Die TP mußt du (zurzeit noch) selbst zusammenzählen, ebenso mußt du von Hand zu Fuß im Kopf bestimmen, ob der Treffer für eine Wunde ausreicht und die Auswirkungen der Trefferzonenzeile zum Tragen kommen. Derselbe Befehl läßt sich natürlich auch für den Fernkampf benutzen (halt "FK" statt "AT" denken), allerdings ist die Patzertabelle auf den Nahkampf festgelegt.
.at
@DerGeier: Attacke!
AT: 19, 9
PA: 14, 2
TP: 1, 5, 4
Rechtes Bein: AT, PA, GE, INI-Basis –2; GS –1, Dritte Wunde Sturz, kampfunfähig
,
@DerGeier: Attacke!
AT: 7, 14
PA: 20, 4
TP: 2, 2, 2
PATZER: 6: Stolpern. INI-2.
Rechtes Bein: AT, PA, GE, INI-Basis –2; GS –1, Dritte Wunde Sturz, kampfunfähig
Grade die "automatisierte Parade" spart zwar viel Zeit, erfordert aber auch vom Verteidiger, daß er sich entweder vorher überlegt, welches Parademanöver er anwenden möchte oder er muß halt selber würfeln. Dieses aber auch festlegen, bevor er den automatisierten Paradewurf sieht
Trefferzonen und Patzer
Natürlich kann man auch Trefferzonen und Patzer einzeln würfeln.
.hit
@DerGeier Brust: AT, PA, KO, KK –1; +1W6 SP, Dritte Wunde bewusstlos, Blutverlust
.nahkampfpatzer
@DerGeier 10: Waffe verloren. INI-2.
.fernkampfpatzer
@DerGeier 10: Fehlschuß. INI-2.
Iniliste
Natürlich kannst du für Freunde und Feinde und für dich selbst eine INI würfeln oder setzen, und die resultierende INI-Liste dann ausgeben. Spaßig wird diese Sonderfertigkeit aber erst im Zusammenspiel mit den Spielfeldern.
Der Bot würfelt (derzeit) nur den W6 für dich und fügt dich der INI-Liste hinzu. Alle anderen Faktoren aus Aufmerksamkeit und Waffen-INI-Malus mußt du selber bestimmen. Das Ergebnis gibst du dem Bot:
.ini 19
@DerGeier INI: 23
Desgleichen für die Gegner, nur halt hier mit Namen, damit die auch brav in der Liste auftauschen.
.eini Goblin 15
@DerGeier INI: 18
Die resultierende INI-Liste wird dann sortiert angezeigt
.showini
Ini Liste:
23: DerGeier
18: Goblin
Bei einer INI-Änderung kannst du
.setini 17 DerGeier
DerGeier INI: 17
.showini
Ini Liste:
18: Goblin
17: DerGeier
Spielfelder
Auf einem Spielfeld tummeln sich Freunde und Feinde auf einem 2D Raster inklusive Hintergrundbild. Die Tokens lassen sich (derzeit nur mit Befehl, später auch per DragDrop) verschieben. Nebenan gibts nochmal die INI-Liste zu sehen. Derzeit werden die Spielfelder auf krude Art aktualisiert, da haben meine Spieler schon eine hübschere AJAX-Version angefragt. Derzeit aktualisiert sich das Spielfeld alle 15 Sekunden selbst, das flimmert dann so unhübsch.
Die zahlreichen Befehle zum laden und speichern zeigst du so an:
.helpbattle
Ein 15 Felder breites und 10 Felder hohes Spielfeld erstellst du so:
.battle 15 10
Kampffeld erstellt. Bitte würfelt Initiative!
(Benutze .helpbattle um die Kampfbefehle anzuzeigen)
Hier findest du das Kampffeld:
https://dergeier.com/c486581995401379850/
Um ein hübsches Hintergrundbild einzufügen, kannst du es entweder irgendwo ins Netz hochladen und dann die URL einfügen, oder du kopierst es direkt in Discord und nutzt dann deren Link.
.setbg https://cdn.discordapp.com/attachments/ ... nknown.png
Um dich selbst nach irgendwohin zu bewegen, bestimmt du die Feldkoordinaten, wohin du möchtest
.move A1
@DerGeier Du hast dich bewegt. Bitte ladet alle das Kampffeld neu!
Du kannst Gegnerische Tokens, neutrale und sonstige setzen:
.neutral G3 Magier
.neutral J8 Krieger
.neutral I14 Elf
.neutral C14 Zwerg
.rest B9 Fass
.enemy C9 Goblin
All diese Tokens tauschen auch in der INI-Liste auf und lassen sich wie oben eine INI zuweisen
Soll sich nun der Elf bewegen, setzt du ihn einfach "neu". Der Name muß natürlich übereinstimmen.
.neutral F13 Elf
Du kannst alle Tokens bewegen, ihnen eine neue INI oder ein neues Team zuweisen oder sie aus dem Kampfverlauf rauslöschen. Ein Spielfeld kannst du speichern oder laden (und natürlich löschen). Bedenke, daß jeder seine eigenen gespeicherte Spielfelder hat, die auch nur für diesen einen Channel sichtbar sind. Natürlich gibt es auch die Möglichkeit, Spielfelder woanders vorzubereiten und dann zu übertragen. Wenn du dich mit JSON auskennst, kannst du auch Spielfelder offline vorbereiten und dann in einem Schuß einfügen.
.showBattlegrounds: Zeigt alle in diesem Channel gespeicherten Spielfelder an
.showAllBattlegrounds: Zeigt alle für diesen Discordnutzer gespeicherten Spielfelder an, aus allen Channels aus allen Servern
.saveBattleground X: Speichert das Spielfeld unter X und ersetzt bestehende desselben Namens.
.loadBattleground X: Lädt das Spielfeld namens X
.loadOtherBattleground X Y: Lädt das Spielfeld namens X aus Channel Y
.loadThisBattleground: Lädt das Spielfeld aus dem Attachment
.deleteBattleground X: Löscht das Spielfeld namens X
.deleteManyBattlegrounds X Y Z A B C ... : Löscht alle eigenen Spielfelder mit den IDs X Y Z A B C ...