PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zu Tagesabläufe der NPCs erstellen u.a.



Waylander
27.04.2006, 16:56
Tag.
Das CS bietet einige ziemlich tolle Möglichkeiten. Leider habe ich keien Erfahrungen in diesen Dingen. Dennoch habe ich schon ein bisschen was hinbekommen, ein größeres Dorf, mit Hütten und NPCS.

Ich hab mich bisher erfolgreich vor dem Scripten gedrückt und wollte das auch beibehalten. Im CS bestehen diverse Möglichkeiten, den NPCs Tagesabläufe zu verpassen. Leider habe ich kein Tutorial finden können, in dem das erklärt wird, habe mich also selbst versucht. Es war kein Hexenwerk. Es begann damit, dass ich einen NPC zu einer bestimmten Uhrzeit ins Bett schickte und anschließend stand er doof in der Gegend rum. Gut, das funktionierte, aber nur in einer Cell mit einem NPC.

In einem größeren Haus, sollten es mehrere NPCs sein, die zu unterschiedlichen Uhrzeiten ins Bett gehen usw. Ich hab mit dem X-Marker gearbeitet. Allerdings gehen die mitunter in andere Betten, obwohl die nicht gemarkert sind. Woran kann das liegen?

Wegpunkte sind gesetzt, also neue, ist ja ne neue Cell. Dennoch hängen die NPCs manchmal an Gegenständen fest oder laufen an den falschen Stellen. Warum?

Wo ist der Unterschied zwischen Travel und Wander? Was kann man mit Find anstellen? (Bewirkt bei mir nichts). Wie kann ich ein Static Object zu einer Reference machen? Damit wären nämlich schon viele Probleme erledigt. :)

Katan
27.04.2006, 20:56
1. Damit ein NPC nach Ablauf eines Pakets nicht doof in der Gegend rumsteht, verpasst du ihm - wie es auch gedacht ist - ein, zwei Pakete mehr. ;)
Nach ihrer Priorität werden die dann abgearbeitet. Nehmen wir an, bei einem NPC läuft gerade das Wander-Paket. Der spult das jeden Tag ab. Du findest ihn jeden Tag am selben Ort zur selben Zeit. Und eines Tages - ist er nicht da. In diesem kleinen Beispiel hat dir einfach mal das Travel-Paket dazwischen gefunkt. Das hat nämlich gesagt: Sunday, 20 Uhr, Elven Garden District, Dauer von 6 Stunden (Must Complete markiert). Du findest ihn also am Sonntag um 20 Uhr immer im Elven Garden District, wo er sich genau 6 Stunden befindet, bevor ein neues Paket gestartet wird. Nur so nebenbei erwähnt.

2. Stell' die NPCs mal als Owner ihrer entsprechenden Betten ein.

3. Wander und Travel: cs.elderscrolls.com (http://cs.elderscrolls.com/constwiki/index.php/Main_Page) hilft. Und das nicht nur in Sachen Packages. ;)


Wander
Target:
Keine Funktion.

Location:
Der NPC geht zu diesem Ort und wandert in dem eingestellten Radius umher. Der Radius muss mehr als 0 betragen. Empfohlen ist ein Radius von 100+. NPCs mit Wander-Paket werden außerdem versuchen in diesem Radius Leute zum Reden zu finden. Wenn du nicht willst, dass ein NPC unter diesen Umständen Dialoge spricht, muss "skipfallout behavior" (http://www.tikanderoga.net/Katan/tes/skipfallout.gif) markiert sein. Der Energielevel eines NPCs legt fest, wie oft er sich während des Ausführens des Wander-Pakets bewegt. Finden sie in ihrem Bewegungsradius einen Stuhl, werden sie sich wahrscheinlich für eine Weile darauf setzen.

Duration = 0
Ist keine Box markiert: Der NPC bewegt sich an dem Ort bis ein Paket von höherer Priorität gestartet wird.
Must Complete: Bedeutungslos.
Must Reach Location: Es wird kein anderes Paket gestartet, bevor der Zielort nicht erreicht ist. Beim Zielort angekommen wandern, bis ein Paket mit höherer Priorität gestartet wird.

Duration > 0
Ist keine Box markiert: Der NPC bewegt sich an dem Ort, bis die Dauer ausläuft; ausgenommen die Situation, dass ein Paket mit höherer Priorität vor dem Ende der Dauer startet.
Must Complete: Der NPC bewegt sich an dem Ort, bis die Dauer ausläuft; kein anderes Paket wird gestartet, bevor der NPC nicht an dem Zielort angekommen UND die Dauer abgelaufen ist.
Must Reach Location: Es wird kein anderes Paket gestartet, bevor der Zielort nicht erreicht ist. Beim Zielort angekommen die Dauer abwandern, bis ein Paket mit höherer Priorität gestartet wird.

Travel
Target:
Keine Funktion.

Location:
Der NPC geht an einen festgelegten Ort. Sollten Questeinstellungen den NPC dazu zwingen, das Paket erneut zu benutzen, wird er einfach an Ort und Stelle stehen bleiben. Wird hier ein Einrichtungsgegenstand wie bspw. ein Bett oder Stuhl ausgewählt, legt der NPC sich auf das Bett oder setzt sich auf den Stuhl.

Duration = 0
Ist keine Box markiert: Reisen bis der Zielort erreicht wird, könnte aber auch zu einem Paket mit höherer Priorität überwechseln, bevor der NPC den Zielort erreicht.
Must Complete: Reisen bis der Zielort erreicht ist. Bevor der Zielort nicht erreicht ist, wird kein anderes Paket gestartet.
Must Reach Location: Genau wie bei Must Complete, nur dass eine Neuberechnung folgt (Pakete werden durchgegangen, eines wird ausgesucht, es wird gestartet), wenn er am Zielort ankommt, anstatt dass er auf den normalen Wechselintervall wartet.

Duration > 0
Ist keine Box markiert: Reisen bis der Zielort erreicht wird, könnte aber auch zu einem Paket mit höherer Priorität überwechseln, bevor die Dauer abgelaufen ist; dann steht er rum (oder es wird ein Paket mit höherer Priorität gestartet). Erreicht der NPC den Zielort nicht vor Ablauf der Dauer, wird zu einem anderen Paket gewechselt.
Must Complete: Reisen bis der Zielort erreicht ist. Es wird kein anderes Paket gestartet, bevor der Zielort nicht erreicht ist UND die Dauer abläuft.
Must Reach Location: Reisen bis der Zielort erreicht wird. Es wird kein anderes Paket gestartet, bevor der Zielort nicht erreicht ist. Wird der Zielport vor Ablauf der Dauer erreicht, wird zu einem anderen Paket mit höherer Priorität gewechselt.