Oblivion:Mein erster Zauber: Unterschied zwischen den Versionen

Aus Skript-Wiki
Wechseln zu: Navigation, Suche
K
 
(5 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Dieses Tutorial hilft dir dabei deinen ersten Zauber mit vordefinierten und selbst erstellten Effekten zu schreiben.
+
Dieses Tutorial hilft dir dabei, deinen ersten Zauber mit vordefinierten und selbst erstellten Effekten zu schreiben.
  
  
Zeile 8: Zeile 8:
  
  
Falls du es noch nicht getan hast, öffne das TES Construction Set Programm. Wenn es geladen ist wähle http://www.ei-der-zeit.com/LexikonCSIV/pic/button-data.jpg und Doppelklicke auf die "Oblivion.esm" und wähle dann "OK" um die Oblivion Master-Datei zu laden.
+
Falls du es noch nicht getan hast, öffne das TES Construction Set Programm. Wenn es geladen ist, wähle [[Bild:button-data.jpg]] und Doppelklicke auf die "Oblivion.esm" und wähle dann "OK", um die Oblivion Master-Datei zu laden.
  
  
Zeile 17: Zeile 17:
  
  
Nachdem der Ladevorgang abgeschlossen ist, können wir damit anfangen einen Zauber zu erstellen. Wähle im Objekt-Fenster Magic->Spell.
+
Nachdem der Ladevorgang abgeschlossen ist, können wir damit anfangen, einen Zauber zu erstellen. Wähle im [[Oblivion:Object Window|Objekt-Fenster]] Magic->Spell.
 
   
 
   
  
Nun werden im rechten Fenster eine ganze Mende Zauber angezeigt. Öffne in dieser Liste mit der rechten Maustaste das Kontext-Menü und wähle "New" und ein leeres Spell-Fenster erscheint.  
+
Nun werden im rechten Fenster eine ganze Menge Zauber angezeigt. Öffne in dieser Liste mit der rechten Maustaste das Kontext-Menü und wähle "New" und ein leeres [[Oblivion:Spell Window|Spell-Fenster]] erscheint.  
 
   
 
   
http://www.ei-der-zeit.com/LexikonCSIV/pic/fenster-spell.jpg
+
[[Bild:fenster-spell.jpg]]
  
* '''ID -''' Die ID ist der Name mit dem der Zauber ausgerufen wird. Dieser Name muß einmalig sein und darf nicht mit anderen Namen im Editor übereinstimmen. Nennen wir unseren Zauber "MeinErsterZauber"
+
* '''ID -''' Die ID ist der Name, mit dem der Zauber ausgerufen wird. Dieser Name muss einmalig sein und darf nicht mit anderen Namen im Editor übereinstimmen. Nennen wir unseren Zauber "MeinErsterZauber"
* '''Name -''' Das ist der "Echte" Name des Zaubers, also der Name, der im Spiel für den Spieler sichtbar ist. Nennen wir ihn hier also "Mein erster Zauber".
+
* '''Name -''' Das ist der "echte" Name des Zaubers, also der Name, der im Spiel für den Spieler sichtbar ist. Nennen wir ihn hier also "Mein erster Zauber".
* '''Type -''' Hier kann man eingeben, um welche Art Zauber es sich handelt. Es ist eine festgelegte DropDown Liste. Wählen wir hier "Zauber".
+
* '''Type -''' Hier kann man eingeben, um welche Art Zauber es sich handelt. Es ist eine festgelegte DropDown-Liste. Wählen wir hier "Zauber".
  
  
Zeile 40: Zeile 40:
 
Im Moment ist die Effekt-Liste rechts noch leer. Weil unser Zauber aber etwas machen soll, sollten wir diesen Umstand nun aber ändern. Rechtsklicke daher in die Liste und wähle "New" aus dem Kontext-Menü. Nun erscheint das "[[Oblivion:Effect Item Window|Effect Item]]"-Fenster.
 
Im Moment ist die Effekt-Liste rechts noch leer. Weil unser Zauber aber etwas machen soll, sollten wir diesen Umstand nun aber ändern. Rechtsklicke daher in die Liste und wähle "New" aus dem Kontext-Menü. Nun erscheint das "[[Oblivion:Effect Item Window|Effect Item]]"-Fenster.
  
* '''Effect -''' Das ist der Magische Effekt den wir aufrufen. Wählen wir hier "Schild" aus der DropDown Liste
+
* '''Effect -''' Das ist der magische Effekt, den wir aufrufen. Wählen wir hier "Schild" aus der DropDown Liste.
* '''Range -''' Das umschreibt, an wen der Zauber gerichtet werden kann. Hier wählen wir "selbst"
+
* '''Range -''' Das umschreibt, an wen der Zauber gerichtet werden kann. Hier wählen wir "selbst".
* '''Area -''' Fläche des Effekts. Dieses ist bei "Selbst"-Zaubern deaktiviert, weil sie nur den Actor selbst betreffen.
+
* '''Area -''' Fläche des Effekts. Das ist bei "Selbst"-Zaubern deaktiviert, weil sie nur den Actor selbst betreffen.
 
* '''Duration -''' Wie lange (in Sekunden) der Zauber wirkt. Setzen wir ihn auf 30 (Sekunden).
 
* '''Duration -''' Wie lange (in Sekunden) der Zauber wirkt. Setzen wir ihn auf 30 (Sekunden).
* '''Magnitude -''' In diesem Fall wie viel Rüstung dem Aufrufenden gegeben wird. Wir nehmen hier mal den Wert 300.
+
* '''Magnitude -''' In diesem Fall, wie viel Rüstung dem Aufrufenden gegeben wird. Wir nehmen hier mal den Wert 300.
  
Klicke auf OK wenn du den Effekt für fertig erklärst.
+
Klicke auf OK, wenn du den Effekt für fertig erklärst.
  
http://www.ei-der-zeit.com/LexikonCSIV/pic/fenster-effect-item.jpg
+
[[Bild:fenster-effect-item.jpg]]
  
  
Ist dir aufgefallen, wie beim Eintragen der Werte in Duration und Magnitude <br />die "Auto-Calculate Costs" Werte nach oben     geschnellt sind ? Damit wird angegeben, wie viel der Zauberpunkte das aufrufen des Zaubers kosten würde. Wenn du das nicht willst, kannst du die "Auto Calculate" Funktion im Spell-Fenster deaktivieren. Wir machen das später auch noch!
+
Ist dir aufgefallen, wie beim Eintragen der Werte in Duration und Magnitude <br />die "Auto-Calculate Costs"-Werte nach oben geschnellt sind? Damit wird angegeben, wieviel Zauberpunkte das Aufrufen des Zaubers kosten würde. Wenn du das nicht willst, kannst du die "Auto Calculate"-Funktion im Spell-Fenster deaktivieren. Wir machen das später auch noch!
  
  
Zeile 60: Zeile 60:
  
  
Wo wir nun ein Standard-Magie-Effekt zugefügt haben, wird es Zeit einen selbsterstellten Hinzuzufügen. Um einen Maßgeschneiderten Effekt hinzuzufügen brauchen wir ein Script. Wähle http://www.ei-der-zeit.com/LexikonCSIV/pic/button-script.jpg aus der Toolbar um den Script-Editor aufzurufen.  
+
Wo wir nun ein Standard-Magie-Effekt zugefügt haben, wird es Zeit, einen selbst Erstellten Hinzuzufügen. Um einen maßgeschneiderten Effekt hinzuzufügen, brauchen wir ein Script. Wähle [[bild:button-script.jpg]] aus der Toolbar um den [[Oblivion:Script Editor Window|Script-Editor]] aufzurufen.  
  
Wir haben nun ein leeres Script Editor Fenster, wähle daher Script->New aus dem Menü um die Textfläche zu aktivieren.  
+
Wir haben nun ein leeres [[Oblivion:Script Editor Window|Script-Editor-Fenster]], wähle daher Script->New aus dem Menü, um die Textfläche zu aktivieren.  
  
Wähle als Script-Type "Magic Effect" (So, ne: http://www.ei-der-zeit.com/LexikonCSIV/pic/button-scrptscripttypemagic.jpg ). Das ist wichtig, damit wir das Script zu einem Zauber hinzufügen können. We're now at a blank Script_Edit window. Select Script->New from the menubar in this window. The textarea will now be enabled.  
+
Wähle als Script-Type "Magic Effect" (So, ne: [[bild:button-scrptscripttypemagic.jpg]]  ). Das ist wichtig, damit wir das Script zu einem Zauber hinzufügen können.
  
Nennen wir es "MeinErstesZauberscript" und fügen eine Variable für den späteren Gebrauch hinzu. Schreibe also:
+
Nennen wir es "MeinErstesZauberscript" und fügen eine [[ob:variablen|Variable]] für den späteren Gebrauch hinzu. Schreibe also:
  
<code>scriptname MeinErstesZauberscript
+
<tesscript>scriptname MeinErstesZauberscript
  
short updateCount</code>
+
short updateCount</tesscript>
  
 
Spell-Scripts sind ein wenig anders als reguläre Scripts. Sie erkennen nur drei Script Blöcke an, während andere Arten von Scripts viel mehr anerkennen können. Falls du es noch nicht weißt: Script-Blöcke sind Code-Blöcke die unter verschiedenen Voraussetzungen gestartet werden. Spell-Scripts erkennen folgende Script-Blöcke an:
 
Spell-Scripts sind ein wenig anders als reguläre Scripts. Sie erkennen nur drei Script Blöcke an, während andere Arten von Scripts viel mehr anerkennen können. Falls du es noch nicht weißt: Script-Blöcke sind Code-Blöcke die unter verschiedenen Voraussetzungen gestartet werden. Spell-Scripts erkennen folgende Script-Blöcke an:
  
* ScriptEffectStart - Dieser Block wird ausgeführt, wenn der Zauber das erste mal aufgerufen wird (Nicht Global im Spiel)
+
* ScriptEffectStart - dieser Block wird ausgeführt, wenn der Zauber das erste Mal aufgerufen wird (nicht Global im Spiel)
* ScriptEffectUpdate - Dieser Block wird ausgeführt, in (ungefähr) jedem Frame des Spiels für die Dauer des Zaubers
+
* ScriptEffectUpdate - dieser Block wird ausgeführt, in (ungefähr) jedem Frame des Spiels für die Dauer des Zaubers
* ScriptEffectFinish - Dieser Block wird ausgeführt am Ende des Zaubers (Am Ende der Dauer des Zaubers)
+
* ScriptEffectFinish - dieser Block wird ausgeführt am Ende des Zaubers (am Ende der Dauer des Zaubers)
  
Weitere Informationen über Blöcke findet man unter BEGIN.
+
Weitere Informationen über Blöcke findet man unter [[begin|begin]].
  
  
Spell-Scripts werden von einem Actor oder einem Objekt das von dem Zauber getroffen wurde ausgeführt. Wenn ein Zauber also ein Selbst-Zauber ist, wird der Aufrufende die Kommanods im Script starten. Wenn der Zauber auf etwas zielt, wird das Ziel den Zauber ausführen (wenn es getroffen wird). Wenn der Zauber einen Flächen-Effekt hat (Area Effect), dann wird alles was den Kreis des Wirkens betritt die Befehle im Script starten.
+
Spell-Scripts werden von einem Actor oder einem [[ob:object|Objekt]], das von dem Zauber getroffen wurde, ausgeführt. Wenn ein Zauber also ein Selbst-Zauber ist, wird der Aufrufende die Kommandos im Script starten. Wenn der Zauber auf etwas zielt, wird das Ziel den Zauber ausführen (wenn es getroffen wird). Wenn der Zauber einen Flächen-Effekt hat (Area Effect), dann wird alles, was den Kreis des Wirkens betritt, die Befehle im Script starten.
 
   
 
   
  
Zeile 90: Zeile 90:
  
  
<code>Begin ScriptEffectStart
+
<tesscript>Begin ScriptEffectStart
  
 
RemoveAllItems
 
RemoveAllItems
  
End</code>
+
End</tesscript>
  
 
Dieser Effekt dürfte äußerst amüsant werden...
 
Dieser Effekt dürfte äußerst amüsant werden...
Zeile 102: Zeile 102:
 
   
 
   
  
Alles was wir in dem Update-Block machen, ist einen Counter weiterzählen. Das sagt uns dann wie viel Mal es ausgeführt wurde. Eine Interessantere Benutzung wäre vielleicht die Gesundheit zu erhöhen oder zu verringern oder etwas ähnliches.  
+
Alles, was wir in dem Update-Block machen, ist einen Counter weiterzuzählen. Das sagt uns dann, wieviel Mal es ausgeführt wurde. Eine Interessantere Benutzung wäre vielleicht, die Gesundheit zu erhöhen oder zu verringern oder etwas Ähnliches.  
  
<code>Begin ScriptEffectUpdate
+
<tesscript>Begin ScriptEffectUpdate
  
 
   set updateCount to updateCount + 1
 
   set updateCount to updateCount + 1
  
End</code>
+
End</tesscript>
  
  
Zeile 114: Zeile 114:
  
  
<code>Begin ScriptEffectFinish
+
<tesscript>Begin ScriptEffectFinish
 
    
 
    
 
Message "Der Zauber ist abgeschlossen. ScriptEffectUpdate wurde %.0f mal ausgeführt", updateCount
 
Message "Der Zauber ist abgeschlossen. ScriptEffectUpdate wurde %.0f mal ausgeführt", updateCount
  
End</code>
+
End</tesscript>
  
Dieses blendet eine Textnachricht ein, die uns sagt, das der Zauber abgeschlossen ist und wie oft der Update-Block ausgeführt wurde.  
+
Dies blendet eine Textnachricht ein, die uns sagt, dass der Zauber abgeschlossen ist und wie oft der Update-Block ausgeführt wurde.  
  
 
   
 
   
Zeile 126: Zeile 126:
  
  
<code>scriptname MeinErstesZauberscript
+
<tesscript>scriptname MeinErstesZauberscript
  
 
short updateCount
 
short updateCount
Zeile 147: Zeile 147:
 
   Message "Der Zauber ist abgeschlossen. ScriptEffectUpdate wurde %.0f mal ausgeführt", updateCount
 
   Message "Der Zauber ist abgeschlossen. ScriptEffectUpdate wurde %.0f mal ausgeführt", updateCount
  
End</code>
+
End</tesscript>
  
Wähle Script->Save aus dem Menü (oder klicke http://www.ei-der-zeit.com/LexikonCSIV/pic/button-save.jpg aus der Toolbar) und schließe den Script Editor. Sollten irgendwelche Fehlermeldungen auftauchen überprüfe das Script noch einmal auf irgendwelche Schreibfehler hin.
+
Wähle Script->Save aus dem Menü (oder klicke [[bild:button-save.jpg]]  aus der Toolbar) und schließe den [[Oblivion:Script Editor Window|Script-Editor]]. Sollten irgendwelche Fehlermeldungen auftauchen, überprüfe das Script noch einmal auf irgendwelche Schreibfehler.
  
  
Zeile 158: Zeile 158:
  
  
Wir sollten nun wieder Im Spell-Fenster sein. Rechtsklicke wieder in die Effekt-Liste und wähle "New" aus dem Kontext-Menü so wie eben auch schon.  
+
Wir sollten nun wieder im [[Oblivion:Spell Window|Spell-Fenster]] sein. Rechtsklicke wieder in die Effekt-Liste und wähle "New" aus dem Kontext-Menü, so wie eben auch schon.  
  
Dieses mal wählen wir aber "Skript Effekt" aus der Effect-DropDown-Liste. Dieses lässt uns das Script benutzen, das wir eben geschrieben haben. Sollte es nicht gehen, kontrolliere noch einmal im Script-Editor, ob du den Script-Type auch auf "Magic Effect" gesetzt hast! Die Einstellungen für das aktuelle Effekt-Item Fenster.
+
Dieses mal wählen wir aber "Skript Effekt" aus der Effect-DropDown-Liste. Dieses lässt uns das Script benutzen, das wir eben geschrieben haben. Sollte es nicht gehen, kontrolliere noch einmal im Script-Editor, ob du den Script-Type auch auf "Magic Effect" gesetzt hast! Die Einstellungen für das aktuelle [[Oblivion:Effect Item Window|Effekt-Item Fenster]]:
  
 
* '''Effect -''' Setze dieses auf "Skript Effekt"
 
* '''Effect -''' Setze dieses auf "Skript Effekt"
Zeile 174: Zeile 174:
  
  
* '''Script -''' Hier wird das Script, das ausgeführt werden soll ausgewählt. Wähle "MeinErstesZauberscript" aus der Dropdown-Liste. (Mit http://www.ei-der-zeit.com/LexikonCSIV/pic/button-punktpunktpunkt.jpg kannst du direkt den Script-Editor aufrufen, falls dein Script hier nicht aufgeführt ist und du schauen willst warum das so ist, oder weil du jetzt erst anfangen willst, ein Script hierfür zu schreiben)
+
* '''Script -''' Hier wird das Script, das ausgeführt werden soll, ausgewählt. Wähle "MeinErstesZauberscript" aus der Dropdown-Liste. (Mit [[bild:button-punktpunktpunkt.jpg]]  kannst du direkt den Script-Editor aufrufen, falls dein Script hier nicht aufgeführt ist und du schauen willst, warum das so ist oder weil du jetzt erst anfangen willst, ein Script hierfür zu schreiben).
 
* '''Effect Name -''' Name des Effekts. Wähle irgendetwas, was dir gefällt, wie vielleicht "Mach dich Nackig".
 
* '''Effect Name -''' Name des Effekts. Wähle irgendetwas, was dir gefällt, wie vielleicht "Mach dich Nackig".
* '''School -''' Welcher Magie-Schule der Effekt angehört. Wir müssen uns im Moment nicht drauf konzentrieren. Veränderung wird es aber sicher am ehesten treffen.
+
* '''School -''' Welcher Magie-Schule der Effekt angehört. Wir müssen uns im Moment nicht drauf konzentrieren. Veränderung wird es aber sicher am Ehesten treffen.
 
* '''Visual Effect -''' Welche Visuellen Effekt angewendet werden sollen. Wähle "Erzürnung" aus der Liste.
 
* '''Visual Effect -''' Welche Visuellen Effekt angewendet werden sollen. Wähle "Erzürnung" aus der Liste.
* '''Effect is Hostile -''' Wenn du dieses Aktivierst, werden es die Leute nicht mögen, wenn du den Zauber ausrufst (Wir lassen den inaktiv)  
+
* '''Effect is Hostile -''' Wenn du das aktivierst, werden es die Leute nicht mögen, wenn du den Zauber verwendest (wir lassen den inaktiv)  
 
   
 
   
  
Zeile 187: Zeile 187:
  
  
Wir sollten nun noch die "Auto-Calculate" Funktion im Spell-Fenster abschalten. Ansonsten wird der Spieler (bzw. du) vermutlich nicht in der Lage sein, den Zauber anzuwenden.  
+
Wir sollten nun noch die "Auto-Calculate"-Funktion im [[Oblivion:Spell Window|Spell-Fenster]] abschalten. Ansonsten wird der Spieler (bzw. du) vermutlich nicht in der Lage sein, den Zauber anzuwenden.  
 
   
 
   
 
Wähle nun einen entsprechenden Eintrag unter Spell Level und Spell Costs. Ich wählte hierfür "Novice" und 20. Damit dürfte dem Test nichts mehr im Wege stehen.  
 
Wähle nun einen entsprechenden Eintrag unter Spell Level und Spell Costs. Ich wählte hierfür "Novice" und 20. Damit dürfte dem Test nichts mehr im Wege stehen.  
Zeile 202: Zeile 202:
 
Bevor wir den Zauber testen können, müssen wir noch wissen, wie wir ihn im Spiel aufrufen können. Leider können wir nicht einfach "MeinErsterZauber" benutzen also müssen wir die FormID des Zaubers herausfinden.  
 
Bevor wir den Zauber testen können, müssen wir noch wissen, wie wir ihn im Spiel aufrufen können. Leider können wir nicht einfach "MeinErsterZauber" benutzen also müssen wir die FormID des Zaubers herausfinden.  
 
   
 
   
Am oberen Rand, wo die Namen sind findest du zwischen der EditorID und Count-Reihe einen Doppelstrich. Das ist die FormID die ganz zusammengeschoben ist. Sie kannst du auseinander ziehen und dann die FormID deines Zaubers herausfinden und notieren. Sie dürfte so aussehen wie "01000CE8", kann aber geringfügig abweichen.
+
Am oberen Rand, wo die Namen sind, findest du zwischen der EditorID und Count-Reihe einen Doppelstrich. Das ist die FormID die ganz zusammengeschoben ist. Die kannst du auseinander ziehen und dann die FormID deines Zaubers herausfinden und notieren. Sie dürfte so aussehen wie "01000CE8", kann aber geringfügig abweichen.
  
  
Zeile 211: Zeile 211:
 
   
 
   
  
Das ist wichtig, damit wir die Datei im Spiel auswählen können. Wähle aus der Toolbar http://www.ei-der-zeit.com/LexikonCSIV/pic/button-save.jpg und im folgenden Dialog kannst du dir einen guten Namen einfallen lassen. Da dieses nur ein Tutorial ist, muss es nichts spannendes sein, vielleicht "MeinErsterZauber", oder "Tutorial-Zauber"...  
+
Das ist wichtig, damit wir die Datei im Spiel auswählen können. Wähle aus der Toolbar [[bild:button-save.jpg]] und im folgenden Dialog kannst du dir einen guten Namen einfallen lassen. Da dies nur ein Tutorial ist, muss es nichts Spannendes sein, vielleicht "MeinErsterZauber", oder "Tutorial-Zauber"...  
 
   
 
   
Belasse auf jeden Fall deine Datei in dem vorgegebenen Ordner, denn sonst werden sie vom Spiel nicht erkannt.
+
Belasse auf jeden Fall deine Datei in dem vorgegebenen Ordner, denn sonst wird sie vom Spiel nicht erkannt.
  
  
Zeile 225: Zeile 225:
  
  
Bevor du das Spiel startest, solltest du - falls du dieses Tutorial nicht ausgedruckt hast - vielleicht zu Ende lesen oder/und dir die wichtigsten Punkte herausschreiben.
+
Bevor du das Spiel startest, solltest du - falls du dieses Tutorial nicht ausgedruckt hast - vielleicht zu Ende lesen oder/und dir die wichtigsten Punkte herausschreiben.
  
  
Wähle "Start" um das Spiel zu starten.
+
Wähle "Start", um das Spiel zu starten.
  
 
Starte ein neues Spiel, oder besser noch wähle eine (ältere) Spieldatei von dir selbst. Denk daran, dass unser Effekt am besten auf mehrere Ziele wirkt. Suche dir daher eine Gegend mir mehreren Leuten oder Kreaturen aus. Ich fand einen Thronsaal äußerst spaßig.  
 
Starte ein neues Spiel, oder besser noch wähle eine (ältere) Spieldatei von dir selbst. Denk daran, dass unser Effekt am besten auf mehrere Ziele wirkt. Suche dir daher eine Gegend mir mehreren Leuten oder Kreaturen aus. Ich fand einen Thronsaal äußerst spaßig.  
Zeile 236: Zeile 236:
 
<code>player.addspell <formId></code>
 
<code>player.addspell <formId></code>
  
Wobei die <formId> natürlich der FormID deines Zaubers entsprechen sollte - du hast ihn ja wohl aufgeschrieben, oder ?
+
Wobei die <formId> natürlich der FormID deines Zaubers entsprechen sollte - du hast ihn ja wohl aufgeschrieben, oder?
 
   
 
   
 
Dann sollte es in etwa so aussehen:
 
Dann sollte es in etwa so aussehen:
Zeile 244: Zeile 244:
 
Wenn alles richtig läuft, wird eine Meldung erscheinen, dass "Mein Erster Zauber" hinzugefügt wurde. Wähle den Zauber nun aus dem Zauberbuch und wirke ihn!
 
Wenn alles richtig läuft, wird eine Meldung erscheinen, dass "Mein Erster Zauber" hinzugefügt wurde. Wähle den Zauber nun aus dem Zauberbuch und wirke ihn!
 
   
 
   
Dein Rüstungswert sollte dann steigen und dann nach ein paar Sekunden wird eine Meldung erscheinen und dir sagen, wie oft der Block ausgeführt wurde. Außerdem wird unser selbst erstelltes Script dafür sorgen, dass die NPCs nun recht "luftig" dastehen...
+
Dein Rüstungswert sollte dann steigen und nach ein paar Sekunden wird eine Meldung erscheinen und dir sagen, wie oft der Block ausgeführt wurde. Außerdem wird unser selbst erstelltes Script dafür sorgen, dass die [[NPC|NPCs]] nun recht "luftig" dastehen...
 
   
 
   
Wenn es nicht klappt mit der FormID deinen Zauber aufzurufen, dann erhöhe die FormID indem du die zweite Zahl erhöhst (in unserem Fall war es 01000ce8 und dann wären die nächsten Schritte 02000ce8, 03000ce8 usw), bis es funktioniert. Vielleicht hast du mehr als nur die Oblivion.esm und die MeinErsterZauber-Datei im Spieldateien-Fenster gewählt und somit ist die FormID verändert worden (Weil sie in einer anderen Plugin-Datei bereits verwendet wurde). Zu Testzwecken ist es daher besser, wenn nur die Test-Datei und die Oblivion.esm aktiviert sind um solche Sachen zu vermeiden.
+
Wenn es nicht klappt mit der FormID deinen Zauber aufzurufen, dann erhöhe die FormID, indem du die zweite Zahl erhöhst (in unserem Fall war es 01000ce8 und dann wären die nächsten Schritte 02000ce8, 03000ce8 usw), bis es funktioniert. Vielleicht hast du mehr als nur die Oblivion.esm und die MeinErsterZauber-Datei im Spieldateien-Fenster gewählt und somit ist die FormID verändert worden (Weil sie in einer anderen Plugin-Datei bereits verwendet wurde). Zu Testzwecken ist es daher besser, wenn nur die Test-Datei und die Oblivion.esm aktiviert sind um solche Sachen zu vermeiden.
 +
Alternativ kannst du auch Tools wie Wrye Bash oder den OBMM verwenden, um die korrekte Nummer herauszufinden.
  
  
Zeile 253: Zeile 254:
 
   
 
   
  
 
+
==Siehe auch:==
 +
{{Übersetzung|constwiki|Scripting_Tutorial:_My_First_Spell}} 
  
  
[[Kategorie: Tutorials|Zauber, mein erster]]
+
[[Kategorie: Scripterstellung|Zauber, mein erster]]
[[Kategorie: Zauber|Zauber, mein erster]]
 

Aktuelle Version vom 24. März 2010, 18:23 Uhr

Dieses Tutorial hilft dir dabei, deinen ersten Zauber mit vordefinierten und selbst erstellten Effekten zu schreiben.




Erste Schritte


Falls du es noch nicht getan hast, öffne das TES Construction Set Programm. Wenn es geladen ist, wähle Button-data.jpg und Doppelklicke auf die "Oblivion.esm" und wähle dann "OK", um die Oblivion Master-Datei zu laden.




Erstelle einen Zauber


Nachdem der Ladevorgang abgeschlossen ist, können wir damit anfangen, einen Zauber zu erstellen. Wähle im Objekt-Fenster Magic->Spell.


Nun werden im rechten Fenster eine ganze Menge Zauber angezeigt. Öffne in dieser Liste mit der rechten Maustaste das Kontext-Menü und wähle "New" und ein leeres Spell-Fenster erscheint.

Fenster-spell.jpg

  • ID - Die ID ist der Name, mit dem der Zauber ausgerufen wird. Dieser Name muss einmalig sein und darf nicht mit anderen Namen im Editor übereinstimmen. Nennen wir unseren Zauber "MeinErsterZauber"
  • Name - Das ist der "echte" Name des Zaubers, also der Name, der im Spiel für den Spieler sichtbar ist. Nennen wir ihn hier also "Mein erster Zauber".
  • Type - Hier kann man eingeben, um welche Art Zauber es sich handelt. Es ist eine festgelegte DropDown-Liste. Wählen wir hier "Zauber".


Der Rest wird auf der Spell-Seite erklärt.




Füge vordefinierte Effekte hinzu


Im Moment ist die Effekt-Liste rechts noch leer. Weil unser Zauber aber etwas machen soll, sollten wir diesen Umstand nun aber ändern. Rechtsklicke daher in die Liste und wähle "New" aus dem Kontext-Menü. Nun erscheint das "Effect Item"-Fenster.

  • Effect - Das ist der magische Effekt, den wir aufrufen. Wählen wir hier "Schild" aus der DropDown Liste.
  • Range - Das umschreibt, an wen der Zauber gerichtet werden kann. Hier wählen wir "selbst".
  • Area - Fläche des Effekts. Das ist bei "Selbst"-Zaubern deaktiviert, weil sie nur den Actor selbst betreffen.
  • Duration - Wie lange (in Sekunden) der Zauber wirkt. Setzen wir ihn auf 30 (Sekunden).
  • Magnitude - In diesem Fall, wie viel Rüstung dem Aufrufenden gegeben wird. Wir nehmen hier mal den Wert 300.

Klicke auf OK, wenn du den Effekt für fertig erklärst.

Fenster-effect-item.jpg


Ist dir aufgefallen, wie beim Eintragen der Werte in Duration und Magnitude
die "Auto-Calculate Costs"-Werte nach oben geschnellt sind? Damit wird angegeben, wieviel Zauberpunkte das Aufrufen des Zaubers kosten würde. Wenn du das nicht willst, kannst du die "Auto Calculate"-Funktion im Spell-Fenster deaktivieren. Wir machen das später auch noch!




Erstelle ein Spell-Script


Wo wir nun ein Standard-Magie-Effekt zugefügt haben, wird es Zeit, einen selbst Erstellten Hinzuzufügen. Um einen maßgeschneiderten Effekt hinzuzufügen, brauchen wir ein Script. Wähle Button-script.jpg aus der Toolbar um den Script-Editor aufzurufen.

Wir haben nun ein leeres Script-Editor-Fenster, wähle daher Script->New aus dem Menü, um die Textfläche zu aktivieren.

Wähle als Script-Type "Magic Effect" (So, ne: Button-scrptscripttypemagic.jpg ). Das ist wichtig, damit wir das Script zu einem Zauber hinzufügen können.

Nennen wir es "MeinErstesZauberscript" und fügen eine Variable für den späteren Gebrauch hinzu. Schreibe also:

<tesscript>scriptname MeinErstesZauberscript

short updateCount</tesscript>

Spell-Scripts sind ein wenig anders als reguläre Scripts. Sie erkennen nur drei Script Blöcke an, während andere Arten von Scripts viel mehr anerkennen können. Falls du es noch nicht weißt: Script-Blöcke sind Code-Blöcke die unter verschiedenen Voraussetzungen gestartet werden. Spell-Scripts erkennen folgende Script-Blöcke an:

  • ScriptEffectStart - dieser Block wird ausgeführt, wenn der Zauber das erste Mal aufgerufen wird (nicht Global im Spiel)
  • ScriptEffectUpdate - dieser Block wird ausgeführt, in (ungefähr) jedem Frame des Spiels für die Dauer des Zaubers
  • ScriptEffectFinish - dieser Block wird ausgeführt am Ende des Zaubers (am Ende der Dauer des Zaubers)

Weitere Informationen über Blöcke findet man unter begin.


Spell-Scripts werden von einem Actor oder einem Objekt, das von dem Zauber getroffen wurde, ausgeführt. Wenn ein Zauber also ein Selbst-Zauber ist, wird der Aufrufende die Kommandos im Script starten. Wenn der Zauber auf etwas zielt, wird das Ziel den Zauber ausführen (wenn es getroffen wird). Wenn der Zauber einen Flächen-Effekt hat (Area Effect), dann wird alles, was den Kreis des Wirkens betritt, die Befehle im Script starten.


Lasst uns nun einen Block in unser Script einfügen:


ScriptEffectStart-Block


<tesscript>Begin ScriptEffectStart

RemoveAllItems

End</tesscript>

Dieser Effekt dürfte äußerst amüsant werden...


ScriptEffectUpdate-Block


Alles, was wir in dem Update-Block machen, ist einen Counter weiterzuzählen. Das sagt uns dann, wieviel Mal es ausgeführt wurde. Eine Interessantere Benutzung wäre vielleicht, die Gesundheit zu erhöhen oder zu verringern oder etwas Ähnliches.

<tesscript>Begin ScriptEffectUpdate

 set updateCount to updateCount + 1

End</tesscript>


ScriptEffectFinish-Block


<tesscript>Begin ScriptEffectFinish

Message "Der Zauber ist abgeschlossen. ScriptEffectUpdate wurde %.0f mal ausgeführt", updateCount

End</tesscript>

Dies blendet eine Textnachricht ein, die uns sagt, dass der Zauber abgeschlossen ist und wie oft der Update-Block ausgeführt wurde.


Hier nun noch einmal das gesamte Script:


<tesscript>scriptname MeinErstesZauberscript

short updateCount

Begin ScriptEffectStart

 RemoveAllItems

End

Begin ScriptEffectUpdate

 set updateCount to updateCount + 1

End


Begin ScriptEffectFinish

 Message "Der Zauber ist abgeschlossen. ScriptEffectUpdate wurde %.0f mal ausgeführt", updateCount

End</tesscript>

Wähle Script->Save aus dem Menü (oder klicke Button-save.jpg aus der Toolbar) und schließe den Script-Editor. Sollten irgendwelche Fehlermeldungen auftauchen, überprüfe das Script noch einmal auf irgendwelche Schreibfehler.


Du kannst mehr über das Scripten in den Scripting-Tutorials "Mein erstes Script" und "Mein zweites Script" erfahren.


Füge selbsterstellte Effekte hinzu


Wir sollten nun wieder im Spell-Fenster sein. Rechtsklicke wieder in die Effekt-Liste und wähle "New" aus dem Kontext-Menü, so wie eben auch schon.

Dieses mal wählen wir aber "Skript Effekt" aus der Effect-DropDown-Liste. Dieses lässt uns das Script benutzen, das wir eben geschrieben haben. Sollte es nicht gehen, kontrolliere noch einmal im Script-Editor, ob du den Script-Type auch auf "Magic Effect" gesetzt hast! Die Einstellungen für das aktuelle Effekt-Item Fenster:

  • Effect - Setze dieses auf "Skript Effekt"
  • Range - Wähle "Ziel" als Eintrag
  • Area - Gebe hier vielleicht 100 ein
  • Duration - Wähle einen kleinen Wert wie 5 oder 10, dann brauchen wir (beim testen) nicht so lange zu warten bis das Script abgeschlossen ist.




Script Effect Info


  • Script - Hier wird das Script, das ausgeführt werden soll, ausgewählt. Wähle "MeinErstesZauberscript" aus der Dropdown-Liste. (Mit Button-punktpunktpunkt.jpg kannst du direkt den Script-Editor aufrufen, falls dein Script hier nicht aufgeführt ist und du schauen willst, warum das so ist oder weil du jetzt erst anfangen willst, ein Script hierfür zu schreiben).
  • Effect Name - Name des Effekts. Wähle irgendetwas, was dir gefällt, wie vielleicht "Mach dich Nackig".
  • School - Welcher Magie-Schule der Effekt angehört. Wir müssen uns im Moment nicht drauf konzentrieren. Veränderung wird es aber sicher am Ehesten treffen.
  • Visual Effect - Welche Visuellen Effekt angewendet werden sollen. Wähle "Erzürnung" aus der Liste.
  • Effect is Hostile - Wenn du das aktivierst, werden es die Leute nicht mögen, wenn du den Zauber verwendest (wir lassen den inaktiv)




Der letzte Schliff


Wir sollten nun noch die "Auto-Calculate"-Funktion im Spell-Fenster abschalten. Ansonsten wird der Spieler (bzw. du) vermutlich nicht in der Lage sein, den Zauber anzuwenden.

Wähle nun einen entsprechenden Eintrag unter Spell Level und Spell Costs. Ich wählte hierfür "Novice" und 20. Damit dürfte dem Test nichts mehr im Wege stehen.

Schließe nun das Fenster mit einem Klick auf "OK" und der Zauber ist bereit.




Finde die FormID


Bevor wir den Zauber testen können, müssen wir noch wissen, wie wir ihn im Spiel aufrufen können. Leider können wir nicht einfach "MeinErsterZauber" benutzen also müssen wir die FormID des Zaubers herausfinden.

Am oberen Rand, wo die Namen sind, findest du zwischen der EditorID und Count-Reihe einen Doppelstrich. Das ist die FormID die ganz zusammengeschoben ist. Die kannst du auseinander ziehen und dann die FormID deines Zaubers herausfinden und notieren. Sie dürfte so aussehen wie "01000CE8", kann aber geringfügig abweichen.




Speichern


Das ist wichtig, damit wir die Datei im Spiel auswählen können. Wähle aus der Toolbar Button-save.jpg und im folgenden Dialog kannst du dir einen guten Namen einfallen lassen. Da dies nur ein Tutorial ist, muss es nichts Spannendes sein, vielleicht "MeinErsterZauber", oder "Tutorial-Zauber"...

Belasse auf jeden Fall deine Datei in dem vorgegebenen Ordner, denn sonst wird sie vom Spiel nicht erkannt.




Testen


Nun sind wir auch schon im letzten Bereich. Jetzt testen wir unseren Zauber. Starte nun Oblivion (ggf. den Editor beenden, je nach dem was deine Kiste so drauf hat). Wenn das Start-Fenster kommt, wähle "Spieldateien" hier solltest du nun deine eben benannte Datei finden und auswählen (Kreuz davor). Die Oblivon.esm muss natürlich auch aktiviert sein, sonst wird es leer im Spiel.


Bevor du das Spiel startest, solltest du - falls du dieses Tutorial nicht ausgedruckt hast - vielleicht zu Ende lesen oder/und dir die wichtigsten Punkte herausschreiben.


Wähle "Start", um das Spiel zu starten.

Starte ein neues Spiel, oder besser noch wähle eine (ältere) Spieldatei von dir selbst. Denk daran, dass unser Effekt am besten auf mehrere Ziele wirkt. Suche dir daher eine Gegend mir mehreren Leuten oder Kreaturen aus. Ich fand einen Thronsaal äußerst spaßig.

Wenn du im Spiel bist, rufe die Konsole auf, indem du die ^-Taste drückst, und gib das folgende ein:

player.addspell <formId>

Wobei die <formId> natürlich der FormID deines Zaubers entsprechen sollte - du hast ihn ja wohl aufgeschrieben, oder?

Dann sollte es in etwa so aussehen:

player.addspell 01000ce8

Wenn alles richtig läuft, wird eine Meldung erscheinen, dass "Mein Erster Zauber" hinzugefügt wurde. Wähle den Zauber nun aus dem Zauberbuch und wirke ihn!

Dein Rüstungswert sollte dann steigen und nach ein paar Sekunden wird eine Meldung erscheinen und dir sagen, wie oft der Block ausgeführt wurde. Außerdem wird unser selbst erstelltes Script dafür sorgen, dass die NPCs nun recht "luftig" dastehen...

Wenn es nicht klappt mit der FormID deinen Zauber aufzurufen, dann erhöhe die FormID, indem du die zweite Zahl erhöhst (in unserem Fall war es 01000ce8 und dann wären die nächsten Schritte 02000ce8, 03000ce8 usw), bis es funktioniert. Vielleicht hast du mehr als nur die Oblivion.esm und die MeinErsterZauber-Datei im Spieldateien-Fenster gewählt und somit ist die FormID verändert worden (Weil sie in einer anderen Plugin-Datei bereits verwendet wurde). Zu Testzwecken ist es daher besser, wenn nur die Test-Datei und die Oblivion.esm aktiviert sind um solche Sachen zu vermeiden. Alternativ kannst du auch Tools wie Wrye Bash oder den OBMM verwenden, um die korrekte Nummer herauszufinden.


Teste nun deinen Zauber und experimentiere mit dem Gelernten ein wenig herum.


Siehe auch: