Autor Thema: Metzgers Geck-Crashkurs - NPCs  (Gelesen 14058 mal)

Offline Metzger

  • Paladin
  • Beiträge: 719
  • Rattendompteur
    • Terminal 47 - Die LCARS-Datenbank
Metzgers Geck-Crashkurs - NPCs
« am: 01. März 2009, 15:10:06 Uhr »
Heute gehts los mit Metzgers Geck-Chrashkurs. In Teil 1 beschäftigen wir uns mit der Erstellung eines NPCs, sammt Dialog und Handelsmenü. Vorraussetzung für dieses Tutorial ist dass ihr schon 
die Grundlagen des Geck beherrscht, also wie am eine eigene esp-Datei anlegt, Gegenstände in die Welt setzt und dergleichen. Na, dann fangen wir mal an.

 
VORBEREITUNG:
--------------------------

Bevor wir mit dem NPC beginnen sollten wir uns überlegen, wo er leben soll. In diesem Tut hab ich mich für einen Säufer entschieden, den wir in Megaton ansiedeln werden und der mit ein paar Dingen handelt.

GIB MIR MAL NE BUDDLE RUM - DEN NPC ERSCHAFFEN:
------------------------------------------------------------------------------------

Rechts im "Object Window" gehen wird auf "Actor -> NPC" und erstellen dort mit einem Rechtklick und "New" unseren NPC. WICHTIG! Unbedingt den neuen NPC über "New" erstellen! Würden wir die ID eines bereits 
vorhanden NPCs verändern, wie das bei Objekten problemlos funktioniert, gebe das später im Spiel Probleme mit den Dialogen.



Ich nenne meinen NPC mal Kirk. Oben geben wir eine ID an, darunter der Name wie er später im Spiel angezeigt wird. Ich beginne meine IDs immer mit einer 0, da sie so immer an oberster Stelle in den Listen 
gereiht werden. Das Feld "Script" lassen wir auf "None". Wir könnten noch ein Häkchen bei "Essential" machen, wodurch Kirk unsterblich werden würde. "Respawn" ist denke ich mal selbsterklärend und 
eigentlich unwichtig. "Quest Item" würde Kirk in seinen Handlungen gegenüber normalen NPCs Vorrang geben. Er könnte damit zum Beispiel dem Spieler schneller durch eine Tür folgen.

Bei "Race" suchen wir uns die Rasse aus der Kirk angehören soll. Ich lasse sie mal auf der Standardeinstellung. Da wir nicht wollen dass Kirk genauso groß wie die anderen NPCs im Spiel ist, ändern wir die 
0.000 bei "Height" um in 1.100. "Weight" lassen wir auf 0.0000. Würden wir Kirk kleiner machen wollen, könnten wir beispielsweise 0.9800 bei "Height" eingeben.
Bei "Voice Type" lassen wir die Standardeinstellung oder suchen uns eine passende raus. Bei "Class" nehmen wir in unserem Fall "Vendor Misc" da wir mit dem Kerl später Handeln wollen.

Als nächstes verpassen wir Kirk noch ein passendes Level. Dazu wechseln wir in den Reiter "Stats". Wir können ihm ein Standardlevel geben, zum Beispiel Level 8. Wenn wir ein Häkchen bei "Auto calc stats" 
machen, werden die Skills des NPC entsprechend seinem Level berechnet. Wenn wir wollen, dass Kirk irgendeinen Dienst anbietet (z.B. Handel) dann darf "Auto calc stats“ nicht aktiviert sein. Man kann auch das  Häkchen bei "Auto calc stats“ aktivieren, damit er die automatischen Werte berechnet, und es dann wieder entfernen, die Werte bleiben erhalten. Hier kann man sich ein bisschen spielen.



Uns interessiert als nächstes der Reiter "AI Data", also die künstliche Blödheit von Kirk.

"AI-Attributes"

Aggression: legt den Aggressionslevel fest
Confidence: den Mut von Kirk, also ob er schon beim Anblick eines Messers flieht oder sich dem Behemod mit dem Baseballschläger stellt
Assistance: hilft er Freunden in Not, oder sieht er untätig dabei zu
Mood: Kirks Laune
Energy: wie aufgeweckt unser Freund ist, beispielsweise wie viel er in der Gegend herumläuft, geht von 1 - 100
Responsibility: ist Kirk eine ehrliche Haut oder klaut er der Ghuloma den letzten Kronkorken, gibt die Wahrscheinlichkeit eines Verbrechens an das Kirk verübt, z.B.: Essen klauen, geht ebenfalls von 1 - 100

Darunter haben wir "Autocalc Services". Hier geben wir an mit was Kirk später handeln wird. Wir nehmen mal Stimpacks, Chems, Food und Alcohol.

So, unter Inventory verpassen wir ihm noch ein bisschen Ausrüstung. Dazu müssen wir uns erst mal im "Object Window" das gewünschte raussuchen und es per Drag and Drop ins Inventar ziehen. Ich gebe ihm mal 
einen Overall und eine Pistole samt Munition. Im Prinzip ist Kirk damit fertig. Unter den drei Reitern "Face", "Face Advanced" und "Head Parts" legen wir das Aussehen fest.
Kirk ist soweit fertig dass wir ihn zum Testen mal in die Welt ziehen. Als nächstes befassen wir uns mit seinem Dialog.

HASTE MAL NE KIPPE - DEM NPC SPRECHEN LERNEN:
-------------------------------------------------------------------------------------

Dazu gehen wir im "Object Window" unter "Actor Data -> Quests" und erstellen dort mit Rechtklick, "New" eine neue Quest. Hier geben wir einen Questnamen und eine ID an. "Priority" setzen wir auf 25 und machen ein Häkchen bei "Game Start Enabled". Danach klicken wir erstmal auf "OK" um die Quest zu speichern und öffnen sie gleich wieder. 
Immer so machen da sonst die Quest nicht abgespeichert wird. Der einzige Reiter der uns noch interessiert ist "Topics".

Dort machen wir links bei "Editor ID" eine Rechtklick und wählen "Add Topic". Im aufpoppenden Fenster suchen wir uns als erstes das fertige Topic "GREETING". Bei "Info" wieder Rechtklick -> "New" und einen 
passenden Text eingeben.
Als nächstes müssen wir noch ein paar weitere Topics anlegen, damit es auch ein richtiger Dialog wird. Also wieder unter "Editor ID" einen Rechtsklick -> "Add Topic". Diesmal nehmen wir kein fertiges sondern erschaffen mit einem weiteren Rechtsklick ein eigenes Topic. Ich nenne es mal "Kirk01". Im Anschluss gleich noch eines anlegen um Kirk auch einen Abschiedsgruss zu verpassen. Bei unseren so erschaffenen Topics müssen wir jetzt nur noch die passenden Texte einfügen und einige Kleinigkeiten einstellen. Das Topic GREETING nimmt eine Sonderstellung ein. Hier haben wir beispielsweise keinen Satz für den Spieler.  Wichtig ist immer bei "Condition" anzugeben zu welchem NPC der Satz gehört. Sonst sagen es später alle NPCs im Spiel.  Wir klicken einfach auf „New“. Im Feld rechts davon wählen wir „GetIsID“ aus. Im nächsten steht nun „Invalid“, wenn wir darauf klicken müssen wir die ID Kirks auswählen. Bei „Comparison“ lassen wir das "==“ stehen, und bei "Value“ ebenfalls die "1.0000“. Bei "Choices" geben wir an welche Topics im Dialogmenü zur Verfügung stehen. Ich hab bei  GREETINGS zwei verschiedene Begrüßungen erstellt und bei beiden ein Häkchen bei "Random" gemacht. Damit sagt er nicht immer dasselbe wenn wir ihn begrüßen. Hier können noch beliebig viele erstellt werden um so mehr Abwechslung ins Spiel zu bringen. Geht natürlich auch bei allen anderen Topics.
"Say Once" bedeutet das der NPC den Satz nur einmal sagt und dann nie wieder. Bei "Say Once a Day" nur einmal am Tag. "Goodbye" beendet das Gespräch und schließt das Dialogmenü. Immer daran denken bei 
"Choices" die Verknüpfung zu anderen Topics anzugeben und die "Conditions" nicht vergessen. Da wir aber mit Kirk auch handeln wollen, suchen wir unser Topic "Kirk01" raus. Hier schreiben wir den Text für 
Kirk und den Spieler rein. Rechts unten bei "Result Script (End)" schreiben wir "ShowBarterMenu" rein. Groß- und Kleinschreibung wird nicht beachtet. Der Befehl für das Reparieren von Sachen würde 
"ShowRepairMenu" heißen. Das wär’s erst mal mit den Dialogen. Um Kirk auch noch ein Handelsinventar zu geben schließen wir die Quest und gehen im "Object Window" unter "World Objects -> Container".



WO IST MEINE KISTE? - EINEN MERCHANTCONTAINER ERSCHAFFEN:
---------------------------------------------------------------------------------------------------------

Hier suchen wir uns eine passende Kiste, einen Schrank oder was einem so gefällt raus. Diesmal dürfen wir die ID klonen. Also Doppelklick auf einen Container, ich nehme mal "CrateShippingOffice" und ändere 
die ID in "0KirksInventar". Per Drag and Drop ziehen wir wieder die gewünschten Sachen aus dem "Object Window". Die Kronkorken nicht vergessen. Ein Häkchen bei "Respawn" machen. Essen, Medikamente und Drogen befinden sich übrigens unter "Game Effects -> Ingestible". Haben wir alles in die Kiste gepackt klicken wir auf "OK", bestätigen die neue ID und ziehen die Kiste anschließend in die Welt. Dort klicken wir die Kiste doppelt an und machen 
bei "Persistant Referance" ein Häkchen. Bei "Ownership" geben wir nun die ID von Kirk an und sperren die Kiste unter "Lock" mit einem durchschnittlichen Schloss ab. Als nächstes machen wir auf Kirk einen 
Doppelklick und gehen auf den Reiter "Merchant Container". Den Button "Select Reference in Render Window" drücken und unsere Kiste auswählen. Wichtig, wurde bei der Kiste das Häkchen "Perisistant Reference" 
vergessen, ist sie nicht auswählbar. Abspeichern, fertig.



Nun ist unser erster NPC fertig. Im nächsten Teil beschäftigen wir uns mit dem Tagesablauf. Viel Spaß beim Modden und gutes Gelingen. 
« Letzte Änderung: 15. März 2009, 16:15:18 Uhr von Metzger »

Offline Mr.Wolna

  • Moderator
  • Heilige Granate
  • Beiträge: 7.049
  • >>>FALLOUT4EVER<<<
Re: Metzgers Geck-Chrashkurs - TEIL 1
« Antwort #1 am: 01. März 2009, 15:28:23 Uhr »
wird zeit für eine Unterbord für tuts, so wie im modding abteil. wa?^^

Auch wenn ich damit nichts anfangen kann ,sicher sehr sehr viele andere schon. Wirklich Nice Job Metzger.
RPÜ/German Restoration Project Tanslation
Ich habe ein Gewehr, eine Schaufel und 5 Hektar Land hinter dem Haus. Man wird dich nie finden - leg dich also nicht mit mir an!  
P.s. Nein es ist nicht die Gewalt was mich an der Fallout Reihe gereizt hat,aber sie war immer die Kirsche auf der Sahnetorte ( Und ich will verdammt nochmal ne Kirsche oben drauf haben)

Offline Metzger

  • Paladin
  • Beiträge: 719
  • Rattendompteur
    • Terminal 47 - Die LCARS-Datenbank
Re: Metzgers Geck-Crashkurs - NPCs
« Antwort #2 am: 01. März 2009, 17:33:35 Uhr »
Wenns mehr Tuts werden wär das sicher nicht schlecht. Mal sehen was ich noch so schreiben kann.

Offline Mr.Wolna

  • Moderator
  • Heilige Granate
  • Beiträge: 7.049
  • >>>FALLOUT4EVER<<<
Re: Metzgers Geck-Crashkurs - NPCs
« Antwort #3 am: 01. März 2009, 17:35:39 Uhr »
Wenns mehr Tuts werden wär das sicher nicht schlecht. Mal sehen was ich noch so schreiben kann.

jo, er hat meine Anspielung verstanden.

*Mission complete*

 #lachen#
RPÜ/German Restoration Project Tanslation
Ich habe ein Gewehr, eine Schaufel und 5 Hektar Land hinter dem Haus. Man wird dich nie finden - leg dich also nicht mit mir an!  
P.s. Nein es ist nicht die Gewalt was mich an der Fallout Reihe gereizt hat,aber sie war immer die Kirsche auf der Sahnetorte ( Und ich will verdammt nochmal ne Kirsche oben drauf haben)