Roll20 Pro Subscriber Macros & Scripts

Der Platz für deine Ausarbeitungen, Vorstellungen von Hausregeln oder Fanprojekten.
Benutzeravatar
Feid
Posts in diesem Topic: 5
Beiträge: 118
Registriert: 31.12.2008 11:34
Wohnort: Tostedt
Kontaktdaten:

Errungenschaften

Roll20 Pro Subscriber Macros & Scripts

Ungelesener Beitrag von Feid » 20.11.2020 23:25

Mit der Pro Variante von Roll20 kann man bekanntlich auch Scripts benutzen, das habe ich bei d&d sehr exzessiv gemacht und auch einiges selber geschrieben. Nicht alles kann man für dsa weiter nutzen, aber hier sind die universelleren die ich auch für meine aktuelle Kampagne nutze. Vielleicht kann es ja wer gebrauchen, ich finde sowas total toll. Online spielen kann zwar den Spieltisch nicht ersetzen, aber ich versuche schöne Vorteile des ganzen auszunutzen um ein tolles Erlebnis zu bieten.

1. Das erste ist nur ein Makro das dass Script "TokenMod" benutzt. Da ich davon ausgehe das Spieler einigermaßen verantwortungsvoll sind (höhö) habe ich diese Macro für alle geteilt und als Token Action festgelegt. Nun kann jeder Spieler für sich selbst Licht anmachen, je nachdem welche Lichtquelle er dabei hat

Code: Alles auswählen

!token-mod --set ?{Vision|Fackel, light_radius#6 light_dimradius#3 light_hassight#yes light_angle#360 light_otherplayers#yes|
Öl Lampe, light_radius#3 light_dimradius#1 light_hassight#yes light_angle#360 light_otherplayers#yes|
Laterne, light_radius#9 light_dimradius#7 light_hassight#yes light_angle#360 light_otherplayers#yes|
Kerze, light_radius#1 light_dimradius#=0.5 light_hassight#yes light_angle#360 light_otherplayers#yes|
Aus, light_radius#0.1 light_dimradius#=0.1 light_hassight#yes light_angle#360 light_otherplayers#no
}
2. Dieses script habe ich für meine Frau geschrieben, da ihr Held sich verwandeln konnte und es einigermaßen stylisch aussehen sollte :)
https://github.com/elcool0r/roll20-hengenojutsu
Bild

3. Das letzte was für DSA auch funktionieren könnte wäre mein Background changer. Ich habe bei Patreon Künstlern viele Karten gekauft die oft Tag/Nacht Versionen enthalten haben, also habe ich dafür ein Plugin gebaut um diese leicht zu wechseln.
https://github.com/elcool0r/bgchange
Bild

4. Nur ein just4fun Macro. Jeder DarkSouls Spieler kennt den "You died" Screen und das Macro postet diesen im Chat :)

Code: Alles auswählen

/desc You Died
/desc [Image](http://i.imgur.com/9DR2apr.jpg)

Perceval
Posts in diesem Topic: 1
Beiträge: 270
Registriert: 06.09.2003 13:40
Wohnort: Würzburg
Geschlecht:

Auszeichnungen

Errungenschaften

Roll20 Pro Subscriber Macros & Scripts

Ungelesener Beitrag von Perceval » 21.11.2020 11:08

Vielen Dank :)

Benutzeravatar
Feid
Posts in diesem Topic: 5
Beiträge: 118
Registriert: 31.12.2008 11:34
Wohnort: Tostedt
Kontaktdaten:

Errungenschaften

Roll20 Pro Subscriber Macros & Scripts

Ungelesener Beitrag von Feid » 21.11.2020 13:23

Habe gerade noch für heute Abend das Skript "PageFX" eingebaut. Ein bissel Lagerfeuer Effekt für die Stimmung :)
Bild

Der FX Effekt ist selber gebaut. Die PageFX Effekt Zeit Konfiguration ist mit 5000/10000 am schönsten finde ich:
campfire

Code: Alles auswählen

{
	"angle": 0,
	"angleRandom": 180,
	"duration": -1,
	"emissionRate": 1000,
	"endColour": [191, 94, 26, 1],
	"endColourRandom": [30, 20, 0, 0.25],
	"gravity": {"x":0.01, "y":0.01},
	"lifeSpan": 50,
	"lifeSpanRandom": 15,
	"maxParticles": 100,
	"size": 2,
	"sizeRandom": 5,
	"speed": 0.3,
	"speedRandom": 0.8,
	"startColour": [220, 143, 35, 1],
	"startColourRandom": [32, 0, 0, 0.25]
}

Benutzeravatar
Feid
Posts in diesem Topic: 5
Beiträge: 118
Registriert: 31.12.2008 11:34
Wohnort: Tostedt
Kontaktdaten:

Errungenschaften

Roll20 Pro Subscriber Macros & Scripts

Ungelesener Beitrag von Feid » 21.11.2020 14:54

Ich habe noch fix ein kleines script geschrieben was für dsa4.1 Patzer & Glückliche Würfe direkt anzeigt. Nach dem Wurf wird man zwar vor einem möglichen Patzer gewarnt, aber man muss trotzdem nochmal nachschauen. Spieler mit Tablets könnten es gar nicht überprüfen (soweit ich weiss).

Es ist allerdings noch in der Testphase:

Code: Alles auswählen

on('chat:message', function (msg) {
    if (msg.inlinerolls) {
        if (msg.inlinerolls.length > 8) {
            let result = []
            result.push(msg.inlinerolls[9].results.rolls[0].rolls[0][1].rolls[0][0].results[0].v);
            result.push(msg.inlinerolls[9].results.rolls[0].rolls[0][3].rolls[0][0].results[0].v);
            result.push(msg.inlinerolls[9].results.rolls[0].rolls[0][5].rolls[0][0].results[0].v);
            if (result.filter(x => x==20).length == 2) {
                sendChat(msg.who, "<div class='sheet-rolltemplate-simple' style='margin-top:-7px;'><div class='sheet-container'><div class='sheet-label' style='margin-top:5px;'><span>Würfel Wurf: " + result[0] + " / " + result[1] + " / " + result[2] + " - Doppel 20!<br></span></div></div></div>");
            } else if (result.filter(x => x==20).length == 3) {
                sendChat(msg.who, "<div class='sheet-rolltemplate-simple' style='margin-top:-7px;'><div class='sheet-container'><div class='sheet-label' style='margin-top:5px;'><span>Würfel Wurf: " + result[0] + " / " + result[1] + " / " + result[2] + " - Dreifach 20!<br></span></div></div></div>");
            } else if (result.filter(x => x==1).length == 2) {
                sendChat(msg.who, "<div class='sheet-rolltemplate-simple' style='margin-top:-7px;'><div class='sheet-container'><div class='sheet-label' style='margin-top:5px;'><span>Würfel Wurf: " + result[0] + " / " + result[1] + " / " + result[2] + " - Doppel 1!<br></span></div></div></div>");
            } else if (result.filter(x => x==1).length == 3) {
                sendChat(msg.who, "<div class='sheet-rolltemplate-simple' style='margin-top:-7px;'><div class='sheet-container'><div class='sheet-label' style='margin-top:5px;'><span>Würfel Wurf: " + result[0] + " / " + result[1] + " / " + result[2] + " - Dreifach 1!<br></span></div></div></div>");
            } else {
                sendChat(msg.who, "<div class='sheet-rolltemplate-simple' style='margin-top:-7px;'><div class='sheet-container'><div class='sheet-label' style='margin-top:5px;'><span>Würfel Wurf: " + result[0] + " / " + result[1] + " / " + result[2] + "<br></span></div></div></div>");
            }
        }
    }
});
Zuletzt geändert von Feid am 26.11.2020 13:01, insgesamt 2-mal geändert.

Benutzeravatar
Bluthandel
Posts in diesem Topic: 1
Beiträge: 466
Registriert: 08.11.2011 15:31
Wohnort: Berlin
Kontaktdaten:

Errungenschaften

Roll20 Pro Subscriber Macros & Scripts

Ungelesener Beitrag von Bluthandel » 21.11.2020 15:30

Feid hat geschrieben:
21.11.2020 14:54
Ich habe noch fix ein kleines script geschrieben was für dsa4.1 Patzer & Glückliche Würfe direkt anzeigt. Nach dem Wurf wird man zwar vor einem möglichen Patzer gewarnt, aber man muss trotzdem nochmal nachschauen. Spieler mit Tablets könnten es gar nicht überprüfen (soweit ich weiss).

Es ist allerdings noch in der Testphase:

Code: Alles auswählen

on('chat:message', function (msg) {
    if (msg.inlinerolls) {
        if (msg.inlinerolls.length > 8) {
            let result = []
            result.push(msg.inlinerolls[9].results.rolls[0].rolls[0][1].rolls[0][0].results[0].v);
            result.push(msg.inlinerolls[9].results.rolls[0].rolls[0][3].rolls[0][0].results[0].v);
            result.push(msg.inlinerolls[9].results.rolls[0].rolls[0][5].rolls[0][0].results[0].v);
            if (result.filter(x => x==20).length == 2) {
                sendChat(msg.who, "<div class='sheet-rolltemplate-simple' style='margin-top:-7px;'><div class='sheet-container'><div class='sheet-label' style='margin-top:5px;'><span>" + result + " - Doppel 20!<br></span></div></div></div>");
            } else if (result.filter(x => x==20).length == 3) {
                sendChat(msg.who, "<div class='sheet-rolltemplate-simple' style='margin-top:-7px;'><div class='sheet-container'><div class='sheet-label' style='margin-top:5px;'><span>" + result + " - Dreifach 20!<br></span></div></div></div>");
            } else if (result.filter(x => x==1).length == 2) {
                sendChat(msg.who, "<div class='sheet-rolltemplate-simple' style='margin-top:-7px;'><div class='sheet-container'><div class='sheet-label' style='margin-top:5px;'><span>" + result + " - Doppel 1!<br></span></div></div></div>");
            } else if (result.filter(x => x==1).length == 3) {
                sendChat(msg.who, "<div class='sheet-rolltemplate-simple' style='margin-top:-7px;'><div class='sheet-container'><div class='sheet-label' style='margin-top:5px;'><span>" + result + " - Dreifach 1!<br></span></div></div></div>");
            }
        }
    }
});
Ui, das läuft also mit dem DSA 4.1 Heldenbogen in roll20?
Meistere: 2 Gruppen (langfristiges "MPA") Postapokalyptisches DSA 1029 BF (Spielberichte im Forum); Al Anfa vs Horasreich (wechselnde SL)
Spiele: VeG; QuanionsQueste
Der größte Coup des Namenlosen war es, die DSA-Community jahrelang glauben zu machen, es gäbe ihn nicht mehr und alles derisch fortschreitende "Böse" sei stets einem skurrilen Nandus-Alveraniar anzulasten...

Benutzeravatar
Feid
Posts in diesem Topic: 5
Beiträge: 118
Registriert: 31.12.2008 11:34
Wohnort: Tostedt
Kontaktdaten:

Errungenschaften

Roll20 Pro Subscriber Macros & Scripts

Ungelesener Beitrag von Feid » 21.11.2020 15:33

Ja genau. Aber ich hab’s bisher nur kurz getestet. Nachher wird wieder gespielt, mal sehen ob es gut klappt :)

Edit: das Skript kam gut an und ist heute auch mehrfach angeschlagen. Ich bin echt zufrieden. Mal sehen was man sonst noch so bauen kann 😂

Benutzeravatar
Feid
Posts in diesem Topic: 5
Beiträge: 118
Registriert: 31.12.2008 11:34
Wohnort: Tostedt
Kontaktdaten:

Errungenschaften

Roll20 Pro Subscriber Macros & Scripts

Ungelesener Beitrag von Feid » 26.11.2020 13:12

Ich habe das Würfel script nun noch geupdated das jeder Wurf angezeigt wird. Ausserdem habe ich das DSA4 Character Sheet angepasst
  • Mehrfach 1/20 Warnung entfernt
  • Talentproben neu gegliedert damit es besser sichtbar ist ob und wie die Probe geschafft wurde
  • Attribut Wert für Quanionsqueste hinzugefügt (Zeile 246 aktuell kommentiert)
Bild

Nur kleine Änderungen, aber irgendwie hatte mich das gestört :D

https://gist.github.com/elcool0r/5b98f7 ... 6d5f28633d

Antworten