Jass Einführung

[nocontentad]

Jass


zum Anfang


1. Vorwort

Dieser Artikel stellt die
Eröffnung des Hot-Topics zum Thema JASS dar. Ich möchte hier
nachfolgend kurz erläutern was JASS eigentlich ist, was man damit
machen kann. Auch möchte ich kurz die Vor- und Nachteile, vor allem
in Bezug auf das GUI des Editors, erwähnen. Auch findet ihr hier
noch einige Links, welche sehr nützliche Informationen zum Thema
JASS beinhalten.
Durch diesen Artikel sollt ihr einen Überblick über JASS bekommen,
bzw. soll jenen die sich schon mit der Thematik befasst haben den Anreiz
bekommen ihr Wissen zu vertiefen. Wenn ihr ein Tutorial benötigt,
so schaut in die entsprechenden Tutorials (die kurze Zeit nach der Veröffentlichung
dieses Artikels erscheinen werden).


zum Anfang


2. Allgemeines

Nun – was ist JASS überhaupt?
JASS ist eine Scriptsprache für Warcraft III, welche im Editor
genutzt werden kann. Auch wenn man mit dem GUI des Trigger-Editors seine
Auslöser erstellt, so steht dahinter auch nur JASS – Code, das
GUI macht es nur einfacher die Auslöser zu erstellen, da man alles
per Mausklick auswählen kann. Mit JASS wird jedoch nicht nur intern
gearbeitet, man kann diese Scriptsprache auch selber benutzen, und das
sollte man auch machen, denn in manchen Situationen hat man damit sehr
viel mehr Möglichkeiten als mit dem GUI.

Man kann einen bestehenden Trigger ohne Probleme in JASS – Code umwandeln,
man muss dazu nur den Trigger markieren und dann über Bearbeiten/zu
eigenem Text umwandeln
in besagten JASS-Code umwandeln (die Meldung,
dass man diesen Schritt nicht mehr rückgängig machen kann
muss man mit OK bestätigen).

Statt dem Fenster mit der grafischen Oberfläche in der ihr bisher
Ereignis, Bedingungen und Aktionen seht ihr nun nur noch Text, bzw.
ein leeres Fenster wenn der Trigger beim umwandeln leer war. In diesem
Fenster steht nun JASS Code, den ihr nach belieben editieren könnt.

zum Anfang


3. Vor- und Nachteile

Wie schon angesprochen
werden vom GUI nicht alle Möglichkeiten des dahinterstehenden Codes
ausgenutzt, so zum Beispiel kann man mit JASS Code erhebliche Performance-Verbesserungen
erzielen, die man durch Arbeiten mit dem GUI nicht erzielen würde.
Auch bietet diese Scriptsprache einem auch die Möglichkeit einen
Trigger voll multiplayertauglich zu machen, was mit dem GUI nicht möglich
ist, da dort nur globale Variablen existieren, im Gegensatz zu JASS
Code, wo man die Möglichkeit hat lokale Variablen zu nutzen, besonders
bei getriggerten Spells ist dies eine große Erleichterung (zu
dieser Thematik wird später noch ein eigenes Tutorial nachgereicht).

Auch gibt es noch den generellen Vorteil, dass man Trigger auf dieses
Weise kürzer und übersichtlicher scripten kann, da man Funktionen
ineinander schachteln kann, und oftmals direkter arbeiten kann als es
das GUI zulassen würde, da man von dort aus nicht Zugriff auf alle
Funktionen hat.

Natürlich hat JASS auch Nachteile. Was für die meisten, nicht
so sattelfesten Mapper bzw. Triggerer, ein Problem darstellen kann,
ist die Tatsache, dass es sich bei JASS doch schon um eine Programmier-
oder zumindest Scriptsprache handelt. Dies kann für diejenigen
die noch nie programmiert haben am Anfang etwas abschreckend sein, da
ihr euch erstmals mit Syntax, Compiler-Fehlern und Fehlersuche im Code
herumschlagen müsst. Erschwerend kommt noch hinzu, dass es im Editor
kein Syntaxhighlighting gibt (dies ist jedoch nicht wirklich ein Problem,
da es dafür Tools gibt und man mit ein bisschen Übung auch
ganz gut ohne auskommt).
Aber auch ohne Programmierkenntnisse ist das Erlernen von JASS eine
schaffbare Aufgabe, zumal die Syntax relativ einfach ist, und es kaum
(eigentlich gar keine) eigenartig anmutenden Konstrukte gibt (wie dies
in „echten“ Programmiersprachen der Fall wäre).


zum Anfang


4. Einsatzgebiete

Die Einsatzgebiete
von JASS sind sehr vielfältig, und im Grunde kann man alles damit
machen, was man mit dem GUI auch machen kann und noch einiges mehr,
man könnte also jeden Trigger einer Map selber in JASS erstellen,
wenngleich dies auch aufwändiger und nicht unbedingt erforderlich
ist.
Wofür JASS wirklich sehr gut geeignet ist, sind CustomSpells, also
vollkommen neue, getriggerte Spells – hier hat man mit JASS die Möglichkeit
diese Spells zum einen performanter und zum anderen auch vollkommen
multiplayertauglich zu machen, was mit dem GUI nicht oder nur sehr schwer
möglich wäre. (Hierzu wird es noch ein eigenes Tutorial geben).

Und dann natürlich noch allgemein, wenn man mit dem GUI nur schwer
oder gar nicht weiterkommt, oder die Performance verbessern möchte
(die durch reine GUI Trigger erheblich verschlechtert werden kann –
diese Verbesserung ist auch mit dem GUI möglich, allerdings kann
es hierbei zu Problemen kommen, bzw. ist dies nicht so einfach, siehe
auch das Tutorial
zum Beheben von Memory-Leaks
).


zum Anfang

5. Schlußwort

Ich hoffe mit diesem einführenden Artikel in das Thema
JASS wurde eure Neugier geweckt. Wenn ihr nun also mehr über dieses
Thema erfahren wollt, so schaut in die entsprechenden, nachfolgenden
Tutorials, die im Rahmen des Hot-Topics „JASS“ erscheinen
werden. Bei Fragen könnt ihr euch aber auch jederzeit im Forum
melden, dort wird auch ebenfalls weitergeholfen.

zum Anfang

  • 28.07.2008 um 23:02
Eigene FadeFilter Substrings