Oblivion:Sprechen und Ansprechen: Unterschied zwischen den Versionen

Aus Skript-Wiki
Wechseln zu: Navigation, Suche
K
K
 
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 
== Sprechen und sprechen lassen ==
 
== Sprechen und sprechen lassen ==
 
Es gibt verschiedene Methoden, einen [[ob:NPC|NPC]] etwas sagen zu lassen bzw. eine Konversation zu beginnen und eine einzige, einen Nicht-[[ob:NPC|NPC]] etwas sagen zu lassen.  
 
Es gibt verschiedene Methoden, einen [[ob:NPC|NPC]] etwas sagen zu lassen bzw. eine Konversation zu beginnen und eine einzige, einen Nicht-[[ob:NPC|NPC]] etwas sagen zu lassen.  
 +
  
 
== Eine Konverversation beginnt==
 
== Eine Konverversation beginnt==
C
+
=== Anwendung ===
 
==== Aufgabenstellung ====
 
==== Aufgabenstellung ====
 
Es soll eine Konversation eröffnet werden. Teilnehmer sind der Player und Agarmir, ein [[ob:NPC|NPC]] .  
 
Es soll eine Konversation eröffnet werden. Teilnehmer sind der Player und Agarmir, ein [[ob:NPC|NPC]] .  
 +
  
 
==== Theorie ====
 
==== Theorie ====
Zeile 29: Zeile 31:
 
If Doonce == 0
 
If Doonce == 0
 
Set Doonce to 1
 
Set Doonce to 1
AgarmirRef.Activate Player
+
        AgarmirRef.Activate Player
 
endif
 
endif
  
 
end</tesscript>
 
end</tesscript>
 +
  
 
==== Handhabung ====
 
==== Handhabung ====
Zeile 46: Zeile 49:
 
==== Theorie ====
 
==== Theorie ====
 
Mit [[ob:StartConversation|StartConversation]] wird der [[ob:NPC|NPC]] zum gewünschten Gesprächspartner gehen und dann eine passende [[ob:Topic|Info]] aus dem angeforderte [[ob:Topic|Topic]] sprechen. Passend bedeutet, dass aus der Liste der [[ob:Topic|Topics]] das erste genommen wird, dessen [[ob:Bedingung|Condition]] passt.
 
Mit [[ob:StartConversation|StartConversation]] wird der [[ob:NPC|NPC]] zum gewünschten Gesprächspartner gehen und dann eine passende [[ob:Topic|Info]] aus dem angeforderte [[ob:Topic|Topic]] sprechen. Passend bedeutet, dass aus der Liste der [[ob:Topic|Topics]] das erste genommen wird, dessen [[ob:Bedingung|Condition]] passt.
Wenn eine Konversation weiter gehen kann (die gesprochene [[ob:Oblivion:Quest_Window#Response.2C_Info.2C_Topic|Info]] also keine Goodbye-Flag hat) und der Player beteiligt ist, erscheint das Dialogfenster des Gesprächspartners mit der  Liste der aktuellen [[ob:Topic|Topics]] (das geht allerdings nur, wenn der Player beteiligt ist).
+
Wenn eine Konversation weiter gehen kann (die gesprochene [[ob:Info|Info]] also keine Goodbye-Flag hat) und der Player beteiligt ist, erscheint das Dialogfenster des Gesprächspartners mit der  Liste der aktuellen [[ob:Topic|Topics]] (das geht allerdings nur, wenn der Player beteiligt ist).
  
  
 
=== Realisierung ===
 
=== Realisierung ===
 
==== Umgebung ====
 
==== Umgebung ====
Agarmir lebt. Agarmir und der Player sind in der selben Cell (sonst ist der Weg sehr weit; s.o) und es gibt ein [[ob:Oblivion:Quest_Window#Response.2C_Info.2C_Topic|Topic]] DemoTopic mit passender [[ob:Bedingung|Condition]], in dem Agarmir etwas sagt.  
+
Agarmir lebt. Agarmir und der Player sind in der selben Cell (sonst ist der Weg sehr weit; s.o) und es gibt ein [[ob:Topic|Topic]] DemoTopic mit passender [[ob:Bedingung|Condition]], in dem Agarmir etwas sagt.  
  
Bild der Condition
+
[[Bild:Dialog Condition.PNG]]
  
  
Zeile 72: Zeile 75:
 
end
 
end
 
</tesscript>
 
</tesscript>
 +
 +
 
==== Handhabung ====
 
==== Handhabung ====
 
Das Script kann als Quest- oder als Objectscript genutzt werden.
 
Das Script kann als Quest- oder als Objectscript genutzt werden.
Zeile 80: Zeile 85:
 
==== Aufgabenstellung ====
 
==== Aufgabenstellung ====
 
Agarmir, ein [[ob:NPC|NPC]],  gibt dem Player eine Information
 
Agarmir, ein [[ob:NPC|NPC]],  gibt dem Player eine Information
 +
  
 
==== Theorie ====
 
==== Theorie ====
 
Mit [[ob:SayTo|SayTo]] lässt man  einen [[ob:NPC|NPC]] eine einzelne [[ob:Topic|Info]] aus einem [[ob:Topic|Topic]] zum Spieler oder einem anderen [[ob:NPC|NPC]] sprechen. Der sprechende [[ob:NPC|NPC]] wird sich dabei zum Ziel drehen oder hingehen, wenn es das aktuelle Package erlaubt, wird damit aber nicht warten (Also sollte man diese Funktion nur dann aufrufen, wenn alle in angemessener Nähe sind, s.o.).
 
Mit [[ob:SayTo|SayTo]] lässt man  einen [[ob:NPC|NPC]] eine einzelne [[ob:Topic|Info]] aus einem [[ob:Topic|Topic]] zum Spieler oder einem anderen [[ob:NPC|NPC]] sprechen. Der sprechende [[ob:NPC|NPC]] wird sich dabei zum Ziel drehen oder hingehen, wenn es das aktuelle Package erlaubt, wird damit aber nicht warten (Also sollte man diese Funktion nur dann aufrufen, wenn alle in angemessener Nähe sind, s.o.).
 +
  
 
=== Realisierung ===
 
=== Realisierung ===
Zeile 88: Zeile 95:
 
Agarmir lebt und es gibt ein [[ob:Topic|Topic]] DemoTopic, in dem Agarmir etwas sagt.  
 
Agarmir lebt und es gibt ein [[ob:Topic|Topic]] DemoTopic, in dem Agarmir etwas sagt.  
  
Bild der Condition
+
[[Bild:Dialog Condition.PNG]]
 +
 
  
 
==== Script ====
 
==== Script ====
Zeile 106: Zeile 114:
  
 
end</tesscript>
 
end</tesscript>
 +
  
 
==== Handhabung ====
 
==== Handhabung ====
Zeile 115: Zeile 124:
 
==== Aufgabenstellung ====
 
==== Aufgabenstellung ====
 
Agarmir, ein [[ob:NPC|NPC]],  sagt etwas zu einem Totenschädel.  
 
Agarmir, ein [[ob:NPC|NPC]],  sagt etwas zu einem Totenschädel.  
 +
  
 
==== Theorie ====
 
==== Theorie ====
 
Mit dem Kommando [[ob:Say|Say]] sagt ein [[ob:NPC|NPC]] etwas. Ein Adressat ist nicht  erforderlich.  
 
Mit dem Kommando [[ob:Say|Say]] sagt ein [[ob:NPC|NPC]] etwas. Ein Adressat ist nicht  erforderlich.  
 +
  
 
=== Realisierung ===
 
=== Realisierung ===
Zeile 123: Zeile 134:
 
Agarmir lebt und es gibt ein Topic DemoTopic, in dem Agarmir etwas sagt. Er befindet sich in der Nähe des Totenschädels. Der Schädel ist persistent und hat den Namen SkullRef.  
 
Agarmir lebt und es gibt ein Topic DemoTopic, in dem Agarmir etwas sagt. Er befindet sich in der Nähe des Totenschädels. Der Schädel ist persistent und hat den Namen SkullRef.  
  
Bild der Condition
+
[[Bild:Dialog Condition.PNG]]
  
=== Script ====
+
 
 +
==== Script ====
 
<tesscript>scn MakeTheHamlet
 
<tesscript>scn MakeTheHamlet
 
;Written by keris
 
;Written by keris
Zeile 141: Zeile 153:
  
 
end</tesscript>
 
end</tesscript>
 +
  
 
==== Handhabung ====
 
==== Handhabung ====
 
Das Script kann als Quest- oder als Objectscript genutzt werden.
 
Das Script kann als Quest- oder als Objectscript genutzt werden.
 
  
 
== Ein Nicht-NPC sagt etwas ==
 
== Ein Nicht-NPC sagt etwas ==
Zeile 150: Zeile 162:
 
==== Aufgabenstellung ====
 
==== Aufgabenstellung ====
 
Eine Statue soll etwas sprechen können.
 
Eine Statue soll etwas sprechen können.
 +
  
 
==== Theorie ====
 
==== Theorie ====
Das [[ob:say|say]] hat eine "SpeakerID". Mit dieser optionalen "SpeakerID" ist es möglich, einer Kreatur, einem Activator oder einem andern Objekt das Sprechen beizubringen. Dabei braucht die ID einen [[ob:NPC|NPC]], der als Platzhalter für Rasse, Geschlecht und Stimmen-Datei herhalten muss. Der [[ob:NPC|NPC]] muss dabei aber nicht in der Welt platziert sein (es genügt also, wenn er im [[ob:Object window|Objekt-Fenster]] vorhanden ist).
+
Das [[ob:say|say]] hat eine "SpeakerID". Mit dieser optionalen "SpeakerID" ist es möglich, einer Kreatur, einem Activator oder einem andern Objekt das Sprechen beizubringen. Dabei braucht die ID einen [[ob:NPC|NPC]], der als Platzhalter für Rasse, Geschlecht und Stimmen-Datei herhalten muss. Der [[ob:NPC|NPC]] muss dabei aber nicht in der Welt platziert sein (es genügt also, wenn er im [[ob:Object Window|Objekt-Fenster]] vorhanden ist).
  
 
=== Realisierung ===
 
=== Realisierung ===
Zeile 158: Zeile 171:
 
Es gibt ein [[ob:Topic|Topic]] DemoTopic, in dem Agarmir etwas sagt. Agarmir „leiht“ also der Statue seine Stimme. Der Player steht vor der Statue.
 
Es gibt ein [[ob:Topic|Topic]] DemoTopic, in dem Agarmir etwas sagt. Agarmir „leiht“ also der Statue seine Stimme. Der Player steht vor der Statue.
  
Bild der Condition
+
[[Bild:Dialog Condition.PNG]]
 +
 
  
 
==== Script ====
 
==== Script ====
Zeile 175: Zeile 189:
 
Endif
 
Endif
 
end</tesscript>
 
end</tesscript>
 +
  
 
==== Handhabung ====
 
==== Handhabung ====
 
Das Script liegt auf der Statue
 
Das Script liegt auf der Statue
 +
  
 
== Weiterführende Hinweise ==
 
== Weiterführende Hinweise ==
[[ob:Oblivion:Quest_Window|Quest Window]]
+
*[[ob:Quest Window|Quest Window]]
[[Oblivion:Bedingung|Bedingungen]]
+
*[[Oblivion:Bedingung|Bedingungen]]
  
{{ Scriptkategorie |Dialog|Level 1 Scripts|Sprechen und Ansprechen}}
+
{{ Scriptkategorie |Dialog|Level_1_Scripts|Sprechen und Ansprechen}}

Aktuelle Version vom 15. April 2009, 12:38 Uhr

Sprechen und sprechen lassen

Es gibt verschiedene Methoden, einen NPC etwas sagen zu lassen bzw. eine Konversation zu beginnen und eine einzige, einen Nicht-NPC etwas sagen zu lassen.


Eine Konverversation beginnt

Anwendung

Aufgabenstellung

Es soll eine Konversation eröffnet werden. Teilnehmer sind der Player und Agarmir, ein NPC .


Theorie

Ohne Festlegung des zu Sagenden beginnt eine Konversation mit der Begrüßung. Durch ein Activate geschieht das Öffnen des Dialogfensters. Im offenen Dialogfenster erscheint eine Liste mit aktuellen Topics des Gesprächspartners. Aus diesen kann man dann Gesprächspunkte auswählen.

(Dies funktioniert übrigens auch mit einem Find Package auf einem NPC, wenn der Player das Target ist.)


Realisierung

Umgebung

Agarmir lebt. Agarmir und der Player sind in der selben Cell, sonst wirkt es nicht glaubhaft, obwohl es trotzdem funktioniert. Der Player ist nicht im Schleich-Modus (da sonst das Activate nicht das Dialogfenster öffnet sondern das Inventarfenster zum Stehlen).


Script

<tesscript>scn BeginPlayerDialog

Written by keris
28.12.08

short Doonce

Begin GameMode

If Doonce == 0 Set Doonce to 1

       AgarmirRef.Activate Player

endif

end</tesscript>


Handhabung

Das Script kann als Quest- oder als Objectscript genutzt werden.


Eine Konversation beginnt mit einem bestimmten Thema

Anwendung

Aufgabenstellung

Es soll eine Konversation mit einem bestimmten Thema begonnen werden. Teilnehmer sind der Player und Agarmir, ein NPC .


Theorie

Mit StartConversation wird der NPC zum gewünschten Gesprächspartner gehen und dann eine passende Info aus dem angeforderte Topic sprechen. Passend bedeutet, dass aus der Liste der Topics das erste genommen wird, dessen Condition passt. Wenn eine Konversation weiter gehen kann (die gesprochene Info also keine Goodbye-Flag hat) und der Player beteiligt ist, erscheint das Dialogfenster des Gesprächspartners mit der Liste der aktuellen Topics (das geht allerdings nur, wenn der Player beteiligt ist).


Realisierung

Umgebung

Agarmir lebt. Agarmir und der Player sind in der selben Cell (sonst ist der Weg sehr weit; s.o) und es gibt ein Topic DemoTopic mit passender Condition, in dem Agarmir etwas sagt.

Dialog Condition.PNG


Script

<tesscript>scn BeginNPCDialog

Written by keris
28.12.08

short Doonce

Begin GameMode If Doonce == 0

		If Player.Itemcount Breadloaf == 0

Set Doonce to 1

                       AgarmirRef.StartConversation Player DemoTopic

endif endif end </tesscript>


Handhabung

Das Script kann als Quest- oder als Objectscript genutzt werden.


Ein NPC sagt etwas zu jemandem

Anwendung

Aufgabenstellung

Agarmir, ein NPC, gibt dem Player eine Information


Theorie

Mit SayTo lässt man einen NPC eine einzelne Info aus einem Topic zum Spieler oder einem anderen NPC sprechen. Der sprechende NPC wird sich dabei zum Ziel drehen oder hingehen, wenn es das aktuelle Package erlaubt, wird damit aber nicht warten (Also sollte man diese Funktion nur dann aufrufen, wenn alle in angemessener Nähe sind, s.o.).


Realisierung

Umgebung

Agarmir lebt und es gibt ein Topic DemoTopic, in dem Agarmir etwas sagt.

Dialog Condition.PNG


Script

<tesscript>scn GiveInfo

Written by keris
28.12.08

short Doonce

Begin GameMode If Doonce == 0

		If Player.Itemcount Breadloaf == 0

Set Doonce to 1

                       Agarmir.SayTo Player DemoTopic

endif

       endif

end</tesscript>


Handhabung

Das Script kann als Quest- oder als Objectscript genutzt werden.


Ein NPC führt Selbstgespräche

Anwendung

Aufgabenstellung

Agarmir, ein NPC, sagt etwas zu einem Totenschädel.


Theorie

Mit dem Kommando Say sagt ein NPC etwas. Ein Adressat ist nicht erforderlich.


Realisierung

Umgebung

Agarmir lebt und es gibt ein Topic DemoTopic, in dem Agarmir etwas sagt. Er befindet sich in der Nähe des Totenschädels. Der Schädel ist persistent und hat den Namen SkullRef.

Dialog Condition.PNG


Script

<tesscript>scn MakeTheHamlet

Written by keris
28.12.08

short Doonce

Begin GameMode

If Doonce == 0 Set Doonce to 1

               AgarmirRef.Look SkullRef; damit wendet sich Agarmir dem Schädel zu 
               AgarmirRef.Say DemoTopic

endif

end</tesscript>


Handhabung

Das Script kann als Quest- oder als Objectscript genutzt werden.

Ein Nicht-NPC sagt etwas

Anwendung

Aufgabenstellung

Eine Statue soll etwas sprechen können.


Theorie

Das say hat eine "SpeakerID". Mit dieser optionalen "SpeakerID" ist es möglich, einer Kreatur, einem Activator oder einem andern Objekt das Sprechen beizubringen. Dabei braucht die ID einen NPC, der als Platzhalter für Rasse, Geschlecht und Stimmen-Datei herhalten muss. Der NPC muss dabei aber nicht in der Welt platziert sein (es genügt also, wenn er im Objekt-Fenster vorhanden ist).

Realisierung

Umgebung

Es gibt ein Topic DemoTopic, in dem Agarmir etwas sagt. Agarmir „leiht“ also der Statue seine Stimme. Der Player steht vor der Statue.

Dialog Condition.PNG


Script

<tesscript>scn SpeakingStatue

Written by keris
28.12.08

short Doonce

Begin GameMode If Doonce == 0 Set Doonce to 1

		If Player.ItemCount Breadloaf == 0
                    Say DemoTopic 1 Agarmir 1 
               Endif

Endif end</tesscript>


Handhabung

Das Script liegt auf der Statue


Weiterführende Hinweise


Weitere Scripts aus dieser Kategorie

  

           



    {{#if: Dialog | }} {{#if: Level_1_Scripts | }}