Oblivion:Quest Scripts: Unterschied zwischen den Versionen

Aus Skript-Wiki
Wechseln zu: Navigation, Suche
K (Einleitung)
K (Weiterleitung nach Oblivion:Scripting allgemein#Quest Scripts erstellt)
 
(4 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
== Einleitung ==
+
#REDIRECT [[Oblivion:Scripting_allgemein#Quest_Scripts]]
  
Quest Scripts können erstellt werden, indem im [[ob:Script_Editor_Window|Script Window]] als Script Type 'Quest' ausgewählt wird. Scripts müssen als Quest Scripts bezeichnet werden, um an [[ob:Quest|Quests]] angefügt werden zu können. Quest Scripts sind [[ob:Non-Reference_Scripts|Non-Reference Scripts]] und deswegen in ihrer Syntax etwas beschränkt.
+
[[Kategorie:Scripting Wissen|Quest Scripts]]
 
 
== Grundlegende Fakten ==
 
 
 
* Quest Scripts werden nur ausgeführt, wenn die Quest läuft(das lässt sich im Spiel mit sqv QUEST_NAME herausfinden). Quests können mit den Befehlen [[ob:StartQuest|StartQuest]] und [[ob:StopQuest|StopQuest]] gestartet und angehalten werden. Beachte dabei, dass dies unabhängig davon ist, ob eine Quest grade läuft oder nicht. Eine Quest fertigzustellen bedeutet, dass sie im Tagebuch des Spielers in den 'Abgeschlossene Aufgaben'-Reiter verschoben wird - aber sie wird immer noch ausgeführt bis sie mit 'StopQuest' beendet wird.
 
* Quests werden automatisch aktiviert, wenn der Spieler einen entsprechenden Tagebucheintrag erhält. Wenn also ''[[ob:SetStage|SetStage]] QUESTNAME 10'' verwendet wird, angenommen es enthält einen Tagebuch Text, wird dadurch automatisch die Quest gestartet.
 
* Normalerweise sollte eine Quest angehalten werden, wenn sie abgeschlossen ist, damit das Quest Script nicht weiter ausgeführt wird. Wenn es einen Grund gibt das Script weiterhin laufen zu lassen(aufgrund von Dialogen oder Scripts nach der Quest), solltest du darüber nachdenken, eine zweite Quest zu erstellen (z.B. MS38 und MS38FIN).
 
* Quest Variablen können auch dann eingesehen und verändert werden, wenn die Quest nicht ausgeführt wird. Wenn eine Quest angehalten wird, wird zwar auch das Script gestoppt, aber es bleibt ebenso wie seine Variablen erhalten.
 
 
 
 
 
== Einstellen wie oft ein Quest Script ausgeführt wird ==
 
 
 
* Setze die Variable '''float QuestDelayTime''' in deinem Quest Script.
 
* Setze fQuestDelayTime, in welchem Intervall dein Script ausgeführt werden soll (in Sekunden). Wenn du es auf etwas sehr Kleines setzt(.01), wird es dann tatsächlich jeden Frame ausgeführt. Wenn du es auf 0 setzt, wird das Quest Script zur gewöhnlichen Einstellung (alle 5 Sekunden) zurückkehren. Diese Funktion ist mit Vorsicht zu benutzen - für gewöhnlich sollte fQuestDelayTime nur unter bestimmten Umständen auf etwas Kleineres als 5 gesetzt werden.
 
* fQuestDelayTime kann auch von anderen Scripts aus gesetzt werden, indem du dein Script mit angibst, z.B. '''set MyQuest.fQuestDelayTime to 0.01'''.
 
* Quest Scripts sind die einzigen Scripts, die [[ob:MenuMode|MenuMode]]-Blöcke ausführen, während der Spieler schläft oder die Schnellreise-Funktion verwendet.
 
* Da Quest Scripts immer basierend auf bestimmten Zeit-Abständen ausgeführt werden, müssen sie nicht zwangsläufig frame-synchron sein - auch wenn fQuestDelayTime auf einen sehr kleinen Wert gesetzt wird. Für manche Effekte(z.B. welche die [[ob:SetPos|SetPos]] verwenden) kann dies ungewünschte Ergebnisse haben. In dem Fall können Objekt und Magie Scripts die bessere Wahl sein.
 
 
 
 
 
==Links==
 
 
 
* [[ob:Magic Effect Scripts|Magic Effect Scripts]]
 
 
 
+ [[ob:Object Scripts|Object Scripts]]
 
 
 
[[Kategorie:Grundlegendes Wissen|Quest Scripts]]
 
 
[[Category:Sprachelemente|Quest Scripts]]
 
[[Category:Sprachelemente|Quest Scripts]]

Aktuelle Version vom 27. September 2008, 20:52 Uhr