kreuvf / roll20-character-sheets

Kreuvf's fork of the Roll20 Character sheet templates. Do not work with my branches prefixed with "pre", I rebase and force-push them all the time. Check out the YouTube channel for videos on my pull requests.
https://www.youtube.com/user/Isurandil
MIT License
7 stars 6 forks source link

Feld für aktuellen Initiativewert einbauen #76

Open kreuvf opened 3 years ago

kreuvf commented 3 years ago

Da API-Scripts nicht von mir unterstützt werden, kann die aktuelle Initiative auch nicht aus dem Chat etc. pp. ausgelesen werden. Da aber hohe Initiative positive Nebeneffekte hat (WdS, S. 78).

Initiative 20+: +1 FA, PA erleichtert um 1 Initiative 30+: +2 FA, PA erleichtert um 2 Initiative 40+: +3 FA, PA erleichtert um 3

blxydr commented 2 years ago

Standardmäßig wird für das Auslesen der Initiative m.W. @{initiative_bonus} verwendet. Das scheint hier jedoch nicht zu funktionieren. Die API-Sandbox liefert dann folgende Fehlermeldung: "Error: No attribute or sheet field found for character_id -[...] named initiative_bonus"

Ich verwende derzeit GroupInit mit dem DSA4-Charakterbogen und greife dabei auf inibasis2 zu. Da wird dann halt die BE durch Rüstung nicht mit abgezogen und wohl auch keine Waffenmodifikatoren berücksichtigt. Modifikationen durch Wunden sind in inibasis2 enthalten, wie meine Tests ergeben haben.

Wenn ich das richtig sehe, müsste man für ein solches Feld Folgendes berechnen: inibasis2 - BE_RG_INI + INI_mod_hauptwaffe + ShieldParryINI

Edit: Evtl. müsste man auch noch BE_Last berücksichtigen.

kreuvf commented 2 years ago

Seit Einführung des Custom Roll Parsing kann ich aus dem Initiativewurf heraus Attribute setzen, weshalb das prinzipiell problemlos umsetzbar sein sollte. Die gewürfelte Initiative berechnet sich nach (s. Zeile 12266):

{{ini=[[(@{INI_dice_count}d6 + @{INIBasis2} - (@{BE_Last}) - (@{BE_RG_INI}) + ([[@{INI_mod_hauptwaffe}]]) + ([[@{ShieldParryINI}]]) + [[?{Bonus (+) oder Malus (−)|0}d1cs0cf2]])&{tracker}]]}}

blxydr commented 2 years ago

Danke für die Rückmeldung.

Seit Einführung des Custom Roll Parsing kann ich aus dem Initiativewurf heraus Attribute setzen, weshalb das prinzipiell problemlos umsetzbar sein sollte.

Wenn ich das richtig verstehe, dann würde das bedeuten, dass man dann trotzdem noch auf den Button zum Würfeln der Initiative kllicken müsste, richtig?

Genau das würde die Benutzung der GroupInit-API aber ad absurdum führen, da sie für eine ganze Gruppe (nämlich alle markierten Tokens) die INI bestimmt. Dabei übernimmt sie den Wurf selbst, addiert für jeden aber einen gewissen spezifischen Bonus (also z.B. den Basis-Wert) drauf. Genau diesen müsste man dazu eben auslesen können. Bezogen auf die Berechnung der gewürfelten INI heißt das:

Die gewürfelte Initiative berechnet sich nach (s. Zeile 12266): {{ini=[[ (@{INI_dice_count}d6 --> wird hierfür nicht benötigt, da man das in GroupInit einstellen kann/muss

  • @{INIBasis2} --> wird hierfür benötigt
  • (@{BE_Last}) --> wird hierfür benötigt
  • (@{BE_RG_INI}) --> wird hierfür benötigt
  • ([[@{INI_mod_hauptwaffe}]]) --> wid hierfür benötigt
  • ([[@{ShieldParryINI}]]) --> wird hierfür benötigt
  • [[?{Bonus (+) oder Malus (−)|0}d1cs0cf2]])&{tracker}]]}} --> wird hierfür nicht benötigt, da man das in GroupInit einstellen kann/muss

Könntest du ein Attribut einfügen, das die Summe der feststehenden Summanden der INI-Berechnung beinhaltet? Also: INIBasis2 - BE_Last - BE_RG_INI + INI_mod_hauptwaffe + ShieldParryINI Das könnte dann jedes mal angepasst werden, wenn sich einer der o.g. Werte ändert (ich nehme an, das läuft per Listener und wird auch für BE_RG_INI so oder so ähnlich gehandhabt?)

kreuvf commented 2 years ago

Könntest du ein Attribut einfügen, das die Summe der feststehenden Summanden der INI-Berechnung beinhaltet? Also: INIBasis2 - BE_Last - BE_RG_INI + INI_mod_hauptwaffe + ShieldParryINI Das könnte dann jedes mal angepasst werden, wenn sich einer der o.g. Werte ändert (ich nehme an, das läuft per Listener und wird auch für BE_RG_INI so oder so ähnlich gehandhabt?)

Ja, das ist prinzipiell möglich, vereinfacht dann auch den Wurf und einen Listener auf die einzelnen Bestandteile zu setzen, ist jetzt auch nicht so schwer. Ich melde mich, wenn es umgesetzt ist.

blxydr commented 2 years ago

Super, schon mal herzlichen Dank