Änderungen

Wechseln zu: Navigation, Suche

CodeSnippets

284 Bytes hinzugefügt, 23:07, 1. Okt. 2017
Einrückungen konsequent auf 2 Leerzeichen pro Ebene gesetzt und vergessene Ende-Tags eingefügt.
<!-- Kommentar zu Auftreten, Autor, Besonderheiten (z.B. ob Humor-ZB) -->
<scene xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://spiel.antamar.org/Antamar/xml/aoqml/aoqml.xsd">
<p></p> <challenge talent="X"> <failure> <p></p> </failure> <success> <p></p> <challenge talent="X"> <failure> <p></p> <set attribute="EP" inc="X"/> </failure> <success> <p></p> <set attribute="EP" inc="X"/> <take item="X"/> </success> </challenge> </success> </challenge>
</scene>
</syntaxhighlight>
<!-- Kommentar zu Auftreten, Autor, Besonderheiten (z.B. ob Humor-ZB) -->
<scene xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://spiel.antamar.org/Antamar/xml/aoqml/aoqml.xsd">
<p> <random> <case></case> <case></case> <case></case> <case></case> </random> </p>
<challenge talent="" mod="+X"> <failure> <p> <random> <case></case> <case></case> <case></case> <case></case> </random> </p> </failure> <success> <p> <random> <case></case> <case></case> <case></case> <case></case> </random> </p> </success> </challenge>
</scene>
</syntaxhighlight>
<challenge talent="Talent1">
<success>
...
</success>
<failure>
...
</failure>
</challenge>
</success>
<failure>
<challenge talent="Talent2">
<success>
...
</success>
<failure>
...
</failure>
</challenge>
</failure>
</has>
 
</syntaxhighlight>
<has item="XXX"><!-- Man kann auch anderes mit has oder switch abfragen. -->
<success>
<set name="probenvariable_1" dec="2" show="none"/><!-- Malus wird um 2 erleichtert. -->
</success>
<failure>
<!-- Fehlt der Gegenstand, wird nicht modifiziert. -->
</failure>
</has>
<has item="YYY"><!-- Man kann auch anderes mit has oder switch abfragen. -->
<success>
<set name="probenvariable_1" dec="2" show="none"/><!-- Malus wird um 2 erleichtert. -->
</success>
<failure>
<!-- Fehlt der Gegenstand, wird nicht modifiziert. -->
</failure>
</has>
<challenge talent="AOQML-Programmierung" mod="${probenvariable_1}"> <!-- Als Modi wird der Inhalt der Variable gezogen, also 5 ohne Ausrüstung und weniger (also leichter) wenn geeignete Ausrüstung vorhanden. -->
<success>
<!-- Hier dann Ergebnis Erfolg. -->
</success>
<failure>
<!-- Hier Misserfolg. -->
</failure>
</challenge>
</syntaxhighlight>
 
<syntaxhighlight lang="xml">
<store name="LEPvorher" scope="quest"><get attribute="LEP"/></store>
#<!-- Prügelei ...-->
<switch Attribute="LEP">
<case min="${LEPvorher}">
#<!-- Fall: vorher so viele LEP wie nachher oder mehr-->
</case>
<else>
#<!-- Fall: nachher weniger LEP als vorher-->
</else>
</switch>
<syntaxhighlight lang="xml">
<store name="hatSchreibzeug"/>
<p>Der Held hat
<include target="/lib/_hatSchreibzeug"/>
<switch name="hatSchreibzeug">
<case val="true">
Schreibzeug dabei und könnte also etwas aufschreiben.
</case>
<else>
leider kein Schreibzeug dabei und könnte daher nichts aufschreiben.
</else>
</switch>
<switch name="zufall">
<case min="1" max="49">
...für 0-49...
</case>
<case min="50" max="69">
...für 50-69...
</case>
<else>
...für den Rest...
</else>
</switch>
<syntaxhighlight lang="xml">
<switch name="ValName">
<null> <!--Text beim ersten Durchlauf!--> <store name="ValName">ja</store> </null> <case> <!--Text beim erfüllter Bedingung!--> </case> <else> <!--Alternativer Text!--> </else>
</switch>
</syntaxhighlight>
Alternativ kann man auch das [[has|has-Tag]] verwenden.
In dem Im folgenden Beispiel wird durch das Beispiel das jemand am Betreten einer Lokalität verhindert. In diesem Beispiel gibt es nur zwei Möglichkeiten, der ''<case>''-Fall wird somit unnötig.
<syntaxhighlight lang="xml">
<switch name="besuchtTaverne">
<null> <!-- Hier die einmalige Möglichkeit in der Schmiede fragen zu stellen.--> <store name="besuchtTaverne">ja</store> </null> <else> <p>Der Schmied guck dich nur dumm an, was du schon wieder hier willst.</p> </else>
</switch>
</syntaxhighlight>
Die Nachfolgende Routine entfernt von den selektierten Helden insgesamt eine gewünschte Anzahl Gegenstände. Sind nicht genug Gegenstände vorhanden, werden alle entfernt. Die Anzahl entfernter Gegenstände wird gespeichert. Um die Routine auf die gesamte Gruppe anzuwenden, entweder ein ''<select all="true"/>'' einfügen oder ''selected-'' in der for-Schleife entfernen.
'''Achtung Stolperstein:''' Nach Aufruf dieser Routine ist nurnoch nur noch ein Held selektiert. Außerdem wird die Variable ''anzahl_wegzuwerfen'' überschrieben (verringert)!
<syntaxhighlight lang="xml">
<!-- 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. -->
<has name="held_wird_eingesperrt">
<success><!-- Variable existiert noch, Held bleibt eingesperrt. -->
<q>NEIN!</q> <countdown name="held_wird_eingesperrt"/> <ul> <li><choice target="raus">Darf ich gehen?</choice></li> </ul>
</success>
<failure>
<q>Text Held darf gehen/wacht auf.</q> <quest status="ended"/><!-- Oder weiter in der Queste, je nachdem. -->
</failure>
</has>
<switch attribute="monat">
<case val="Ehrenmond|Hoffnungsmond|Wassermond">
<!-- Frühling -->
</case>
<case val="Liebesmond|Weisheitsmond|Erdenmond">
<!-- Sommer -->
</case>
<case val="Heilungsmond|Ahnenmond|Feuermond"> <!-- Herbst -->
</case>
<else> <!-- Winter -->
</else>
 
</switch>
<switch attribute="monat">
<case val="Heilungsmond|Ahnenmond|Feuermond"> <!-- Frühling -->
</case>
<case val="Herdfeuermond|Maskenmond|Lichtmond">
<!-- Sommer -->
</case>
<case val="Ehrenmond|Hoffnungsmond|Wassermond"> <!-- Herbst -->
</case>
<else> <!-- Winter -->
</else>
 
</switch>
<syntaxhighlight lang="xml">
<failure>
<quest status="rejected"/>
</failure>
</syntaxhighlight>
<switch attribute="site_staatenbund">
<case val="Heiliges Kaiserreich">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Nuovo Imperio Aurecciani">
<store name="sprache" scope="quest">Aurento</store>
</case>
<case val="Großsultanat Emreia">
<store name="sprache" scope="quest">Bajidai</store>
</case>
<case val="Kaiserreich des Südsterns">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Godentum Nordahejmr">
<store name="sprache" scope="quest">Nordahejmisch</store> <has talent="Nordahejmisch" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</case>
<case val="Orkreich">
<store name="sprache" scope="quest">Orkisch</store> <has talent="Orkisch" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</case>
<case val="Zollunion Goblinia">
<store name="sprache" scope="quest">Goblinisch</store> <has talent="Goblinisch" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</case>
<case val="Adelsrepublik Grauland">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Aivarunenlande">
<store name="sprache" scope="quest">Avarun</store>
<has talent="Avarun" min="6" show="none">
<success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</case>
<case val="Xetoka">
<store name="sprache" scope="quest">Xeanhatl</store> <has talent="Xeanhatl" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</case>
<case val="Eiskönigreich">
<store name="sprache" scope="quest">Urelfisch</store> <has talent="Urelfisch" min="6" show="none"> <success>
<store name="kannsprache" scope="quest">ja</store>
</success> </has>
</case>
<case val="Emirat El-Ahil">
<store name="sprache" scope="quest">Bajidai</store>
</case>
<case val="Emirat Karkasso">
<store name="sprache" scope="quest">Bajidai</store>
</case>
<case val="Emirat Seydjuk">
<store name="sprache" scope="quest">Bajidai</store>
</case>
<case val="Fürstentum Herzstein">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Fürstentum Thelessa">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Fürstentum Exondria">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Großfürstentum des Südmeers">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Herzogtum Galfar">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Kalifat Dorien">
<store name="sprache" scope="quest">Bajidai</store>
</case>
<case val="Königreich Lothrinien">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Königreich Lúnasadh">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Königreich Westendar">
<store name="sprache" scope="quest">Aurento</store>
</case>
<case val="Echsenreich">
<store name="sprache" scope="quest">ZheeZ</store> <has talent="ZheeZ" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</case>
<case val="Sartogasso">
<store name="sprache" scope="quest">Imperial</store>
</case>
<case val="Sawajidden-Kalifat">
<store name="sprache" scope="quest">Bajidai</store>
</case>
<case val="Shogunate">
<store name="sprache" scope="quest">Oda</store> <has talent="Oda" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</case>
<case val="Elfen">
<store name="sprache" scope="quest">Elfisch</store> <has talent="Elfisch" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</case>
<case val="Zwerge">
<store name="sprache" scope="quest">Zwergisch</store> <has talent="Zwergisch" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</case>
<case val="Magokratie Wiesczarna">
<store name="sprache" scope="quest">Imperial</store>
</case>
</switch>
<has name="sprache" val="Imperial" show="none">
<success>
<has talent="Imperial" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</success>
</has>
<has name="sprache" val="Aurento" show="none">
<success>
<has talent="Aurento" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</success>
</has>
<has name="sprache" val="Bajidai" show="none">
<success>
<has talent="Bajidai" min="6" show="none"> <success> <store name="kannsprache" scope="quest">ja</store> </success> </has>
</success>
</has>
<case val="offen">
<has attribute="kampf" val="aktiv" show="none" >
<success> <!-- Der Held ist ein offensiver Kämpfer. Das heißt aber nicht, dass er einfach so in sein Verderben rennen sollte. Der Held mag zwar stark sein, aber nicht blöd. Vor besonders starken oder vielen Gegnern wäre es schön, noch eine IQ- oder Kriegskunst-Probe vorzuschalten. <strong>Fallbeispiel 1:</strong> Der Held kämpft gegen eine Orkpatrouille mit Berserker (oder Kriegsoger) und Orkanführer; hier geht er ein hohes Risiko ein, aber kann auch die besten Sachen gewinnen, weil die Orktrupps gut ausgerüstet sind. <strong>Fallbeispiel 2:</strong> Der Held kämpft gegen zwei Orks, oder einen Ork mit Oger; das Risiko ist geringer, als im Fall einer Orkpatrouille, aber dafür sind diese Orks (und der Oger) auch nicht so gut ausgerüstet. <strong>Fallbeispiel 3:</strong> Der Held kämpft gegen zwei (drei) dumme Orks, oder Goblins, die grundsätzlich nicht mit sich verhandeln lassen, sondern meinen, dass sie mehr bekommen würden, wenn sie den Helden ausrauben; das Risiko ist hier gering, aber weil es sich um dumme Gegner handelt, haben sie es im Leben auch zu nichts gebracht und sind daher auch schlecht ausgerüstet (nur billiger Kram). <strong>Fallbeispiel 4:</strong> Der Held kämpft gegen Tiere im gesamten Orkreich und gegen Untote in den Sümpfen zwischen Birh-Gichem und Nesh-Kurdoon - selbsterklärend. --> </success> <failure> <!-- Der Held ist ein offener, aber friedfertiger Wanderer (Jäger, Händler, Handwerker etc.). <strong>Fallbeispiel 1:</strong> Einer Orkpatrouille kann man nur schwer ausweichen, also versucht der Held zu verhandeln (leichte Proben auf Orkisch, Überreden, Überzeugen). Schafft er die Proben nicht, verliert er seine Waffen und einige Waren und bekommt einen Tritt in den Hintern (Abzug von 10 Lebenspunkten). Schafft er es, den Orkanführer zu überzeugen, dann muss er Dienstleistungen erbringen (mit den Orks jagen und ihnen die Beute überlassen, etwas reparieren etc. - Proben), was seine Zeit dauert (Reiseverzögerung von ein oder zwei Tagen), oder er muss einen Tribut zahlen (Proben auf Orkisch, Handeln, Feilschen, Wert schätzen mit Warenverlust), um weiter gelassen zu werden - man kann verschiedene Proben auch einfach hintereinander schalten und sobald der Held die erste nicht besteht, kommt die nächste. Besteht der Held keine der Proben, wird er einiger Dinge beraubt und muss den Orks für drei Tage als "Mädchen für alles" dienen (Warenverlust und Reiseverzögerung). <strong>Fallbeispiel 2:</strong> Zwei wachsame Orks, oder ein wachsamer Ork, der seinen Oger unter Kontrolle hat, sind auch nicht so leicht zu umschleichen. Der Held wird es also auch hier lieber mit verhandeln versuchen. Hier ist das gleiche Vorgehen wie bei der Orkpatrouille anzuraten, wobei die Proben auch etwas leichter sein können, da man ja nicht mit so einer Persönlichkeit verhandeln muss wie mit einem Orkanführer. Dafür könnten die Konsequenzen im Falle des Nichtbestehens der Proben etwas größer sein und der Wanderer bekommt zusätzlich noch einen Tritt in den Hintern (Warenverlust, Reiseverzögerung und Abzug von 10 Lebenspunkten). <strong>Fallbeispiel 3:</strong> Dumme und schlecht ausgerüstete Orks oder Goblins lassen eher nicht mit sich handeln, dann muss der Held kämpfen. <strong>Fallbeispiel 4:</strong> Gegen wilde Tiere wird auch immer gekämpft,ebenso kämpft der Held gegen die Untoten in den Sümpfen zwischen Birh-Gichem und Nesch-Kurdoon. --> </failure> </has>
</case>
<else>
<has attribute="kampf" val="aktiv" show="none" >
<success> <!-- Der Held ist ein heimlicher Kämpfer, große Gefahren meidet er, aber sobald er eine Aussicht auf Erfolg hat, greift er an. <strong>Fallbeispiel 1:</strong> Er versucht die Orkpatrouille, zu umschleichen (schwere Probe auf Schleichen und Verstecken, bei Bestehen lange Reiseverzögerung), schafft er das nicht, kommt es zum Kampf, denn so ganz ohne Gegenwehr will er sich ja nicht ergeben. Ob er dann bis zum Tode kämpft oder vorher flieht, kann der Spieler ja noch über die Fluchteinstellungen seines Helden regeln. <strong>Fallbeispiel 2:</strong> Da der Held nicht gerade friedfertig unterwegs ist, wird er sich gegen zwei Gegner schon eine Chance ausrechnen, es kommt also zum Kampf. Gegebenenfalls kann der Held durch eine vorgelagerte und bestandene hohe Schleichen-Probe sogar einen kleinen Vorteil bekommen, weil er einen Ork überrumpelt - ein Ork hat dann z.B. schon nicht mehr die volle LE. <strong>Fallbeispiel 3:</strong> Bei den Kämpfen gegen die dummen und schlecht ausgerüsteten Orks und Goblins sollte der Held durch eine bestandene Schleichen-Probe ebenfalls einen Vorteil bekommen (vielleicht hat sogar einer der Gegner dann schon eine Wunde). <strong>Fallbeispiel 4:</strong> Der Held kämpft gegen wilde Tiere und die Untoten in den Sümpfen, weil die Tiere eine zu gute Witterung haben, oder der Held sie voher nicht wahrnehmen kann, wie die Speiechse, oder sie auf übernatürliche Art und Weise die Gegenwart eines Lebenden spüren. --> </success> <failure> <!-- Der Held ist ein Heiler, oder Gelehrter, oder einfach jemand, der jedem Ärger aus dem Wege gehen will. <strong>Fallbeispiel 1:</strong> Er versucht zuerst die Orkpatrouille zu umschleichen (schwere Probe auf Schleichen und Verstecken, bei Bestehen lange Reiseverzögerung), schafft er das nicht, versucht er zu verhandeln, wobei die Orks natürlich misstrauisch sind, warum sich jemand an ihnen vorbei schleichen will (schwere Proben auf Orkisch, Überreden, Überzeugen), besteht er hier nicht, gibt es Saures (Warenverlust und Reiseverzögerung und Abzug von 10 LEP), besteht er sie, verlangen die Orks von ihm ihre Kranken zu heilen, oder die Verletzten zu versorgen, oder ihnen etwas bei zu bringen und über die Welt außerhalb des Orkreiches zu berichten (Probe auf Lehren sowie Wissensfertigkeiten), was dann zu einer Reiseverzögerung führt. <strong>Fallbeispiel 2:</strong> Auch an den Ork(s)-und-Oger-Paaren wird der Held erst einmal versuchen, sich vorbei zu schleichen (Reiseverzögerung). Schafft er die Proben nicht, versucht er ebenso wie bei der Orkpatrouille zu verhandeln (Proben können etwas leichter sein, weil die normalen Orks sich denken, dass man sie auch für dumme Räuber und Banditen halten könnte). Schafft der Held es aber nicht, die Orks, oder den Ork mit Oger zu überreden oder zu überzeugen, so gibt es Saures (Warenverlust, Reiseverzögerung und Abzug von 10 LEP). Schafft er es aber, die Orks (oder den Ork mit Oger) zu überreden oder zu überzeugen, dann kann er mit ihnen in ihr Dorf gehen und Kranke heilen (Reiseverzögerung), oder er geht mit ihnen in ihr Dorf und bringt ihnen etwas bei (Probe auf Lehren und Wissensfertigkeiten), wodurch die Reise sich auch verzögert. Schafft er keine der Proben, bekommt er Saures (Warenverlust und Reiseverzögerung und Abzug von 10 LEP). <strong>Fallbeispiel 3:</strong> An den dummen Orks oder Goblins sollte der Held leicht vorbeischleichen können, denn die stellen keine Wachen auf (Proben Schleichen und Verstecken). Schafft er das nicht, kommt es zum Kampf, weil die dummen Orks und Goblins ja der Ansicht sind, dass sie beim Verhandeln nur über das Ohr gehauen werden (eventuell kann man hier auch sehr hohe Proben auf Orkisch bzw. Goblinisch, Überreden und Überzeugen ansetzen, wenn der Held noch eine weitere Chance haben soll). <strong>Fallbeispiel 4:</strong> Gegen Tiere und Untote muss der Held kämpfen. Die Speiechse kann ausgenommen werden, wenn der Held eine Abfrage auf Tierkunde besteht und weiß, dass die sich nur in ihrem Revier gestört gefühlt hat. --> </failure> </has>
</else>
</switch>
<case val="offen">
<has attribute="kampf" val="aktiv" show="none" >
<success> <!-- Der Held ist ein offensiver Kämpfer. --> </success> <failure> <!-- Der Held ist ein offener, aber friedfertiger Wanderer (Jäger, Händler, Handwerker etc.). --> </failure> </has>
</case>
<else>
<has attribute="kampf" val="aktiv" show="none" >
<success> <!-- Der Held ist ein heimlicher Kämpfer, große Gefahren meidet er, aber sobald er eine Aussicht auf Erfolg hat, greift er an. --> </success> <failure> <!-- Der Held ist ein Heiler, oder Gelehrter, oder einfach jemand, der jedem Ärger aus dem Wege gehen will. --> </failure> </has>
</else>
</switch>
=== Permanente Steigerungen ===
Anbei ein Zip mit einer Quest, die auch ausprobiert werden kann - oder auf dem Testserver als Cheat benutzt. Intention ist, dass Leute die eine Quest schreiben wollen, die am Ende die Auswahl einer möglichen Steigerung vorsieht, es etwas einfacher haben.
Sie könnten diese Vorlage benutzen, und müsssen dann "nur noch" die eigentliche Quest zwischen start.xml und wunschliste.xml basteln.
Kommt der Held erfolgreich bei der Wunschliste an, dann kann er sich aussuchen, welche Eigenschaft er steigern will. Es sind alle Eigenschaften eingebaut, aber da kann man ja auch entsprechend abändern. Es wird aber bereits abgeprüft:
227
Bearbeitungen

Navigationsmenü