Änderungen

Wechseln zu: Navigation, Suche

CodeSnippets

794 Bytes hinzugefügt, 22:14, 6. Mär. 2017
K
keine Bearbeitungszusammenfassung
===Einfacher ZB-Grundaufbau===
Einführungstext (Z4), dann erste Talentprobe (Z5) und wenn diese gelingt, eine weitere (Z11), danach EP-Vergabe (Z14,18) und wenn beide Proben positiv verliefen, auch Gewinn eines Gegenstands (Z19); Texte nur zwischen p und /p:
<code syntaxhighlight lang="xml n">
<?xml version="1.0" encoding="UTF-8"?>
<!-- Kommentar zu Auftreten, Autor, Besonderheiten (z.B. ob Humor-ZB) -->
</challenge>
</scene>
</codesyntaxhighlight>
===Einfacher ZB-Grundaufbau mit variierenden Textstücken===
Viele Begegnungen haben variierende Textinhalte, die aber das gleiche beschreiben, dadurch wird für Abwechselung innerhalb einer ZB gesorgt und es ist nicht immer der gleiche langweilige Text, den man sofort erkennt. Die ist noch besser einsetzbar für gleichwertige Ereignisse, wo also nicht jeder Text innerhalb der ZB aufeinander aufbauen muss und sich auch von den gleichwertigen cases unterscheiden kann.
<code syntaxhighlight lang="xml n">
<?xml version="1.0" encoding="UTF-8"?>
<!-- Kommentar zu Auftreten, Autor, Besonderheiten (z.B. ob Humor-ZB) -->
</challenge>
</scene>
</codesyntaxhighlight>
===ZB mit Voraussetzung===
In Z2 wird eine Talentvoraussetzung (auch möglich: Gegenstand X muss vorhanden sein - has item="X|Y|Z") abgefragt, der Char muss als eines der angegebenen Talent auf dem angegeben Mod haben, sonst wird der success-Zweig nicht ausgeführt (in dem der Charakter einen Gegenstand erhält) und es bleibt nur ein Trösttext (in diesem Falle mit einer anderen Probe, um noch etwas EP zu erhalten)...
<code syntaxhighlight lang="xml n">
<has talent="X|Y" mod="+X">
<success>
</failure>
</has>
</codesyntaxhighlight>
==Talente==
===Einfache Talentprobe===
<code syntaxhighlight lang="xml n">
<challenge talent="Talent" mod="+X">
<success>
</failure>
</challenge>
</codesyntaxhighlight>
===Erleichterte Talentprobe durch Gegenstände===
In Z1 wird abgefragt, ob einer der angegebenen Gegenstände vorhanden ist, wenn ja, wir die Probe erleichtert (Z3), ansonsten erschwert durchgeführt (Z13):
<code syntaxhighlight lang="xml n">
<has item="X|Y">
<success>
</failure>
</has>
</codesyntaxhighlight>
===Alternative Talentabfrage===
Anmerkung: Dies betrifft vor allem Talente, die eher selten sind und wo der Held auf ein Talent ausweichen kann, das er ziemlich sicher hat. Ansonsten könnte im failure-Zweig des ersten has talent auch ein zweites has talent eingebaut werden.
<code syntaxhighlight lang="xml n">
<has talent="Talent1">
<success>
</failure>
</has>
</codesyntaxhighlight>
===Verbesserte modifizierte Probe===
Mit dieser Methode kann man eine Probe recht übersichtlich mit mehreren Faktoren modifizieren. Neben Ausrüstung sind auch andere Sachen wie Variablen oder unterstützende Talente möglich.
<code syntaxhighlight lang="xml n">
<store name="probenvariable_1" scope="quest">5</store><!-- Probe ohne Ausrüstung um 5 erschwert. -->
</challenge>
</codesyntaxhighlight>
===Mann oder Frau?===
In Z3 wird der Text für Männer ausgegeben, in Z6 der für Frauen.
<code syntaxhighlight lang="xml n">
<switch attribute="gender">
<case value="male">
</else>
</switch>
</codesyntaxhighlight>
Oder auch direkt in den Text einbinden:
<code syntaxhighlight lang="xml n">
<if attribute="gender" equals="female" null="Ein geschlechtsloses Wesen" then="Eine junge Frau" else="Ein junger Mann"/> kommt dir entgegen.
</codesyntaxhighlight>
===Hat der Held soundsoviel Geld?===
Wenn es wichtig ist, ob der Held einen Mindestbetrag an Geld dabei hat.
<code syntaxhighlight lang="xml n">
<has attribute="cash" min="X">
<success>
</failure>
</has>
</codesyntaxhighlight>
===Wurde der Held verletzt?===
Wenn es wichtig ist, ob der Held in einem Kampf Schadenspunkte bekommen hatte.
<code syntaxhighlight lang="xml n">
<store name="LEPvorher" scope="quest"><get attribute="LEP"/></store>
#Prügelei ...
</else>
</switch>
</codesyntaxhighlight>
==nützliche Gegenstands-Kombinationen==
===Schreibzeug?===
Für Schreibzeug gibt es viele Kombinationen, daher steht dafür ein Makro zur Verfügung
<code syntaxhighlight lang="xml n">
<store name="hatSchreibzeug"/>
<p>Der Held hat
</switch>
</p>
</codesyntaxhighlight>
Ggf. stellt der Editor die Include-Datei als nicht vorhanden dar. Das bitte einfach ignorieren. Zum einen liegt das daran, dass der absolute Pfad noch nicht richtig aufgelöst wird, zum anderen daran, dass diese Datei ggf. lokal gar nicht zur Verfügung steht.
===Zufallstexte===
Eine normale Zufallsauswahl, jeder Case ist gleichberechtigt.
<code syntaxhighlight lang="xml n">
<random>
<case>
</case>
</random>
</codesyntaxhighlight>
===Prozentuale Zufallsauswahl===
Wenn man die Ereignisse einer Zufallsauswahl etwas steuern will, weil manches häufiger als anderes auftreten soll.
Zuerst die Variable "zufall" setzen, so:
<code syntaxhighlight lang="xml n"><set name="zufall" value="1...100"/></codesyntaxhighlight>
oder so:
<code syntaxhighlight lang="xml n"><set name="zufall" value="$[W100]"/></codesyntaxhighlight>
Dann die möglichen Ergebnisse:
<code syntaxhighlight lang="xml n">
<switch name="zufall">
<case min="1" max="49">
</else>
</switch>
</codesyntaxhighlight>
==Bewertung unterschiedlicher Ausrüstung bei Proben==
Bei Proben sind unterschiedliche Gegenstände oft unterschiedlich nützlich. Folgendes System erlaubt eine einfache aber detaillierte Nutzung verschiedener Gegenstände. Man muss nur noch die entsprechenden Gegenstände einfügen (Getrennt mit | wenn mehrere in Frage kommen) und den Modi auf die Probe festlegen. Bei fehlender Ausrüstung entscheidet der Schreiber, ob und wie es weiter geht (hoher Malus auf die Probe oder einfach nicht möglich):
<code syntaxhighlight lang="xml n">
<has item="Gute Ausrüstung|Andere gute Ausrüstung">
</challenge>
</codesyntaxhighlight>
==Mehrmaliges Verwenden mit <store> und <switch> verhindern==
Mittels <store> und <switch> kann man zB eine mehrmalige Benutzung bzw. mehrmaligen Besuch eines Ortes unterbinden.
<code syntaxhighlight lang="xml n">
<switch name="ValName">
<null>
</else>
</switch>
</codesyntaxhighlight>
''ValName''stellt den Variablennamen dar, dieser kann frei vergeben werden.
<code syntaxhighlight lang="xml n">
<switch name="besuchtTaverne">
<null>
</else>
</switch>
</codesyntaxhighlight>
==Gruppenzeug==
<p>Name: <get attribute="name"/></p>
</for>
</codesyntaxhighlight>
===Einer Gruppe (von selektierten) Helden X eines Gegenstandes wegnehmen===
'''Achtung Stolperstein:''' Nach Aufruf dieser Routine ist nurnoch ein Held selektiert. Außerdem wird die Variable ''anzahl_wegzuwerfen'' überschrieben (verringert)!
<code syntaxhighlight lang="xml n">
<!-- Routine wirft bis zu "anzahl_wegzuwerfen" Gegenstände "wegzuwerfender_gegenstand" weg. Bonus: Speichert die Anzahl tatsächlich weggeworfenen Gegenstände in "anzahl_weggeworfen". Funktioniert auch für Einzelhelden. -->
<retain name="entferne_x_dieses_gegenstandes" id="entferne_gegenstaende">
</for>
</retain>
</codesyntaxhighlight>
==Sonstiges==
Datei 1:
<code syntaxhighlight lang="xml n">
<q>Text informiert SC darüber, dass er einige Zeit in der Queste verbleiben muss.</q>
</ul>
</codesyntaxhighlight>
Datei 2 (raus.xml):
<code syntaxhighlight lang="xml n">
<has name="held_wird_eingesperrt">
</failure>
</has>
</codesyntaxhighlight>
=== Jahreszeiten ===
''Nordhalbkugel''
<code syntaxhighlight lang="xml n">
<switch attribute="monat">
</switch>
</codesyntaxhighlight>
Für die ''Südhalbkugel'' gilt entsprechend der nachfolgende Quelltext. Beachte bitte, dass der Äquator ''sehr'' weit im Süden verläuft und nicht zwischen den zwei Kontinenten, siehe dazu [[Antamar_Welt#Der_Kontinent|hier]] einige Karten.
<code syntaxhighlight lang="xml n">
<switch attribute="monat">
</switch>
</codesyntaxhighlight>
=== Zufällige Zuweisung einer anderen ZB ===
Folgende Funktion gilt für ZBs, um es zu ermöglichen, dass bei einer misslungenen Startbedingung, statt der ursprünglichen ZB, eine andere, zufällige ZB ausgeführt wird.
<code syntaxhighlight lang="xml n">
<failure>
<quest status="rejected"/>
</failure>
</codesyntaxhighlight>
=== Abfrage der Landessprache ===
AOQML ermöglichst eine Abfrage der Region, in der sich ein Char gerade befindet, nicht aber der dort vorwiegend gesprochenen Landessprache. Folgender Code speichert die Landessprache in der Variable "name" ab. Ob der Held diese spricht, ist in der Variable "kannsprache" gespeichert.
<code syntaxhighlight lang="xml n">
<switch attribute="site_staatenbund">
<case val="Heiliges Kaiserreich">
</success>
</has>
</codesyntaxhighlight>
=== Heldeneinstellungen bei Kämpfen im Orkreich beachten ===
Diese Vorlage dient zur Abfrage der Heldeneinstellungen (Auftreten: offen-heimlich; im Kampf: aggressiv-beschwichtigend). Um einen Konsens zu finden, wie man die Heldeneinstellungen berücksichtigen könnte, werden Richtlinien angeboten. Jeder Autor ist jedoch frei in seinen Entscheidungen und kann auch von den Richtlinien abweichen.
<code syntaxhighlight lang="xml n">
<switch attribute="vorgehen" >
<case val="offen">
</else>
</switch>
</codesyntaxhighlight>
<code syntaxhighlight lang="xml n">
<switch attribute="vorgehen" >
<case val="offen">
</else>
</switch>
</codesyntaxhighlight>
=== Mondphasen durchgehen ===
Folgender Code beinhaltet sämtliche mögliche Mondphasen in ihren Kombinationsmöglichkeiten. Je nach Anwendungsbereich, kann der ''switch'' auf das Attribut ''tag'' auch ausgegliedert werden.
<code syntaxhighlight lang="xml n">
<switch attribute="monat">
<case value="Lichtmond|Liebesmond|Ahnenmond">
</case>
</switch>
</codesyntaxhighlight>
=== Permanente Steigerungen ===
3.459
Bearbeitungen

Navigationsmenü