Änderungen

Wechseln zu: Navigation, Suche

AOQML für Anfänger

7.697 Bytes hinzugefügt, 12:20, 30. Mai 2010
keine Bearbeitungszusammenfassung
==10. Kämpfe==
 
Allen vorherigen Beteuerungen zum Trotz geht es jetzt dennoch direkt zum Kampf. Nach dem erklärenden Text stapft unser Held direkt auf die beiden Gegner zu und beginnt einen Kampf. Dafür wird per Taste '''fight''' zunächst einmal der Rohling erzeugt.
 
{| border="0" style="border-collapse:collapse; background-color:transparent;" cellpadding="0"
| [[Bild:Aoqml 34.JPG|thumb]]
|}
 
Verbündete hat der SC nicht, also wird der ganze Bereich <friends> gelöscht. Da wir zwei Gegner haben, wird einfach die Zeile <npc npcid="" name="" gender="" escape=""/> kopiert und ersetzt die ... . Bei nur einem Gegner reicht eine Zeile, bei mehr Gegner entsprechend mehr.
 
Dann müssen wir die Gegner entsprechend programmieren. Zunächst einmal benötigen wir geeignete IDs, die wir aus dieser [[NPC Liste]] entnehmen. Sie ist leider nicht auf dem neuesten Stand, und die genauen Werte sind auch nicht angegeben. Die Namen sind aber meist ein guter Hinweis auf die Art und Stärke des Gegners. Benötigt man speziellere Gegner, kann man per Forum oder PN einen Programmierer oder Helfer mit Datenbankzugriff bitten, einen entsprechenden Gegner zu erstellen oder aus der Liste auszusuchen. Uns reichen unerfahene Wegelagerer (ID 4) aus.
 
Die Namen der NSC lassen sich auch ändern. Wir nennen sie einfach Abgerissener Bandit und Verkommener Bandit. So merken die Spieler nicht, dass es sich um Standart-NSC handelt.
 
Per gener="female" könnte man die NSC auch weiblich machen. Wir verzichten und löschen einfach das gender="".
 
Dafür fügen wir jeweils ein weapon="" ein und suchen uns aus der [[Waffenliste]] (leider auch nicht ganz vollständig oder aktuell...) geeignete billige Waffen aus: Beil (198) und Keule (1071). ansonsten würden die NSC die jeweiligen Standartwaffe erhalten (in diesem Fall Säbel). Wenn man die NSC nicht kennt kann man so einfach die verwendeten Waffen an die geplante Beute anpassen. Man muss nur etwas aufpassen, das man geeignete Waffen verwendet, die auch zu den Fähigkeiten der NSC passen. Bewährte Questschreiber erhalten auch Zugriff auf die entsprechenden detaillierten Listen, die aber nicht einfach im Wiki veröffentlicht werden sollen.
 
Das escape="" löschen wir (Editor veraltet...). Dafür setzen wir oben hinter fight ein escape="true" ein. Damit kann der SC normal aus dem Kampf fliehen. Ein escape="false" hingegen würde das verhindern, z.B. weil die NSC ihm den Rückweg abschneiden, beritten sind oder einen Bogenschützen haben, der den Flüchtling in den Rücken schießen würde.
 
Jetzt muss nur noch das jeweilige gewünschte Ergegnis zwischen die Befehle victory (SC hat gewonnen), escape (SC ist geflohen) und defeat (SC wurde besiegt) einbauen. Man kann es direkt in der Szene einbauen, oder per include zu einer weiteren Szene überleiten, die dann direkt unter dem Kampfergebnis dargestellt wird. Für den Spieler macht es keinen Unterschied, für den Schreiber kann es die Übersicht vereinfachen. Wir leiten zu entsprechenden Szenen um, die einzeln erklärt werden.
 
{| border="0" style="border-collapse:collapse; background-color:transparent;" cellpadding="0"
| [[Bild:Aoqml 35.JPG|thumb]]
|}
 
Man kann bei den Gegner auch per surrender-below="10" festlegen, dass sie bei weniger als 10 LP fliehen (die Zahl lässt sich beliebig ändern). Wir verzichten erst einmal, da aoqml leider nicht unterscheiden kann, ob Gegner geflohen sind oder besiegt wurden.
 
Für den Fall, das der SC besiegt wird, muss man sich noch eine Erklärung aus den Fingern saugen, warum er dennoch überlebt - bei Antamar sind SC (noch) unsterblich...
 
Leider erkennt auch hier der Editor die Angabe escape="true" bei fight als falsch, auch wenn sie korrekt ist. Das wird sicher bald geändert...
 
==11. Den SC ausplündern==
 
Gehen wir mal davon aus, dass der SC besiegt wird. Die Banditen rauben ihn aus und lassen ihn, schwer verletzt, liegen. Mittels <set attribute="cash" val="0"/> leeren wir seine Taschen, er hat keinen Gulden mehr. Per <drop item="*20%"/> nehmen wir ihm ca. 20% seines Gepäcks ab (wobei das ganze noch von anderen Faktoren abhängig ist), die Zahl ist wieder einmal variabel (1 bis 100%). <drop item="_Waffen"/> nimmt ihm Waffe und ggf. Schild weg.
 
Immerhin, einige EP gönnen wir ihm dennoch. Er hat sich ja redlich bemüht...
 
{| border="0" style="border-collapse:collapse; background-color:transparent;" cellpadding="0"
| [[Bild:Aoqml 36.JPG|thumb]]
|}
 
Getragene Kleider, Rüstungsteile und Schmuckstücken kann man den SC noch nicht wegnehmen. Das erspart uns viele nackte SC...
 
==12. Beute vergeben==
 
Viel angenehmer ist es für die SC natürlich, sich die Taschen mit Beute zu füllen!
 
<set attribute="cash" inc="100...300"/> erhöht den Bargeldbestand des Helden um 100 bis 300 Groschen. Die Zahlen lassen sich beliebig ändern. Lässt man die ... weg und gibt nur eine Zahl ein, erhält der SC einen Festbetrag.
 
<take item="Beil"/> gibt dem SC ein Beil. Man sollte die Beutewaffen in Art und Zahl an die Art und Zahl der Gegner anpassen - wer mit einer teuren Waffe kämpft, sollte auch genau diese als Beute hinterlassen (sofern sie nicht irgendwie verloren oder zu Bruch geht)!
 
Auch ein Random ist immer nett, um die Auswahl der Sekundärbeute zu vergrößern. <take item="Wolldecke" count="2"/> gibt dem SC 2 Wolldecken statt einer. Die Zahl lässt sich beliebig ändern und auch X...Y wäre möglich. '''Achtung:''' Immer den '''genauen''' Namen der Ware oder alternativ die ID mit einem # davor verwenden, zu finden in [[Aktuelle Warenliste]]! Na ja, nicht immer aktuell oder vollständig...
 
{| border="0" style="border-collapse:collapse; background-color:transparent;" cellpadding="0"
| [[Bild:Aoqml 37.JPG|thumb]]
|}
 
== 13. Die Queste testen==
 
Tja, das wäre es erst einmal. Die restlichen Pfade können mit den bereits beschriebenen Mitteln programmiert werden. Am Ende sieht die ganze Quest dann in etwa so aus:
 
Bild 40 (wenn fertig...)
 
Bevor man die Quest aber implementieren lässt, sollte man sie vorher noch einmal testen! Dazu muss man zunächst in der Testumgebung ( [http://forum.antamar-community.de/viewtopic.php?f=77&t=8831] )einen Test-SC erstellen. Diesen kann man per maßgeschneiderter Queste mit Geld, Ausrüstung und EP versorgen und dann steigern. Hier ist so eine:
 
Link kommt noch...
 
Anschließend öffnet man den Ordner für die Quest, markiert alle darin befindlichen Dateien und macht (wenn man winzip oder ein ähnliches Programm hat) daraus ein .zip .
 
{| border="0" style="border-collapse:collapse; background-color:transparent;" cellpadding="0"
| [[Bild:Aoqml 38.JPG|thumb]]
|}
 
Dieses kann man dann in der Testumgebung mittels questupload --> durchsuchen --> entsprechende datei.zip anklicken --> hochladen.
 
{| border="0" style="border-collapse:collapse; background-color:transparent;" cellpadding="0"
| [[Bild:Aoqml 39.JPG|thumb]]
|}
 
Dann per Quest starten die Quest starten und mit dem Test-SC testen. Entsprechende Fehler sind meist leicht erkennbar, manchmal auch schwerer. Falls der SC hängt, einfach die Quest deaktivieren (wenn das mal im Spiel so einfach wäre...).
 
 
==14. AOQML für Fortgeschrittene==
 
Mit der oben stehenden Anleitung sollte es möglich sein, einfache Questen zu programmieren. Wer mehr Optionen benotigt, der findet sie beim [[AOQML-Manual]]. Auch die Seite [[AOQML]] enthält nützliche Links. Und vielleicht schreibe ich auch irgendwann mal [[AOQML für Fortgeschrittene]]. Aber nicht jetzt.
 
Solltet ihr irgendwelche Probleme haben, meldet euch im Forum! Es ist eigentlich fast immer jemand da, der neuen Questschreibern helfen kann.
 
Viel Spaß beim Programmieren - ich freue mich schon auf eure Questen!
 
Neonix
3.440
Bearbeitungen

Navigationsmenü