Grundlegende Befehle: Unterschied zwischen den Versionen

Aus X-Lexikon
Zur Navigation springenZur Suche springen
KKeine Bearbeitungszusammenfassung
KKeine Bearbeitungszusammenfassung
Zeile 5: Zeile 5:
<br> Eine Neue Zeile erstellt man mit '''"New Line"''', das ganz am Ende des Codes zu finden ist. Dann öffnet sich die Befehlsliste, und wir suchen uns dort den entsprechenden Befehl heraus.
<br> Eine Neue Zeile erstellt man mit '''"New Line"''', das ganz am Ende des Codes zu finden ist. Dann öffnet sich die Befehlsliste, und wir suchen uns dort den entsprechenden Befehl heraus.


===Geld===
==Geld==
Zunächst kommen wir zur wohl einfachsten Sache, das ändern des Spielerkontos. Dies wird mit folgendem Befehl gemacht (zu finden in den Trade Commands): <br>
Zunächst kommen wir zur wohl einfachsten Sache, das ändern des Spielerkontos. Dies wird mit folgendem Befehl gemacht (zu finden in den Trade Commands): <br>
{{ScriptCode|<nowiki>add money to player: <Var/Number></nowiki>}}
{{ScriptCode|<nowiki>add money to player: <Var/Number></nowiki>}}
Zeile 17: Zeile 17:
{{ScriptCode|<nowiki>add money to player: $Betrag</nowiki>}}
{{ScriptCode|<nowiki>add money to player: $Betrag</nowiki>}}


Damit kommen wir dann zum nächsten Punkt, und zwar den
Damit kommen wir dann zum nächsten Punkt, und zwar den '''Variablen'''.
===Variablen===
==Variablen==
'''Variablen''' sind mit das wichtigste beim Scripten. Eine Variable kann alles sein, ein Schiff, ein Sektor, ein Planet, eine Zahl, ein String, sogar ganze Gruppen von Objekten, sog. Arrays, und so weiter und so weiter. <br>
'''Variablen''' sind mit das wichtigste beim Scripten. Eine Variable kann alles sein, ein Schiff, ein Sektor, ein Planet, eine Zahl, ein String, sogar ganze Gruppen von Objekten, sog. Arrays, und so weiter und so weiter. <br>
'''Wichtig ist aber, dass eine Variable ganz zum Anfang auf den Wert 'null' gesetzt wird'''. Sprich also, sie beinhaltet erst einmal ganz genau gar nichts.<br>
'''Wichtig ist aber, dass eine Variable ganz zum Anfang auf den Wert 'null' gesetzt wird'''. Sprich also, sie beinhaltet erst einmal ganz genau gar nichts.<br>
Zeile 44: Zeile 44:
{{ScriptCode|<nowiki>$Betrag = 1000000 ...</nowiki><br><nowiki>add money to player: $Betrag</nowiki>}}
{{ScriptCode|<nowiki>$Betrag = 1000000 ...</nowiki><br><nowiki>add money to player: $Betrag</nowiki>}}


===Kommentare===
==Kommentare==
Insbesondere bei langen, komplexen Scripts sind Kommentare sehr sinnvoll. Ein Kommentar ist dabei ein selbstgewählter Text, der von der Scriptengine selbst jedoch ignoriert wird.
Insbesondere bei langen, komplexen Scripts sind Kommentare sehr sinnvoll. Ein Kommentar ist dabei ein selbstgewählter Text, der von der Scriptengine selbst jedoch ignoriert wird.
<br> Einen Kommentar fügbt ihr mit dem folgenden Befehl hinzu, der in den General Commands zu finden ist:
<br> Einen Kommentar fügbt ihr mit dem folgenden Befehl hinzu, der in den General Commands zu finden ist:
Zeile 55: Zeile 55:
Zwecks Formatierung und Übersicht habe ich hier den Kommentar mal in Kursiv geschrieben; im Scripteditor ist er in grauer Schriftfarbe dargestellt.
Zwecks Formatierung und Übersicht habe ich hier den Kommentar mal in Kursiv geschrieben; im Scripteditor ist er in grauer Schriftfarbe dargestellt.


====Wichtig====
===Wichtig===
Nutze '''niemals''' das Zeichen "<" oder das Zeichen ">" in einem Kommentar! Diese zerstören das Script.
Nutze '''niemals''' das Zeichen "<" oder das Zeichen ">" in einem Kommentar! Diese zerstören das Script.
====Auskommentieren====
===Auskommentieren===
Wie ihr ja jetzt wisst, werden Kommentare ja vom Scriptcode ignoriert. Man kann jetzt zu Testzwecken einzelne Befehle zu einem Kommentar machen, sodass sie ignoriert werden. <br>
Wie ihr ja jetzt wisst, werden Kommentare ja vom Scriptcode ignoriert. Man kann jetzt zu Testzwecken einzelne Befehle zu einem Kommentar machen, sodass sie ignoriert werden. <br>
Nutzt die Tasten {{Key|;}} beziehungsweise {{Key|:}}, um einen Befehl zum Kommentar zu machen und umgekehrt.
Nutzt die Tasten {{Key|;}} beziehungsweise {{Key|:}}, um einen Befehl zum Kommentar zu machen und umgekehrt.


===Das wärs===
==Das wärs==
Fertig ist euer erstes Script! Geht nun auf {{Key|ESC}}, und klickt bei der Meldung "Save Script..." auf "Ja". Nun seid ihr in der Scriptliste, wo ihr jetzt euer Script sucht und markiert, dann auf {{Key|r}} und schließlich 2 Mal auf Enter drückt. <br>
Fertig ist euer erstes Script! Geht nun auf {{Key|ESC}}, und klickt bei der Meldung "Save Script..." auf "Ja". Nun seid ihr in der Scriptliste, wo ihr jetzt euer Script sucht und markiert, dann auf {{Key|r}} und schließlich 2 Mal auf Enter drückt. <br>
Nun habt ihr 1.000.000 Credits mehr auf dem Konto.
Nun habt ihr 1.000.000 Credits mehr auf dem Konto.


===Probieren, Probieren, Probieren===
==Probieren, Probieren, Probieren==
Probiert die einzelnen Scriptbefehle aus! Die meisten sind von sich aus selbsterklärend, und ansonsten schaut in die [http://forum.egosoft.com/viewforum.php?f=105 EGSOSOFT MSCI-Befehlsreferenz], denn dort sind die Befehle alle noch einmal erklärt.
Probiert die einzelnen Scriptbefehle aus! Die meisten sind von sich aus selbsterklärend, und ansonsten schaut in die [http://forum.egosoft.com/viewforum.php?f=105 EGSOSOFT MSCI-Befehlsreferenz], denn dort sind die Befehle alle noch einmal erklärt.

Version vom 26. Februar 2011, 16:23 Uhr



So, hier kommen wir nun zu den Grundlagen. Im Spiel haben wir den Scripteditor geöffnet und ein neues Script erstellt. Dies werden wir nun spielerisch mit Code füllen.
Eine Neue Zeile erstellt man mit "New Line", das ganz am Ende des Codes zu finden ist. Dann öffnet sich die Befehlsliste, und wir suchen uns dort den entsprechenden Befehl heraus.

Geld

Zunächst kommen wir zur wohl einfachsten Sache, das ändern des Spielerkontos. Dies wird mit folgendem Befehl gemacht (zu finden in den Trade Commands):

Hier haben wir einmal den festen Code, und zwar den Block "add money to player:". Daran können wir nichts ändern.
Trotzdem, hier treffen wir nun auf unseren ersten Parameter, nämlich "<Var/Number>". Diesen können und müssen wir verändern.
Über "New Line" fügen wir also nun diesen Befehl unserem Code hinzu. Dann öffnet sich sofort ein Fenster namens "Script input". Dort wird alles aufgelistet, was wir anstelle von "<Var/Number>" einsetzen können.

Bei dieser Gelegenheit kommen wir direkt einmal zu einer Variablen. In der Liste scrollen wir dazu nun nach ganz unten, und wählen den Punkt "<Variable>" aus. Nun öffnet sich ein Fenster, in dem wir den Namen der Variable eingeben müssen. Nennen wir sie einfach mal "Betrag".

Daraufhin seht ihr euren Script Code, in dem nun euer Befehl eingetragen wurde. So sieht der gesamte Code bis jetzt aus:


Damit kommen wir dann zum nächsten Punkt, und zwar den Variablen.

Variablen

Variablen sind mit das wichtigste beim Scripten. Eine Variable kann alles sein, ein Schiff, ein Sektor, ein Planet, eine Zahl, ein String, sogar ganze Gruppen von Objekten, sog. Arrays, und so weiter und so weiter.
Wichtig ist aber, dass eine Variable ganz zum Anfang auf den Wert 'null' gesetzt wird. Sprich also, sie beinhaltet erst einmal ganz genau gar nichts.
Daher müssen wir ihr einen Wert zuweisen. Dies machen wir mit folgendem Befehl, der unter den "General Commands" zu finden ist:

Den fügen wir nun mittels "New line" unserem Code hinzu. Wieder öffnet sich das Fenster "Script Input".
Und hier offenbart sich einer der größten Vorteile des internen Scripteditors: Ganz oben, unter "Available Variables", finden wir eine Liste mit den bisher in diesem Script genutzten Variablen.
Wir haben bisher genau eine genutzt, nämlich "Betrag", und die finden wir auch in der Liste wieder. Also wählen wir sie aus. Der Befehl nimmt danach schon eine konkrete Form an, er sieht dann folgendermaßen aus:

Die Punkte ("...") stehen hier dafür, dass man den Code noch erweitern kann, man könnte theoretisch noch viel mehr Sachen in dieser Zeile erledigen.
Uns interessiert aber viel mehr das "<?>", denn dort können wir jetzt der Variable einen Wert zuweisen. Also markieren wir es und drücken "Enter".

Erneut öffnet sich nun das Fenster "Script input". Wie ihr seht, ist die Liste nun weitaus länger, denn es können hier weitaus mehr Dinge eingesetzt werden. Wir wollen hier jetzt eine Nummer haben, also klicken wir auf <Number>.
Es öffnet sich nun ein Fenster, wo wir die Nummer eingeben müssen. Diese Nummer gibt ja den Geldbetrag an, den der Spieler kriegen soll, daher müssen wir den auch hier angeben. Als Test geben wir mal 1.000.000 ein. Versucht nicht, Punkte einzugeben - das klappt sowieso nicht - sondern nur die Zahl, also 1000000. Achtet darauf, dass ihr wirklich alle Nullen habt - X3 lässt doppelte Buchstaben und Zahlen gerne mal aus. Mit Enter bestätigen wir das ganze.

Unser Code schaut jetzt so aus:

Der Code sieht schön aus, aber er ist leider Falsch...
Wir schauen uns einmal den Ablauf an: Zuerst wird dem Spielerkonto ein Creditwert in Höhe von "$Betrag" hinzugefügt, und erst danach wird festgelegt, wie hoch der Betrag werden soll. Das geht ja nicht, denn wir müssen erst die Größe des Betrages kennen, um ihn dann dem Spielerkonto hinzuzufügen. Dazu macht ihr jetzt folgendes: Ihr markiert die zweite Zeile, also die, wo wir der Variable "$Betrag" den Wert 1000000 zuweisen, und drückt die Taste x. Damit schneidet ihr die Zeile aus. Nun markiert ihr die Zeile, vor der ihr es einfügen wollt, also hier die erste Zeile. Nun drückt ihr die Taste v, um den Code davor einzufügen.

Nun sollte das ganze so aussehen:


Kommentare

Insbesondere bei langen, komplexen Scripts sind Kommentare sehr sinnvoll. Ein Kommentar ist dabei ein selbstgewählter Text, der von der Scriptengine selbst jedoch ignoriert wird.
Einen Kommentar fügbt ihr mit dem folgenden Befehl hinzu, der in den General Commands zu finden ist:

Den wählt ihr nun aus, und des öffnet sich ein Fenster, wo ihr den Text, der im Kommentar steht, eingeben müsst. Hier gebe ich nun also an, was unser Script macht, also gebe ich z.B. ein "Fügt 1000000 Credits auf das Spielerkonto hinzu."
Nun steht dieser Code aber noch am Ende, ich will ihn aber als eine Art Überschrift am Anfang haben. Dazu mache ich dasselbe wie vorhin, nämlich Ausschneiden und Einfügen.
So sieht der Code jetzt aus:

Zwecks Formatierung und Übersicht habe ich hier den Kommentar mal in Kursiv geschrieben; im Scripteditor ist er in grauer Schriftfarbe dargestellt.

Wichtig

Nutze niemals das Zeichen "<" oder das Zeichen ">" in einem Kommentar! Diese zerstören das Script.

Auskommentieren

Wie ihr ja jetzt wisst, werden Kommentare ja vom Scriptcode ignoriert. Man kann jetzt zu Testzwecken einzelne Befehle zu einem Kommentar machen, sodass sie ignoriert werden.
Nutzt die Tasten ; beziehungsweise :, um einen Befehl zum Kommentar zu machen und umgekehrt.

Das wärs

Fertig ist euer erstes Script! Geht nun auf ESC, und klickt bei der Meldung "Save Script..." auf "Ja". Nun seid ihr in der Scriptliste, wo ihr jetzt euer Script sucht und markiert, dann auf r und schließlich 2 Mal auf Enter drückt.
Nun habt ihr 1.000.000 Credits mehr auf dem Konto.

Probieren, Probieren, Probieren

Probiert die einzelnen Scriptbefehle aus! Die meisten sind von sich aus selbsterklärend, und ansonsten schaut in die EGSOSOFT MSCI-Befehlsreferenz, denn dort sind die Befehle alle noch einmal erklärt.