Endspurt bei Die Macht des Feuers

Die letzten Tage ging es bei der Entwicklung meiner Modifikation “Die Macht des Feuers” mal wieder rund. Bis vorgestern konnte ich auch noch problemlos an meinen Systemen basteln, bis dann ein sehr merkwürdiger Fehler des JassHelpers auftrat, welcher verursachte, dass kein einziger Destruktor meiner Strukturen mehr aufgerufen wurde. Der Bug-Report befindet sich hier und wird hoffentlich nicht zu sehr von der mehr oder weniger sinnvollen Diskussion über Blockkommentare in vJass überdeckt werden, da es sich ja um ein sehr schwerwiegendes Problem handelt.

Nachdem ich den Bug nicht umgehen konnte, habe ich meine Zeit damit verbracht endlich mal wieder an der Landschaft, dem Objekteditor und mit der Planung des Spielinhalts zu verbringen.
Aber noch kurz einige Worte zu den Systemen. Das Gesprächssystem der ASL funktioniert endlich (Mehrspielerfähigkeit habe ich noch nicht getestet) und ich habe dazu und auch zum Quest-System der ASL auf inWarcraft zwei kleine Einführungen geschrieben.
Das Quest-System hat leider immer noch den inzwischen recht alten Bug, dass die Auslöser-Handle-Id der Statusauslöser, welche mit GetTriggeringTrigger() abefragt wird nicht mit der, welche unmittelbar nach der Erzeugung durch CreateTrigger() abgefragt wird übereinstimmt.
Am Videosystem gab es auch einige Verbesserungen, so wird zum Beispiel die Auswahl des Spielers jetzt gespeichert und nach jedem Video wieder hergestellt.
Das Inventarsystem wurde teilweise nochmal deutlich verbessert, da es jedoch verhältnismäßig betrachtet recht neu ist, gibt es leider noch einige Fehler.
Ansonsten gab es neben zahlreichen anderen Verbesserungen auch Behebungen von falschen Texturpfaden von verschiedenen Modellen in den verwendeten MPQ-Archiven. Bisher kam ich leider noch nicht dazu, die Dateien der MPQ-Archive auf meiner SVN-Ablage “abzulegen”, da es sich um recht viele Dateien handelt.
Auch steht bis jetzt nur eine veraltete Version der ASL zur Verfügung.
Kommen wir also zur Landschaft und Sonstigem, was nichts mit den Systemen zu tun hat.
Wie schon in der abgebrochenen Version gibt es natürlich die Burg Talras. Ich schreibe bewusst gibt, da ich diese Burg schon zu Beginn zusammengebastelt habe, bevor ich mich fast ausschließlich den Systemen widmete. Allerdings ist selbst sie noch nicht fertig. Zudem wird es natürlich einige unbewohnte Flächen mit Wiesen, Wäldern, Bergen und Flüssen geben, auf denen die Charaktere gemeinsam gegen Tiere, Wegelagerer und vielleicht auch Stärkeres kämpfen können. Außerdem gibt es noch einige Bauern außerhalb der Burg und noch einige andere Menschen. Es handelt sich nicht um sehr dicht besiedeltes Gebiet, was bedeutet, dass man viele Menschen auf einmal eher an zentralen Punkten wie Talras antreffen wird.
Was die Handlung und den Spielverlauf betrifft, so wurde der bereits vor längerer Zeit grob von Sardor und mir festgelegt. Natürlich wird er stetig verfeinert aber nicht unbedingt erweitert. Nur da, wo es noch Lücken gibt. Es wird auf jeden Fall einige Videosequenzen geben. Manche eher kurz, aber auch ein paar aufwändig gestaltete. Wie ich bestimmt schon einige Male vorher irgendwoe geschrieben habe, spielt man eine vorgegebene Geschichte. Ich halte das für die beste Lösung, da man einerseits genau weiß, was man tun muss, um das Spiel durchzuspielen und andererseits doch noch alle Freiheiten nutzen kann, die einem die Karte bietet und davon gibt es doch einige, da ich recht viele Nebenaufträge und Dialoge einbauen werde.
Zusätzlich sorgt ein aosähnlicher Dauerauftrag dafür, dass es den Spielern nie langweilig wird. Ich habe mir sogar schon überlegt, ob man die Karte nicht einfach im PVP-Modus starten können soll. Vielleicht werde ich ja eine PVP-Version herausbringen, da die vielen Klassenzauber (15 pro Klasse, 9 Klassen) das Ganze sehr interessant machen würden.
Von diesen besagten Zaubern habe ich die des Elementarmagiers so gut wie fertiggebastelt (bis vielleicht auf ein oder zwei).
Auch der Ritter, der Kleriker, der Zauberer und der Illusionist haben bereits einige.
Nun kehre ich also dich wieder zum Thema Systeme und Code zurück. Na ja, da eine Klasse also mehr als 7 Zauber hat und da das das Maximum der Heldenzauber in Warcraft ist, war uns schon früh klar, dass wir ein eigenes Zauberbuch einbauen müssten, damit alle verwendbar wären. Dazu verwenden wir die Kombination aus der Fähigkeit “Zauberbuch”, die einigen sicherlich bekannt vorkommen wird und aus den noch verfügbaren Plätze der Einheit selbst.
Im Zauberbuch stehen soweit ich weiß 11 Plätze zur Verfügung. Fehlen also noch vier. Und diese Vier entspricht exakt der Anzahl der noch verbliebenen Plätze der Einheit selbst.
Nun fragt sich vielleicht einer, welche Zauber bei der Einheit und welche im Zauberbuch angezeigt werden sollen. Dazu habe ich ein Favoritensystem eingebaut. Unser Zauberbuch ist momentan per Warcraft-Dialog bedienbar. Damit kann man einen Zauber den Favoriten hinzufügen. Es müssen folglich immer vier Favoriten vorhanden sein. Normalerweise wird der Benutzer keine passiven Zauberfähigkeiten zu den Favoriten hinzufügen und so kann er zumindest sein vier am häufigsten benutzten Zauber schneller als die anderen ausführen.
Genau wie beim Inventarsystem käme hier auch eine eigene grafische Oberfläche in Frage, allerdings läge deren Priorität nicht gerade hoch, da ich noch genug andere Dinge erledigen muss, bevor man überhaupt mal einen Betatest durchführen kann. Zu guter Letzt möchte ich noch auf die Neuerungen des neuen Warcraft-Patches und deren Auswirkungen auf die ASL eingehen. Die ASL selbst verwendet kein Einheiten-Indexingsystem, sondern hat stets den “Gamecache” dazu verwendet, Strukturinstanzen mit Handle-Objekte zu “verbinden”. Sollten die neuen nativen Funktionen tatsächlich wesentlich schneller sein als der Gamecache, so würde mich das natürlich sehr freuen. Von den Funktionen her würde sich für den Benutzer kaum oder gar nichts ändern, da die ASL die Struktur AHashTable zur Verfügung stellt, welche intern die nativen Funktionen aufruft.
Leider hatte ich noch keine Zeit, an dem Betatest des Patches teilzunehmen.
Bilder gibt’s wie immer keine von “Die Macht des Feuers”, da ich sowieso schon der Meinung bin manchmal zu viel zu verraten.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: