Änderungen

Wechseln zu: Navigation, Suche

Challenge

7.307 Bytes hinzugefügt, 12:17, 27. Jul. 2021
automatische EP-Vergabe: Link zu auto-EP
<code xml><challenge talent="..."|quality="..." [mod="..."] [show="..."] [name="..."] [scope="..."] [result="..."] [hero-quantity="..."]> [<success [min="..."] [max="..."] [double="double"] [select-heroes="false"]>...</success>] [<failure [min="..."] [max="..."] [double="double"] [select-heroes="false"]>...</failure>]
</challenge></code>
An Stelle von ... wird hier eine Talentbezeichnung angegeben, wie sie in
der [[Fertigkeiten|Talentübersicht ]] zu sehen ist, oder eine [[Besondere Werte|Variable]]. Bei mehrfachem Vorkommen in verschiedenen
Kategorien (meist Sprache/Schrift) wird der Kategorie-Bezeichner so davor
gestellt: talent="Sprache/Isdira" bzw. talent="Schrift/Isdira".
 
Es können auch Talentalternativen angegeben werden, falls der Held das gewünschte Talent nicht aktiviert hat, siehe weiter unten den Abschnitt "Ableitung auf artverwandte Talente".
Es kann exklusiv entweder das talent- oder das quality-Attribut angegeben werden.
Bei Angabe von name="..." mit einer belegten Variablen aus früheren <challenge>s können auch beide entfallen.
==quality="..."==
An Stelle von ... wird hier eine Eigenschaft (Mut, Klugheit etc.) in Formihrer zweibuchstabigen Abkürzung angegeben, also MU(Mut), IQ (Intelligenz), IN (Intuition), KLWI (Willenskraft),CH (Charisma), FF (Fingerfertigkeit), GE (Gewandtheit), KO (Konstitution) oder ST (Stärke)...<br> Auch Pseudo-Eigenschaften wie Ausdauer (AU), Lebenspunkte (LEP), Magieresistenz (MR) oder Ausweichen (AUSWEICHEN) können hier abgefragt geprobt werden oder , genauso wie eine [[Besondere Werte|Variable]] die eine solche Abkürzung enthält.
Es kann exklusiv entweder das talent- oder das quality-Attribut angegeben werden.
"-2" oder "+5". Auch [[Besondere Werte]] sind möglich: "-2..-+5".
Die Vorgabe ist "0".
 
==mod="${variablenname}"==
 
Man kann auch einen Modifikator aus einer Variable holen, indem man mod="${variablenname}" verwendet und als Variable eine positive oder negative Zahl speichert. Dadurch kann man z.B. den Effekt von Ausrüstung oder Entscheidungen auf eine Probe einrechnen, den man vorher durch store gespeichert und ggf. durch eval oder set verändert hat.
 
Beispiel 1:
 
<code xml>
<has item="Kletterseil">
<success>
<store name="klettermodi" scope="quest">-3</store>
</success>
<failure>
<store name="klettermodi" scope="quest">0</store>
</failure>
</has>
 
<challenge talent="Klettern" mod="${klettermodi}">
<success>
<include target="probe_geschafft"/>
</success>
<failure>
<include target="probe_misslungen"/>
</failure>
</challenge>
</code>
 
Beispiel 2:
 
<code xml>
<!-- Erst den normalen Modi als Variable speichern. -->
<store name="klettermodi" scope="quest">5</store>
 
<!-- Dann Ausrüstung abfragen. -->
<has item="Kletterseil">
<success>
<set name="klettermodi" dec="2"/>
</success>
<failure>
</failure>
</has>
 
<!-- Jetzt können auch mehrere Boni addiert werden! -->
<has item="Kletterhaken">
<success>
<set name="klettermodi" dec="2"/>
</success>
<failure>
</failure>
</has>
 
<!-- Und das Ergebnis dann auswerten. -->
<challenge talent="Klettern" mod="${klettermodi}">
<success>
<include target="probe_geschafft"/>
</success>
<failure>
<include target="probe_misslungen"/>
</failure>
</challenge>
</code>
==show="..."==
<challenge name="ProbeNr1">
<success>Hurra, dir ist es gelungen!</success> <failure>Oh weh, das ist dir aber Misslungen! </failure>
</challenge>
</code>
 
'''In Gruppenbegegnungen/-Questen:'''
Mit der Angabe eines Namens kann später ein Held ermittelt werden, der die Probe am besten oder
am schlechtesten absolviert hat, siehe Beispiele im [[hero]]-Tag unter "by-challenge".
 
 
==scope="..."==
 
Mit "scene" wird festgelegt, dass die mit "name=..." angelegte Variable nur in der laufenden Szene (inklusive "include"s) verfügbar ist.
Mit "quest" ist die Variable während der Laufzeit der gesamten Quest verfügbar.
 
Das gilt beides auch für die Verwendung in "<hero ... by-challenge="..."/>".
 
==result="..."==
verwendet wird. Dieses Attribut ist nur bei DEBUG aktiv und dient dem
Austesten aller Zweige. Vorgabe ist, das Würfelergebnis zu verwenden.
 
Zum Beispiel bewirkt der folgende Code, dass automatisch ein FeW* von -3 gesetzt wird (gilt nur für die Testumgebung), d.h. die Eigenschaften und Talente des Helden werden gar nicht erst geprobt.
<code xml n>
<challenge talent="Singen" mod="5" result="-3">
...
</code>
Entsprechend würde in diesem Fall automatisch der failure-Zweig ausgeführt werden.
 
==hero-quantity="..."==
Dieser Tag wird '''nur bei Gruppenbegegnungen''' ausgewertet. Als Angabe wird eine Zahl (>=1) oder 'all' erwartet.<br />
Die Zahl gibt an, wie viele Helden die Probe bestehen müssen, damit sie insgesamt als bestanden gilt. Wenn 'all' angegeben, müssen alle Helden der Gruppe die Probe bestehen.<br />
Wenn der Tag nicht angegeben wird, ist standardmäßig 1 eingestellt, d.h. lediglich ein Held in der Gruppe
muss die Probe bestehen, damit die Probe als bestanden gilt.
 
Beispiele:
<code xml n>
<challenge talent="Sinnenschärfe" mod="3">
<success>
<!-- bestanden, wenn mind. ein Held die Probe bestanden hat -->
</success>
</challenge>
 
<challenge quality="ST" mod="2" hero-quantity="2">
<success>
<!-- bestanden, wenn mind. zwei Helden der Gruppe die Probe bestanden haben -->
</success>
</challenge>
 
<challenge talent="Selbstbeherrschung" hero-quantity="all">
<success>
<!-- bestanden, wenn alle Helden der Gruppe die Probe bestanden haben -->
</success>
</challenge>
</code>
 
==id="..."==
'''VERALTET:''' Bitte jetzt ''name="..."'' verwenden,
bei Umstellungen i.d.R. mit ''scope="scene"'', was dann wie früher funktioniert.
==min="...", max="..."==
Mit ... können hier minimal, bzw. maximal TaP FeP angegeben werden. Achtung:
Im negativen Bereich kommt man schnell durcheinander, weil größere Zahlenwerte
natürlich kleinere Zahlen sind! Daher kann man im negativen Bereich auch
einfach das Minuszeichen weglassen und min/max vertauschen. Das ist intuitiver.
Vorgabe: Es wird nur auf Erfolg/Misserfolg ohne weitere Einschränkung geprüft.
 
Nur in Soloquesten und Solozufallsbegegnungen auswertbar.
==double="double"==
Kenzeichnet Kennzeichnet den Zweig als dann auszuführen,wenn bei einer Talentprobe eine doppel 20 (''failure''-tag) oder doppel 1 (''success''-tag) auftritt.Natürlich darf nur jeweils ein ''failure''/''success''-Zweig so markiert werden.Wir der Zweig zusätzlich mit Eine Kombination von ''double'' und ''min/max Atributen gekenzeichnet, kann er auch bei '' ist nicht doppel 1 oder 20 ausgeführt werdenmöglich!
<code xml>
<challenge ... >
<success double="double">Doppel 1</success> <success>Normal geschafft</success> <failure max="9">Normal fehlgeschlagen bzw Fehlgeschlagen und TaW* > -9</failure> <failure min="10" double="double">Doppel 20 oder </failure> <failure>Restliche Failure-Fälle (also keine Doppel 20 und TaW* < -9)</failure></challenge></code> ==select-heroes=='''Gilt nur für Gruppenbegegnungen.''' Im success- oder failure-Zweig kann ein select-heroes="true" angegeben werden.<br />Ist select-heroes="true" im success-Zweig angegeben, bewirkt dies, dass automatisch die Helden selektiert werden, die die Probe bestanden haben.<br />Ist select-heroes="true" im failure-Zweig angegeben, bewirkt dies, dass automatisch die Helden selektiert werden, die die Probe nicht bestanden haben.<br /><code xml><challenge talent="Sinnenschärfe"> <success select-heroes="true"><!-- selektiert die Helden, die die Probe bestanden haben --> ... </success> <failure select-heroes="true"><!-- selektiert die Helden, die die Probe nicht bestanden haben --> ... </failure></challenge></code> ==Ableitung auf artverwandte Talente==Für mehr Flexibilität können alternative Talente genannt werden.Sollte der Held ''Talent1'' nicht aktiviert haben, wird ''Talent2'' gewählt. Zu ''Talent2'' kann in mod eine andere Erschwernis hinterlegt werden.Beispiele: <code xml><challenge talent="Springen|Athletik|Körperbeherrschung" mod="0|5|10"> <!-- Sollte der Held das Talent "Springen" nicht aktiviert haben, wird Athletik geprobt. Sollte auch Athletik nicht aktiv sein, wird Körperbeherrschung geprobt. --> <!-- Erschwernis 0 für Springen, Erschwernis 5 für Athletik, Erschwernis 10für Körperbeherrschung --> <success> <p>Gelungen.</p> </success> <failure> <p>Misslungen.</p> </failure></challenge> <challenge talent="Gaukeleien|Stimmen Imitieren|Fliegen|Akrobatik" mod="8"> <!-- hier gilt Erschwernis 8, egal welches Talent gewählt wird --> <success> <p>Gelungen.</p> </success> <failure> <p>Misslungen.</p> </failure></challenge></code> ==Abfrage, welches Talent zuletzt geprobt wurde==In Variable 'sys:probe' ist die Fertigkeit hinterlegt, welche zuletzt geprobt wurde.Beispiel:<code xml><challenge talent="Springen|Athletik|Körperbeherrschung" mod="0|2|4"> <success> <switch name="sys:probe"> <case val="Springen"> <p>Du springst elegant über die Speergrube.</p> </case> <else> <p>Dank deiner guten <fetch name="sys:probe"/> schaffst du es, die Speergrube zu überwinden.</p> </else> </switch> </success> <failure> <p>Autsch!</p> </failure>
</challenge>
</code>
 ==by-challenge=='''Gilt nur für Gruppenbegegnungen.''' Mit Hilfe des [[hero]]-Tags kann in Gruppenbegegnungen abgefragt werden, welcher Held eine Probe am besten geschafft bzw. meisten verhauen hat. Beispiel:<code xml n><challenge talent="Schleichen" hero-quantity="all" name="Pr1"> <success> <p>Vorsichtig schleicht ihr weiter.</p> </success> <failure><!-- mindestens ein Held hat die Schleichen-Probe versaut! --> <p>Ups!</p> <!-- Welcher Held ist schuld? ;) --> <p><hero output="name" by-challenge="Pr1" select="worst" /> tritt ungünstig auf ein paar Steinchen, was ungeheuren Lärm verursacht...</p> </failure></challenge></code> ==automatische EP-Vergabe== Je nach Knappheit der Probe können automatisch EP vergeben werden. Siehe [[auto-EP]]-Tag. [[Kategorie:AOQML-Tags]]
278
Bearbeitungen

Navigationsmenü