Nirn.de

Gast

Thema: Tutorial-Sammlung (KEINE Diskussion!)  (Gelesen 64132 mal)

  • Skelett-Krieger
    • Untot
Dieser Thread soll eine Zusammenfassung aller Tutorials sein, um Neulinge den Einstieg ins CS zu erleichtern.
Da Neulinge keine Lust haben sich durch diverse Textmassen zu kämpfen sondern meist gezielt nach einzelnen Tutorials suchen findet hier KEINE Diskussion statt!  ;)
Hier werden ausschließlich Tutorials vorgestellt, jeder der sein Tutorial veröffentlichen will darf das hier tun.

Ich fange hier schon gleich mit einem 4 teiligen Tutorial an, diese 4 Teile sind:
  • Meine Residenz in Cyrodiil
  • Mein Eiland im Niben
  • Allgemeiner Aufbau der Scripte
  • Funktionsweise von KI und Quests
Wir beginnen mit Teil 1:
Meine Residenz in Cyrodii
Grundinformationen zum Construction Setl

Heute bauen wir ein Haus in Cyrodiil!

Zuerst starten wir das Construction Set, welches auf den ersten Blick etwas Unübersichtlich erscheint, aber man kann sich ganz schnell einarbeiten.
Nachdem das Construction Set geladen ist, muss die Masterfile von Oblivion geladen werden, damit man damit auch etwas anfangen kann. Also klicken wir auf „File“ und dann auf „Data…“, nun bietet sich folgendes Bild:
Nun doppelklicken wir auf das Kästchen vor Oblivion.esm, so dass dort ein Häkchen erscheint, anschleißend mit OK Bestätigen.
Das Laden kann je nach Hardware etwas dauern.
Wenn die ESM fertig geladen wurde, haben wir alle Spieldaten und Level die es in Oblivion gibt und können sie verändern.
In Oblivion ist der Spielbereich in mehrere „Welten“ aufgeteilt, jede Stadt ist eine eigene Welt, Oblivion ist eine eigene Welt und Cyrodiil (im Editor Tamriel) genannt auch eine eigene.
Nun klicken wir im Fenster „Cell-View“ auf WorldSpace und wählen die Welt Tamriel, da unser Haus ja dort stehen soll und nicht in Oblivion oder sonst wo.
Jede Celle, die unter EditorID steht ist ein Level Bereich, ganz Cyrodiil ist in solche Cellen aufgeteilt.
Ich dachte mir mein Haus sollte in Weye stehen, dem winzigen Ort an der Brücke die in die Kaiserstadt führt. (Es ist egal, wo ihr euer Haus hinstellt, ich nehme das hier nur als Beispiel.)
Also suchen wir im Cell View Fenster die Celle „WeyeExterior“ und klicken diese doppelt an. Nun lassen wir die Maschine laden.
Das sollte nun etwa so aussehen:
Die lila Fläche ist das Wasser, die gelb gestrichelten Linien sind die Grenzen der Cellen, ihr könnt diese mit Taste B aktivieren und deaktivieren.
Mit Taste A könnt ihr das ganze etwas Heller Ausleuchten.
Nun sollt Ihr lernen wie man die Kameraperspektive des Editors verändert.
Mit dem Mausrad kann man entweder näher ran oder weiter weg Zoomen.
Um die Blickrichtung zu ändern drückt bitte Shift und bewegt eure Maus gleichzeitig, um sich mit der Maus umzusehen.
Probiert etwas herum, bis ihr die Steuerung beherrscht.
Nun kommen wir zum Haus selbst.
Zuerst müssen wir uns entscheiden, wo das Haus denn stehen soll. Diese Entscheidung ist jedem selbst überlassen, ich habe mich dafür entschieden es über der Brücke links des oberen Hauses zu platzieren.
Zoomt an den Platz heran, an dem ihr bauen wollt.
Nun platzieren wir unser Häuschen in der Welt, es gibt viele Hausmodele in Oblivion, die allesamt im Object Window unter World Objects/Static/ zu finden sind.
Nun suchen wir ein Hausmodel, das zu den anderen in Weye passt, sie sind zu finden unter „World Objects/Static/Architecture/FarmhouseX“, wobei X für die Art des Hauses steht.
Ich nehme für meinen Zweck das Erstbeste, „Farmhouse01“.
Nun packe ich FarmHouse01 mit einem Mausklick, und ziehe es per Drag&Drop in das Render Window daneben, das sollte nun etwa so aussehen:
Wie wir sehen hängt das Haus an der einen Seite in der Luft und ist sehr ungünstig platziert.
Also müssen wir es verschieben.
Dazu klicken wir es an und halten die Maustaste gedrückt, nun können wir das Haus mit der Maus in eine passende Position verschieben.
Wie ihr vielleicht feststellen werdet, funktioniert das nur in zwei Achsen, auf X und Y, aber nicht auf Z (die Höhe), um ein Object auf der Z Achse zu verschieben muss die Taste Z dabei gedrückt sein.
Um das Haus zu drehen müsst ihr statt mit der linken Maustaste es mit der Rechten anklicken.
Probiert einwenig herum, bis es eine passende und brauchbare Position hat.
Bei mir sieht das etwa so aus:
Man könnte nun meinen, dass das Haus fast fertig ist.
Aber es gibt ja noch keinen Innenbereich, den wollen wir natürlich auch um das ganze Gerümpel dass ein Abenteurer mit sich schlept irgentwo abzuladen
Nun müssen wir einen Innenbereich für das Haus erstellen.
Dazu klicken wir ganz oben auf World und anschließend auf Cells.
Nun haben wir das Cellenfenster vor uns.
Aber es ist noch die Welt Tamriel aktiv, mit der wir nichts anfangen können, weil sie nur aus Außengebieten besteht.
Wählen wir dazu bei World Space ganz oben „Interior“ aus.
Dort sind die Innenbereiche verstaut.
Nun klicken wir mit Rechtsklick auf die Schaltfläche und anschließend auf „New“.
Bei NewForm Editor ID geben wir nun „Mein Haus“ ein, dieser Name trägt das Haus nur im Editor aber nicht im Spiel.
Die Einstellungen sind auf Standart so brauchbar, nur eines müssen wir noch angeben, der Name des Hauses im Spiel! Also klicken wir auf Interior Data und geben bei Name den entsprechenden Namen eingeben, also z.B. Characktername Haus.
Anschließend mit einem Klick auf OK bestätigen.
Nun wählen wir im Cell View Fenster Interior aus, suchen das Interior „MeinHaus“ und klicken es wieder doppelt an. Um das Haus heller auszuleuchten das man etwas sehen kann drücken wir die Taste A.
Zum Äußeren des Hauses gibt es auch ein Inneres, zu finden unter World Objects/Static/Architecture/FarmHouseInterior01 welches wir wider per Drag&Drop ins Render Window verfrachten.
Nun sehen wir ein leeres Gestell, aber es muss noch mit Möbel gefüllt werden.
Als ersts suchen wir uns ein Bett und platzieren es genauso im inneren des Hauses. (Tipp: Mit Taste F wird das Model direkt auf den Boden gesetzt)
Das Bett finden wir unter Furniture/Furniture/MiddleClass/MCSingleBed, genauso wie die anderen Möbel, davon könnt ihr das Haus jetzt so zustellen wie ihr wollt.
Wenn euch ein Möbelstück nicht gefällt könnt ihr es über die Entf Taste löschen.
Unter Static/Clutter findet ihr weitere Möbel, die von der KI und dem Spieler nicht genutzt werden können und nur einen optischen Zweck erfüllen, z.b. Tische.
Wenn alles fertig ist, sollte es etwa so aussehen:
Diese seltsamen Figuren sind im Spiel nicht zu sehen, und dienen nur zur Steuerung der KI.
Nun wollen wir das Haus etwas ausleuchten, also machen wir Static/Light auf und platzieren an den Fenstern ein ARBlueAmb500-Licht und in einen der Kamine ein Feuer, zu finden unter Static/Light/Fire.
Am Schluss sollte es etwa so aussehen:
Nun brauchen wir noch Gegenstände, also Platzieren wir ein Schwert auf dem Tisch, welches wir unter Items/Weapons finden, ich nehme ein Stahllangschwert, welches den Namen WeapSteelLongsword trägt.
Platzieren wir es in der Luft über dem Tisch.
Anschließend klicken wir oben auf World/Run Havok Sim.
Wie wir sehen, fällt das Schwert physikalisch korrekt auf den Tisch.
Bei ebenen Flächen wie bei diesem Tisch mag es noch einfach sein, Gegenstände von Hand darauf abzulegen, aber spätestens bei unebenen Gelände oder Dungeons stellt es sich als richtige Schwierigkeit heraus.
PS: Nur Items fallen dabei, keine Statics!
Ihr könnt nun noch einige Items verteilen.
Nun kommen wir zum letzten Punkt, dem verbinden von Innen- und Außenbereich!
Dazu brauchen wir eine Tür, die wir nun im Türramen des Innenhauses und Außen in Weye platzieren.
Eine passende Tür findet sich unter Doors/Architecture/Farmhousedoor.
Nachdem die Tür platziert ist klicken wir sie doppelt an (im Render Window).
Anschleißend wählen wir das Tab „Teleport“.
Anschließend machen wir das Häckchen Teleport an, wählen bei Celle „WeyeExterior“ und unter Reference die Tür die wir in Weye platziert haben, achtet dabei auf die ID dahinter, welche die Richtige ist könnt ihr herausfinden wenn ihr die Tür außen in Weye doppelt anklickt.
Klickt nun auf Ok, nun erscheint eine gelbe Box in der Tür, dreht diese bitte so dass sie ins Innere des Hauses zeigt.
Nun klicken wie die Box doppelt an und bestätigen mit Ja.
Nun müsste dieselbe Box auch in Weye erscheinen, welche wir hier auch vor der Tür platzieren.

Glückwunsch! Dein erstes Haus ist vollendet!
Nun klicke auf File/Save und gib als Name „MeinHaus“ ein, anschließend muss die Datei unter Zusatzdateien im Oblivion Launcher aktiviert werden und du kannst dem Haus Ingame einen Besuch abstatten!

Kommt auf die dunkle Seite der Macht! Wir haben Kekse!
  26.03.2006, 20:34
  • Offline
  • http://antipapsti.de/


  • Freund
    • Neuling
Meine eigene Ausrüstung
Wie man eigene Waffen und Rüstungen erstellt


Das Ziel dieses kleinen Tutorials ist es, eine neue Rüstung und eine neue Waffe für den Spieler zu erstellen. Wie man eine neu aussehende Waffe erstellen kann wird in diesem Tutorial nicht erklärt. Hierfür wären das Programm 3D-Studio Max und ein Exporter von Bethesda (welcher hoffentlich noch kommt) nötig. Außerdem wäre es äußerst kompliziert.
Wir wollen uns hier nun darauf beschränken, eine Rüstung von Oblivion zu nehmen und unseren Wünschen anzupassen - grafisch können wir sie nicht verändern, doch ihre Werte können wir beliebig vertauschen.

Zuerst öffnen wir die Datei Oblivion.esm. Im Object Window wählen wir nun unter „Items“ die unterste Kategorie, nämlich „Weapon“ aus:


Wie wir sehen hat „Weapon“ zwei Unterkategorien: „Staffs“ für die Zauberstäbe und „Weapons“ für alle normalen Waffen, wobei „Weapons“ noch einmal unterteilt ist. Dort wählen wir nun einmal „Steel“ aus (hier sind alle Stahlwaffen gespeichert). Für unser Ausrüstungsset wollen wir ein Langschwert erstellen. Wir wählen uns also folgendes Objekt aus: „WeapSteelLongsword“ und doppelklicken es:


Die ID ist die eindeutige Bezeichnung eines jeden Objektes; so wie jedes Auto ein Kennzeichen hat, so wie auf jedem Geldschein eine bestimmte Nummer steht und so wie jedes Bankkonto seine eigene Nummer hat, so hat auch im Construction Set jedes Objekt seine eigene ID. In diesem Falle ist die ID „WeapSteelLongsword“. Wenn wir die Werte abändern, so wird jedes Stahllangschwert im Spiel davon beeinflusst. Also müssen wir ein neues Stahllangschwert erstellen - wir wollen ja schließlich ein Schwert nur für unseren Charakter und nicht eines, das jeder dahergelaufene Bandit ebenfalls mit sich trägt. Hierzu gibt es nur eine Möglichkeit: Wir müssen die ID abändern. Ich verwende für kleinere PlugIns immer IDs des Formates „00NameDesItems“ - verwenden wir hier also „00ARMSteelLongsword“ (ARM soll hier für AusRüstungsMod stehen).
Klicken wir nun auf „OK“. Es erscheint ein Fenster. Wenn wir dieses mit „Ja“ bestätigen, so bleibt „WeapSteelLongsword“ erhalten und „00ARMSteelLongsword“ wird als neues Objekt erstellt. Lehnen wir es aber mit „Nein“ ab, so wird nur „WeapSteelLongsword“ umbenannt, was die ganze Aktion sinnlos machen würde. Klicken wir also „Ja“.

Nun öffnen wir in der Kategorie „Items -> Weapon -> Weapons -> Steel“ unser „00ARMSteelLongsword“. Hier können wir nun alle Daten und Werte der Waffe verändern. Unter „Name“ kann der im Spiel angezeigte Name verändert werden. Unter „Type“ solltet ihr besser keine Änderungen vornehmen, denn sonst kann es vorkommen, dass euer Charakter ein Langschwert als Bogen verwendet o.ä. Auch unter „Script“ nehmt ihr besser keine Veränderungen vor (würdet ihr dem Schwert eine besondere Bedeutung innerhalb eines Quests geben wollen, so wäre ein Script nötig, aber für unser Beispiel ist er das nicht). Unter „Enchanting“ könnt ihr einstellen, ob auf eurem Schwert eine Verzauberung liegen soll (wie ihr eigene Verzauberungen erstellen könnt wird an anderer Stelle erklärt), „Enchanting“ bestimmt die Menge der Ladung auf der Waffe, d.h. wie oft die Verzauberung verwendet werden kann bevor man die Waffe erneut aufladen muss.
„Weight“ legt fest, wie schwer das Schwert im Spiel ist (dies ist wichtig für die Menge, die der Spieler tragen kann); „Value“ legt den Wert (für An- und Verkauf) fest; „Health“ sagt aus, wie viel das Schwert aushält, bevor es zerbricht und repariert werden muss (je höher die Health, desto öfter kann man mit dem Schwert zuhauen bis es zerbricht; die Health bestimmt jedoch nicht, wie schnell das Schwert zerschleißt). „Speed“ bestimmt die Geschwindigkeit der Waffe (Dolche haben hier natürlich einen viel höheren Wert als ein schwerer Kriegshammer), d.h. wie schnell, also wie oft in einem bestimmten Zeitraum, ihr mit der Waffe zuhauen könnt. „Reach“ bestimmt die Reichweite der Waffe (ein Dolch hat weniger als ein beidhändiges Schwert). „Damage“ legt fest, wie viel Schaden das Schwert im Spiel zufügen kann - der wohl wichtigste Wert einer jeden Waffe.
„Ignores Normal Weapon Resistance“ definiert die Waffe als Silberwaffe (d.h. man kann Geistern damit Schaden zufügen). Wenn die Waffe bereits eine Verzauberung hat, so ist diese Option unnötig. Quest Item sollt ihr auf keinen Fall aktivieren - dies ist nur für Waffen geeignet, die im Rahmen eines Auftrages Verwendung finden (ihr könnt solche Waffen nicht aus eurem Inventar entfernen).
Wenn ihr alles fertig eingestellt habt, dann überprüft noch einmal, ob auch alles passt. Ach ja, von den beiden Buttons links oben lasst am besten ganz die Finger: Diese sind dafür da, wenn ihr das Aussehen des Schwertes ändern wollt, was, wie ja bereits oben erwähnt, sehr schwierig ist. Bei mir sieht es dann so aus:


Wenn wir nun zufrieden sind klicken wir auf „OK“ - wir haben soeben ein neues Schwert erstellt! Kommen wir also zum nächsten Schritt: Unsere Rüstung!
Wir gehen nun auf „Items -> Armor -> Iron“ und wählen dort „Iron Cuirass“ per Doppelklick aus:


Die rechte Seite wollen wir vollkommen vernachlässigen (sie wäre für die grafischen Veränderungen da). Wieder wollen wir die ID umändern auf „00ARMIronCuirass“. Wir öffnen nun das neue Objekt und bearbeiten es. „Name“, „Script“, „Weight“, „Value“ und „Enchanting“ sind genau so wie bei den Waffen. Neben „Weight“ können wir nun einstellen, ob unsere Rüstung schwer oder leicht sein soll (eine Eisenrüstung sollte schwer sein). „Health“ legt fest, wie viele Schläge die Rüstung abbekommen kann, bevor sie zerbricht. „AR“ (Armor Rating) gibt den Schutzwert der Rüstung an.
„Quest Item“ legt dasselbe fest wie bei den Waffen, „Hide Amulet“ ist dazu da, dass der Rüstungsteil das Amulett, das der Spieler trägt, verdeckt, „Hide Rings“ tut dasselbe mit Ringen („Hide Amulet“ sollte man also nur bei Harnischen auswählen, „Hide Rings“ am besten eher nur bei Handschuhen). Wichtig ist der Haken bei „Playable“, denn sonst kann der Spieler die Rüstung nicht anziehen.
Wenn wir zufrieden sind bestätigen wir mit „OK“.

Nun wollen wir noch einige stählerne Bestandteile für unsere Rüstungen erstellen. Wir gehen also auf „Items -> Armor -> Glass“. Auch hier können wir nun wieder nach dem bekannten Schema den Rest unserer Rüstung erstellen (wir könnten natürlich auch eine Reine Eisenrüstung, oder eine Mischung aus Leder- und Kettenrüstung oder was auch immer basteln).

Schließlich haben wir unsere Rüstung fertig, und auch unser Schwert von vorhin existiert natürlich noch. Wenn wir bei allen das Häkchen „Playable“ aktiviert haben sind sie auch spielbar. Starten wir also schnell das Spiel und stellen fest, dass die Rüstungsteile und die Waffe zwar existieren, aber nirgendwo im Spiel zu finden sind.
Öffnen wir also erneut das Construction Set (der schlaue Leser wird es wohl direkt offen gelassen haben) und laden unser Pluginfile. Nun könnten wir natürlich die Waffen einfach so in die Welt legen, z.B. auf die Brücke zur Kaiserstadt. Doch wenn wir uns schon so viel Arbeit machen, dann soll das ganze wenigstens Stil haben.
Wir gehen also im „Object Window“ auf „World Objects -> Container“ und wählen dort „ChestClutterLower02“ aus und ändern wie gehabt die ID (dies ist hier besonders wichtig, da sonst jede Truhe im Spiel das, was wir gleich dort hineinfüllen werden, beinhalten würde). Wenn wir die ID geändert und das Objekt erneut geöffnet haben können wir wieder einige Sachen verändern. Wichtig ist hier vor allem, dass wir den Haken bei „Respawns“ entfernen - Wenn dieser Haken dort ist bedeutet das, dass die Kiste nach einer bestimmten Zeit wieder voll ist (d.h. wir könnten die Kiste mehrfach entleeren). „Weight“ legt übrigens fest, wie viel Gewicht in die Truhe passt (man kann jedoch im CS mehr reinfüllen, als eigentlich reingeht; nur der Spieler könnte im Spiel keine weiteren Sachen in die Truhe füllen).
Nun ist es aber unser Ziel, die Kiste mit der erstellten Waffe und der erstellten Rüstung zu füllen. Dazu öffnen wir unsere Kiste und löschen alle Einträge in der rechten Tabelle heraus (anklicken und „Entf“ klicken). Nun ziehen wir unsere erstellten Gegenstände per Drag&Drop aus dem „Object Window“ in die rechte Seite des offenen Fensters unserer Kiste. Sobald wir alle unsere Gegenstände dort eingebaut haben können wir mir „OK“ bestätigen:



Wir haben nun also eine eigene Waffe, einen eigenen Rüstungssatz und eine neue Kiste, die diese Ausrüstung enthält, erstellt. Nun müssen wir die Kiste nur noch per Drag&Drop an irgendeine Stelle der Welt hinstellen (ob in einen gefährlichen Dungeon, in die Straßen der Chorolls oder mitten in die Wildnis, das sei dem Spieler überlassen).
Viel Spaß mit eurer eigenen Ausrüstung in Oblivion.
J.R.R. Tolkien - The Silmarillion
Few ever changed his courses by counsel, none by force.

  02.04.2006, 00:00
  • Offline
  • http://www.abenteuer-mittelerde.de


  • Freund
    • Neuling
Der Magielehrling
Zaubersprüche und Verzauberungen erstellen


Das Ziel dieses Tutorials ist es, zwei eigene Zaubersprüche (einen Feuerball und einen Heilzauber), eine dauerhafte Charaktereigenschaft für einen NPC (er soll starke Resistenzen gegen Feuer und Blitz, dafür aber eine Anfälligkeit gegen Eis, haben), eine Verzauberung für eine Waffe (sie soll einen Gegner beim Berühren lähmen) und einen Zauberstab (er soll dem Gegner Stärke entziehen) zu erstellen.

1. Zaubersprüche erschaffen
Wir gehen auf „Object Window -> Magic -> Spell“, klicken dort mit rechts in die Liste und gehen dann auf „New“. Wir geben als ID „00SPMSpell1“ und einen passenden Namen für einen Heilzauber ein. Als „Type“ nehmen wir „Zauber“. Nun gehen wir rechts in das weiße Feld mit der Überschrift „Effects“, klicken dort mit der rechten Maustaste und wählen „New“.
Im folgenden Fenster können wir nun einen Effekt des Zauberspruches auswählen. Wir wählen bei „Effect“ „Lebensenergie wiederherstellen“, bei „Range“ „Selbst“ (der Spruch soll ja schließlich den Spieler heilen und nicht die Gegner). „Duration“ besagt, wie viele Sekunden der Effekt wirkt, „Magnitude“ wie stark er ist, d.h. wie viele Lebenspunkte pro Sekunde wiederhergestellt werden. „Actov Val“ lassen wir offen, und um „Script Effect Info“ kümmern wir uns erst gar nichts. Rechts bei „Autp Calculated Costs“ sehen wir, wie hoch die Anforderungen und Kosten des Effektes sind:
 

Wir bestätigen mit „OK“ und sehen nun im Zauberspruchfenster den Effekt. Wir können beliebig viele Effekte aus beliebig vielen Schulen der Zauberei hinzufügen. Der Effekt, der die größten Kosten verursacht, bestimmt, zu welcher Schule der gesamte Spruch gehört (auch wenn wir nun zwanzig Sprüche aus der Schule der Zerstörung hinzufügen würden, die jeweils 35 kosten würden wäre der Gesamtspruch nach wie vor Wiederherstellung).
„Disallow Spell Absorb/Reflect“ macht, dass der Spruch weder absorbiert noch reflektiert werden kann (bei einem Heilzauber auf sich selbst zwar unnötig, aber das ist egal). „Script Effect Always Applies“ vernachlässigen wir hier, „Area Effect Ignores LOS“ bedeutet, dass der Zauberspruch auch wirkt, wenn z.B. ein Baum zwischen dem Magier und seinem Ziel steht, „Immune to Silence“ bedeutet, dass der Magier den Spruch immer verwenden kann, egal ob auf ihm der magische Effekt „Silence“ lastet oder nicht. „PC Start Spell“ fügt den Spruch dem Anfangsinventar des Spielers hinzu. Wenn wir unten bei Auto-Calculate das Häkchen entfernen können wir selber die Anforderungen und Kosten des Spruches festlegen:
 

Wir bestätigen mit „OK“ und erstellen einen zweiten Zauberspruch, den Feuerball. Als Effekt nehmen wir hier „Feuerschaden“, bei Range wählen wir „Ziel“, damit es auch ein Feuerball ist. „Area“ bestimmt nun, bis in welche Entfernung der Zauberspruch wirkt, in diesem Falle also, wie weit der Feuerball fliegt. „Duration“ und „Magnitude“ sind wie gehabt, der Rest ebenfalls. Bestätigen wir mit „OK“, so haben wir wieder unser Zauberspruchfenster. Hier wäre es nun vielleicht noch sinnvoll, das Häkchen bei „Area Effect Ignores LOS“ zu aktivieren, damit die Gegner sich nicht hinter Objekten vor dem Spruch verstecken können. Das muss aber nicht sein; der Spruch würde ansonsten halt an einem Baum, Stein oder Zaun abprallen.
Nun haben wir die beiden Sprüche erstellt. Der Spieler hat sie nun beim Spielstart direkt verfügbar. Außerdem können wir sie natürlich auch einem NPC oder einer Kreatur zuteilen („Object Window -> Actors -> NPC/Creature“, dort jemanden auswählen, das Tab „SpellList“ wählen und den Spruch per Drag&Drop hereinziehen). Nun haben wir unsere beiden Zaubersprüche erstellt.

2. Charaktereigenschaft erstellen
Im Prinzip funktioniert dies auch nicht anders als, einen Zauberspruch zu erstellen (im CS ist eine Eigenschaft nur eine Unterart der Zauber). Wir müssen den Spruch nur als Eigenschaft ausweisen und einige Details abändern.
„Object Window -> Magic -> Spell -> Eigenschaft“, „New“ machen, ID und Namen eingeben, bei „Type“ „Eigenschaft“ wählen. Nun erstellen wir die Effekte, und zwar einmal „Feuer widerstehen“, einmal „Schock widerstehen“ und „Anfällig gegen Frost“. Wie wir sehen können, kann man bei Eigenschaften nur „Selbst“ auswählen, und nicht „Ziel“ o.ä., da Eigenschaften ja dauerhafte Effekte sind, die man nicht zusätzlich auswählen. Bei Duration wählen wir 0, da der Effekt ja dauerhaft ist. Wir müssen nur für „Magnitude“ etwas einstellen.
Wenn wir alle drei Effekte fertig haben können wir die Häkchen verändern. Die ersten vier sind für Eigenschaften jedoch irrelevant, und „PC Start Spell“ würde jedem Spieler (nicht NPC), egal von welcher Rasse, diese Eigenschaft von Anfang an hinzufügen. Lassen wir also alle Häkchen leer (auch „Auto-Calculate“ ist bei Eigenschaften egal):



Nun können wir diese Eigenschaft noch irgendwelchen Kreaturen oder NPCs zuweisen. Wir müssen sie dazu einfach nur in die „SpellList“ des jeweiligen Lebewesens hinzufügen.

3. Verzauberung erschaffen
Nun wollen wir noch eine Verzauberung für eine Waffe und eine für einen Zauberstab erstellen. „Object Window -> Magic -> Enchantment -> New“. Wir geben eine ID ein, und dann wählen wir den Gegenstandstyp aus, für den diese Verzauberung sein soll: „Kleidung“ für alle Kleider, Ringe, Amulette und Rüstungen; „Schriftrolle“ für alle Schriftrollen (wir können auch ganz normale Bücher als Schriftrollen definieren); „Stab“ für alle Zauberstäbe und „Waffe“ für Waffen, egal welcher Art. Wir wählen nun zuerst Waffe aus.
Wenn wir in das „Effects“ Fenster gehen und dort „New“ wählen können wir sehen, dass uns nur die Möglichkeit „berühren“ offen steht -> alle Effekte auf einer Waffe wirken nur, wenn diese Waffe den Gegner berührt. Andere Effekte auf Waffen wären nur durch Scripts möglich. Wählen wir also „Lähmen“ aus. Die Stärke ist hier egal, da Lähmung gleich Lähmung ist. Wir müssen nur die Dauer bei „Duration“ einstellen. „Area“ sagt hier aus, auf welches Gebiet der Effekt wirkt. Ein Wert von 2 oder 3 hätte den Vorteil, dass alle Gegner, die im Umkreis 2 oder 3 zum Treffpunkt von Waffe und Gegner stehen, ebenfalls gelähmt werden:


Diese Verzauberung können wir nun auf eine Waffe, oder auch auf einen Pfeil, legen. Lähmung eignet sich jedoch eher für den Nahkampf, zumal wir ja auch einen „Area“-Wert verwendet haben.
Als nächstes wollen wir noch eine Verzauberung für einen Stab erstellen. Diese soll dem Gegenüber Stärke entziehen. Wir erstellen also eine neue Verzauberung, „Type“ „Stab“, und bei „Effect“ wählen wir „Schadensattribut“. Wir stellen einen Wert für die Stärke ein, für die Dauer, und für die Reichweite des Spruches (wie weit unser Ziel maximal entfernt sein darf, damit es der Spruch noch trifft). Nun müssen wir bei „ActorVal“ erstmals etwas einstellen: Nämlich das von uns zu beeinflussen gewünschte Attribut:


Diesen Effekt müssen wir nun noch einem Stab zuweisen, und schon sind wir fertig. Wir haben also nun zwei Zaubersprüche, eine Charaktereigenschaft und zwei Verzauberungen, eine für eine Waffe und eine für einen Stab, erstellt. Wir könnten noch viel, viel mehr machen, doch wir wollen es erst einmal dabei bewenden lassen.

4. Informationen zu LeveledSpell
Uns steht auch die Möglichkeit offen, einen so genannten „LeveledSpell“ zu erschaffen. Ein LeveledSpell ist eine bestimmte Auswahl an Zaubersprüchen, Eigenschaften, Fähigkeiten..., die im Spiel zufällig ausgewertet werden. Ein NPC, dem ein LeveledSpell zugewiesen ist, wird im Spiel per Zufallsentscheidung eine gewisse Anzahl dieser Zaubersprüche verwenden (man kann auch recht genau einstellen welche). So kann man eine gewisse Abwechslung ins Spiel bringen (z.B. würde so nicht jeder Bandit dieselben Zaubersprüche verwenden sondern zufällig andere) und es ist für den Modder einfacher, da er nicht jedem NPC/jeder Kreatur jeden Spruch einzeln zuweisen muss. Die genaueren Einstellungsmöglichkeiten der LeveledSpells sollen hier jedoch nicht erklärt werden.

5. Informationen zu Potion
Unter „Potion“ können wir neue Zaubertränke kreieren. Wir sollten hier auf jeden Fall einen bestehenden verwenden, die ID umändern und so ein neues Objekt erstellen. Bei einem ganz neuen Trank müssten wir erst das Modell (das .nif File) zuweisen, damit der Trank im Spiel auch sichtbar wird, was etwas schwieriger wäre.
Bei „Weight“ können wir das Gewicht einstellen. Wenn wir das Häkchen bei „Food Item“ aktivieren bedeutet das, dass NPCs diesen Trank trinken würden, wenn sie gerade Hunger haben. Rechts bei „Results“ können wir wie bei ganz normalen Zaubersprüchen die Effekte des Trankes einstellen. Effekte von Tränken wirken natürlich nur auf „Selbst“.
J.R.R. Tolkien - The Silmarillion
Few ever changed his courses by counsel, none by force.

  02.04.2006, 18:34
  • Offline
  • http://www.abenteuer-mittelerde.de


  • Freund
    • Neuling

Mit Zustimmung von Lord Dagon und White Bit habe ich eine kleine Tutorialsammlung erstellt. Ich werde diese in Zukunft noch deutlich ausweiten, doch hier ist ein erster Stand. Momentan beinhaltet sie:
  • Einstieg in das CS
  • Mein eigenes Haus
  • Meine eigene Ausrüstung
  • Zaubersprüche und co.
  • NPC Erstellung und Dialoge
  • Heightmapintegration

Viel Spaß damit, ich werde es regelmäßig updaten!

UPDATE (4.4.06): NPC Erstellung und Dialoge hinzugefügt.
UPDATE (6.5.06):Mod Planung/Design und Story/Atmosphäre hinzugefügt
J.R.R. Tolkien - The Silmarillion
Few ever changed his courses by counsel, none by force.

  02.04.2006, 18:44
  • Offline
  • http://www.abenteuer-mittelerde.de


  • Freund
    • Neuling
Wir bringen Leben in die Welt
NPCs erschaffen und sie das Sprechen lehren



Nun wissen wir bereits, wie man ein eigenes Haus erstellen kann, wie man eigene Gegenstände erstellen kann und noch einiges mehr. Doch nun wollen wir doch noch einen NPC erstellen und ihn zumindest dazu bringen, mit dem Spieler zu sprechen. Dieses Tutorial befasst sich nicht mit den Tagesabläufen, den Handels-/Traings-/... Menus oder Quests, sondern nur mit der simplen Erschaffung eines NPCs und mit der Zuordnung einiger Dialoge.

1. Vorbereitungen
Nachdem wir das CS geöffnet haben sollten wir uns erst einmal darüber klar werden, wo unser NPC leben soll und ob er eine bestimmte Bedeutung haben soll. In diesem Tutorial wollen wir einen Fischer in Weye erstellen, dem Dorf am Ende der großen Brücke zur Kaiserstadt, in dem wir im obigen Tutorial von Lord Dagon auch unser Haus erstellt haben. Er soll uns mit einem Text über sich begrüßen, soll uns einen bestimmten Text über Weye erzählen und uns ein allgemeines Gerücht mitteilen. Wir gehen also nach Weye und öffnen das Haus, am besten das Interior.

2. Den NPC erschaffen
Wir gehen nun im „Object Window“ auf „Actor -> NPC“ und erstellen dort einen neuen NPC (Rechtsklick „New“). Es ist unumgänglich, den neuen NPC genau auf diese Weise zu erstellen! Wenn wir bei einem vorhandenen NPC die ID ändern (wie es bei Objekten ja problemlos geht) und so einen neuen erstellen, gibt das heftige Probleme mit den Dialogen. Also unbedingt auf „New“ einen neuen erstellen! Wir geben ihm wie gehabt eine ID und geben ihm einen Namen.

2.1 Die Grundinformationen des NPCs
Mein NPC heißt Fischer Greg. Das Feld „Script“ lassen wir so, wie es ist, nämlich auf „NONE“. Würden wir wollen, dass unser Fischer z.B. erst dort ist, wenn die Story fertig ist, müssten wir ein Script schreiben und es ihm zuordnen, doch das lassen wir lieber.
Bei „Class“ wählen wir die Charakterklasse aus, also z.B. Krieger, Dieb, Kampfmagier, Barde oder was auch immer. Mein Fischer Greg wird „Farmer“ (Bauer). Das Häkchen bei Summonable lassen wir weg.
Als nächstes müssen wir das Level unseres Charakters einstellen. Wir können ihm ein Standardlevel geben, z.B. Level 5. Alternativ könnten wir auch das Häkchen bei LevelOffset aktivieren. Wenn wir den LevelOffset aktivieren heißt das, dass sich das Level des NPCs an das des Spielers anpasst. Dies ist aber eigentlich nur für Banditen, Wachen oder Kreaturen sinnvoll. Für normale NPCs würde ich den LevelOffset nicht verwenden. Wenn wir ihn aber auswählen, dann können wir bei Offset (dort wo vorher Level stand) einen beliebigen Wert einstellen. 5 würde bedeuten, dass der NPC immer fünf Level höher ist als der Spieler, -3 dass er immer drei drunter ist und 0, dass er dasselbe Level hat. Darunter können wir noch einstellen, dass sich das Level des NPCs nur in einer bestimmten Spanne bewegt, z.B. dass er immer ein Level von 7-18 hat. Ich gebe meinem Fischer Greg das Level 5, ohne LevelOffset.
Bei „Race“ wählen wir die Rasse aus (Greg ist ein Kaiserlicher, also Imperial), das Häkchen bei „Female“ macht ihn weiblich, ohne Häkchen ist er ein Mann (Fischer Greg ist natürlich ein Mann). „Combat Style“ legt die Art fest, mit der der NPC kämpft - bei mir ist es „Default“, der Standardkampfstil. Unter „Death Item“ können wir ein Leveled Item auswählen, dass der NPC zusätzlich zu den Sachen in seinem Inventar bei seinem Tod bei sich trägt - bei mir ist es „LL0GoldLeveled10“, d.h. eine kleine Zufallsmenge Gold.

2.2 Weitere Informationen des NPCs
Den unter „Leveled Item“ liegenden Button lassen wir ganz in Ruhe. Kommen wir zu den Häkchen: „Quest Item“ bedeutet, dass dieser Charakter in seinen Handlungen gegenüber normalen NPCs Vorrang hat, d.h. dem Spieler schneller durch eine Tür folgen könnte als eine normale Wache o.ä.; „Essential“ bedeutet, dass der Charakter nur bewusstlos gemacht werden kann, da er für den Hauptquest unerlässlich ist; „Respawns“ bedeutet, dass er, wenn er tot ist, nach einer Zeit wieder erscheint (für Wachen wichtig, nicht aber für sonstige NPCs); die Bedeutung von „Can Corpse Check“ kenne ich nicht sicher - ich denke aber, dass es bedeutet, dass der NPC Leichen untersuchen und sich an diesen bedienen kann (z.B. einem toten Wild das Fleisch entnehmen); „No Persuasion“ bedeutet, dass man den NPC nicht bestechen oder überreden könnte; „No Rumors“ heißt, dass der NPC das Topic „Gerüchte“ nicht hat - da unserer uns aber ein Gerücht erzählen soll darf hier kein Häkchen sein; „No Level Processing“ bedeutet, dass der NPC im Level nicht fortschreiten kann. Bei „Auto calc stats“ können wir entscheiden, ob die Charakterwerte nach Klasse und Level vorberechnet sein sollen, oder ob wir sie manuell einstellen wollen. Wenn wir wollen, dass der NPC irgendeinen Dienst anbietet (z.B. Training, Reparatur oder Handel) dann darf „Auto calc stats“ nicht aktiviert sein. Man kann auch das Häkchen bei „Atuo calc stats“ aktivieren, damit er die automatischen Werte berechnet, und es dann wieder entfernen - die Werte bleiben erhalten und es ist doch kein Häkchen mehr da.
Ganz unten können wir noch einen Haar- und einen Augentyp auswählen.


2.3 Gilde, Inventar, Zaubersprüche und Gesicht
Nun können wir bei den Tabs wo auch „Stats“ ist die anderen auswählen. Bei „Factions“ können wir aus dem Fenster, das wir durch „Character -> Faction“ kriegen eine Gilde reinziehen (oder mehrere) und unseren Greg dort Mitglied sein lassen. Mein Greg ist kein Gildenmitglied.
Unter „Inventory“ können wir sein Inventar einrichten. Meiner kriegt einen Bogen, 40 Pfeile, einen Lederharnisch, eine Hose und ein paar Schuhe, außerdem 30 Gold. Dazu ziehen wir die entsprechenden Sachen aus dem Object Window in das Inventory-Tab-Feld. Bei dem Pfeil klicken wir mit einem Dreifachklick auf die Zahl links und ersetzen sie durch 40, bei dem Gold ersetzen wir die eins durch eine 30. Wir können ihm noch mehr geben, z.B. Nahrung, aber mir reicht das:



Bei „SpellList“ können wir dem guten Greg Zaubersprüche, Eigenschaften usw. hinzufügen, ebenfalls per Drag&Drop aus dem „Object Window“. Mein Greg soll mit Magie nichts am Hut haben. Von Animation lassen wir die Finger.
Bei „Face“ und „Face Advanced“ können wir mit dem Gesichtsgenerator, den wir aus dem Spiel kennen (in einer etwas anderen Form) das Gesicht von Greg festlegen. Nun müssen wir Greg nur noch per Drag&Drop aus dem „Object Window“ in die entsprechende Zelle im „Render Window“ ziehen. Nun können wir uns unseren guten Greg ingame einmal anschauen (links sein Gesicht im CS und rechts ingame):

   

2.4 Die Künstliche Intelligenz und Dienste
Nun wollen wir uns noch ein wenig an die Künstliche Intelligenz setzen. Dazu müssen wir im NPC-Fenster links unten auf den Button „AI“ klicken. Es öffnet sich ein Fenster, in dem wir einige Dinge einstellen können.
Zuoberst können wir seine Stimmungsarten einstellen. „Aggression“ bestimmt, wie wahrscheinlich sich Greg in einen Kampf verwickeln lässt. Der Wert orientiert sich am Disposition-Wert (d.h. dem Wert, wie sehr man andere Leute mag, den man durch Bestechen o.ä. beeinflussen kann). Wenn wir hier z.B. 45 einstellen, dann wird er den Spieler angreifen, sobald dieser in seiner Beliebtheit unter 45 gesunken ist (es gilt aber nicht nur für den Spieler sondern für alle NPCs). Ein Wert von 5 oder darunter bedeutet, dass er nie einen Kampf beginnen wird. Ein Wert von 0 bedeutet, dass er sich nicht einmal wehren wird.
„Confidence“ legt fest, wie wahrscheinlich er im Kampf fliehen wird. Je höher, desto standhafter ist er. „Energy Level“ seine Aktivität beim Herumlaufen. „Responsibility“ legt die Seriösität fest. Ein Wert unter 30 bedeutet, dass Greg ein Verbrechen begehen könnte (z.B. Nahrung stehlen); der Wert100 heißt, dass er dem Spieler direkt und ohne eine Wache in der Nähe ein Kopfgeld verpassen kann.
Wenn „Auto calc stats“ inaktiv ist können wir ihn nun Dienste anbieten lassen. Bei „Buys / Sells“ können wir einstellen, womit er handelt (keine Trennung zwischen An- und Verkauf möglich). „Recharge“ bedeutet Wiederaufladen von Gegenständen, „Repair“ bedeutet reparieren und „Training“ was er trainiert (der Wert stellt ein, bis zu welchem Skillwert er maximal trainiert).
Unter „Ai Package List“ können wir unserem NPC seine Tagesabläufe und Handlungen einstellen. Wir wollen uns hiermit nun nicht näher beschäftigen - das würden den Rahmen des Tutorials sprengen. Ich werde auf dieses Thema in einem anderen Tutorial näher eingehen. Das Fenster, das wir nun mit „OK“ bestätigen, sollte ca. so aussehen:


2.5 Den NPC in die Welt setzen
Das soll es nun fürs erste gewesen sein mit der Künstlichen Intelligenz (wie gesagt, in einem anderen Tutorial werde ich näher darauf eingehen) und auch mit der Erstellung unseres guten Greg. Nun müssen wir ihn noch per Drag&Drop in die Welt (in die Zelle „Weye Exterior“ in der Welt „Tamriel“) ziehen, und schon haben wir es geschafft: Greg steht im Dorf Weye, und wartet nur auf den Spieler. Wir können uns das Ganze nun schon einmal ingame anschauen. Im Tutorial geht es nun mit den Dialogen weiter.
 

3. Dem NPC Dialoge geben
Wie wir oben sehen können hat der arme Greg bisher nur das Topic „Gerüchte“.  Begrüßen tut er uns mit einem Standardtext wie „Was wollt Ihr?“. Das wollen wir nun zuerst ändern. Wir wollen ihm eine angemessene Begrüßung geben, und dann noch ein Topic „Weye“ erstellen, damit er uns auch etwas über seine Heimat erzählen kann.

3.1 Einen Quest für Weye erstellen
Zuerst müssen wir einen Quest für das Dorf Weye erstellen. In Oblivion sind alle Dialoge über die Quests geregelt. Wir gehen also in der Menuleiste auf „Character -> Quests“ und klicken in der Leiste links auf „New“. Wir orientieren uns im Folgenden an den Städte-Topic-Quests von Oblivion. Wir geben dem neuen Quest die ID „NQDWeye“. Bei „Priority“ geben wir 11 ein. Bei „Quest Conditions“ erstellen wir „GetIsPlayableRace“. Die anderen Felder lassen wir so, wie sie vorgegeben sind.
Die oben angegebenen Taps sind nun allesamt irrelevant; bis auf „Topics“. Dort können wir nun in der Spalte „Editor ID“ per Rechtsklick „Add Topic“ machen. Dort müssen wir nun wieder einen Rechtsklick machen und dann „New“ klicken. Wir nennen es „WeyeTopic“ und fügen es dann hinzu. Außerdem fügen wir noch das Topic „GREETING“ hinzu - für die Begrüßungen.

3.2 Das Greeting erstellen
Wir klicken nun „GREETING“ an und gehen ins „Info“ Fenster. Dort machen wir dann per Rechtsklick „New“. Im folgenden Fenster geben wir oben unseren gewünschten Text ein (z.B.: „Seid gegrüßt. Ich bin Greg, Fischer. Mein bescheidenes Dasein friste ich hier in Weye.“). Der Rest ist für Scripts oder aber für die Sprachausgabe, was wir hier beides vernachlässigen wollen.
Im unteren Teil könnten wir noch weitere Sachen einstellen. Ganz unten unter „Conditions“ können wir Bedingungen einstellen, z.B. „SameSex“ würde bedeuten, dass der Spieler dasselbe Geschlecht sein muss wie der NPC um die entsprechende Antwort zu erhalten. Dort müssen wir nun einstellen, dass es nur unser Greg sagt. Ansonsten würde uns auch jeder andere NPC in Cyrodiil erzählen, dass er der Fischer Greg ist. Und das wollen wir nicht. Hier kommen wir nun um die „Conditions“ nicht herum. 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 unseres guten Greg auswählen. Bei „Comparison“ lassen wir das „==“ stehen, und bei „Value“ ebenfalls die „1.0000“. Das Ergebnis.
Bei den Häkchen rechts könnten wir noch weitere Sachen einstellen, z.B. „Goodbye“, falls durch die entsprechende Antwortmöglichkeit das Gespräch automatisch beendet wird oder „Say Once“ falls der NPC diese Antwort nur einmal geben soll. Ich wähle „Say Once“ und erstelle noch eine zweite Antwortmöglichkeit („Ihr wisst doch schon, wer ich bin. Greg, der Fischer.“), welche ich genau unter der ersten platziere.
Nun müssen wir die beiden noch in die richtige Reihenfolge bringen. Das CS arbeitet alle vorgegebenen Möglichkeiten von oben nach unten ab. Zum Verschieben brauchen wir die Pfeiltasten (linker Pfeil zum Hochschieben, rechter zum Runterschieben). Es sollte nun ca. so aussehen:



Im Spiel: Beim ersten Anreden benutzt Greg die erste Möglichkeit („Seid gegrüßt. Ich bin...“). Da diese mit dem „Say Once“ versehen ist, wird er sie beim zweiten Mal nicht mehr verwenden, sondern dann die zweite sagen („Ihr wisst doch schon...“), und die nun jedes Mal (außer wenn der Spieler etwas Anderes, wichtigeres, getan hat).

3.3 Das Topic Weye bearbeiten
Doch die Begrüßung ist erst die halbe Miete - denn außer dem Gerücht weiß unser guter Greg uns leider nichts zu erzählen. Nun soll er uns etwas über „Weye“ erzählen, das Dorf in dem er lebt.
Um dafür zu sorgen, dass das Topic auch wirklich im Spiel aktiv wird müssen wir es irgendwie hinzufügen. Das machen wir am einfachsten, indem wir an Gregs erste Begrüßung ein Miniscript anhängen. Wir schreiben einfach in das Fenster „Result Script“ folgendes: „AddTopic WeyeTopic“. Sobald Greg nun also den Spieler so begrüßt wird das Topic „Weye Topich hinzugefügt. Kommen wir nun zum Topic selbst.
Dazu wählen wir „WeyeTopic“ aus. Das Eingabefeld „Topic Text“ ändern wir auf „Weye“ um. Bei Info können wir nun wie gehabt einen Text eingeben. Nun müssen wir wieder „GetIsID“ auf Greg stellen. Wir sollten nun auch noch ein solches Topic für Aelwin Merowald erstellen, den anderen Einwohner von Weye. Wie das geht sollte mittlerweile klar sein (bei „GetIsID“ müssen wir halt „AelwinMerowald“ eingeben).
Nun wollen wir noch eine Antwort erstellen, die beide geben würden, aber nur, wenn sie den Spieler nicht mögen. Wir geben also bei Info einen neuen Text ein (z.B.: „Hier in Weye kommen schon viele sonderbare Leute vorbei, aber Euch dulden wir hier nicht. Also macht, dass Ihr wegkommt!“). Bei Conditions müssen wir nun erst einmal eine „GetIsID“ für Greg einstellen, dann das Häkchen bei „OR“ aktivieren, und nun eine für Aelwin erstellen. Außerdem müssen wir einstellen, dass die beiden den Spieler nicht mögen müssen: „GetDisposition“ und dann rechts „<=“ und „25.0000“ - wenn der Spieler bei einem der beiden die Beliebtheit 25 oder geringer hat, so antwortet dieser wie beschrieben. Dies hat aber auf den anderen keinen Einfluss.
Außerdem wollen wir, dass das Gespräch hiernach beendet wird. Wir müssen das Häkchen bei Goodbye aktivieren. Und zu guter letzt wollen wir, dass der Sprecher den Spieler hiernach noch weniger mag: Wir geben bei „Result Script“ folgendes ein: „ModDisposition player -12“ (Anführungszeichen natürlich weglassen).
Schließlich wollen wir noch etwas machen, was die Leute in der Kaiserstadt über Weye erzählen (z.B.: „Ein kleines Fischerdorf am Festland.“). Wir erstellen bei Info ein neues Topic und geben als Condition „GetInWorldspace“ an. Nun müssen wir per „OR“ auf diese Weise alle Welten hinzufügen, die mit „IC“ anfangen (da dies die Kaiserstadtwelten sind). Dann sagen alle Menschen in der Kaiserstadt auf das Topic genau diese Antwort (wir könnten es natürlich auch aufteilen, sodass z.B. die Menschen auf dem Marktplatz etwas Anderes erzählen als jene in der Universität). Letzten Endes sollte es ungefähr so aussehen:


Wenn wir uns das ganze nun ingame anschauen, sollten wir feststellen, dass Greg uns genau das sagt, was er sagen soll, und auch genau dann, wann er sollte. Dasselbe gilt für Aelwin und die Bewohner der Kaiserstadt (die nun alle das Topic Weye haben sollten). Wir könnten noch viel mehr machen, doch das Geschaffte soll uns fürs Erste genügen. Viel Spaß. So sieht es bei mir am Ende aus:
 
J.R.R. Tolkien - The Silmarillion
Few ever changed his courses by counsel, none by force.

  04.04.2006, 20:58
  • Offline
  • http://www.abenteuer-mittelerde.de


  • Skelett-Krieger
    • Untot
mein erster eigener
(sinnloser)
Quest
So.. weil ichs grade selbst erst gelernt habe fällt das Tutorial erstmal relativ kurz und einfach aus... Aber wollte mein neu erworbenes Wissen ja nicht für mich behalten  :poeh:


Wat is?
Eine berechtigte Frage: was haben wir denn eigentlich vor?
Wir werden jetzt Schritt für Schritt unseren ersten eigenen Quest erstellen.
Um was dreht sich der Quest?
Weils das einzige ist was ich bis jetzt ausprobiert hab und zudem noch sehr leicht: der Quest beginnt durch das Lesen einer Notiz und hat als Ziel das Lesen einer weiteren Notiz zu der uns ein Questmarker führen soll. Nach Beenden des Quests soll er brav im Questlog unter den abgeschlossenen Quests erscheinen. Für eventuelle Sinnlosigkeit des Quests übernehm ich keine Haftung :ugly: Dann mal los.


1. Schritt: Erstellen einer eigenen Notiz[/b]
Da unser Quest ja mit einer gefundenen Notiz beginnen soll brauchen wir zuerst mal... richtig: eine Notiz.
Also starten wir das Construction Set, wählen im Menü unter "File" -> "Data" die Oblivion.esm und laden diese ins Construction Set.
Um uns die Arbeit zu erleichtern kopieren wir eine vorhandene Notiz und geben ihr eine neue FormID:
Suchen wir im ObjectWindow unter dem Eintrag "Items" und dem Unterpunkt "Books" eine Notiz heraus... z.B. "ClarabellaNote"
Auf diesen Eintrag doppelklicken wir jetzt und sollten dann das hier vor uns sehen:


Das erste Feld oben links (ID) ist das was wir zuerst ändern werden...
Ändern wir also den Wert von "ClarabellaNote" zu "00Notiz1" und klicken OK.
Das Programm wird uns nun fragen ob wir ein neues Objekt mit dieser ID erstellen wollen was wir natürlich durch einen Klick auf "Yes" bestätigen (denn das isses ja was wir wollen... eine neue Notiz).
So weit so gut. Jetzt sucht euch in der "Book"-Liste die gerade neu erstellte Notiz heraus und doppelklickt sie.


2. Schritt: Anpassen einer Notiz[/b]
Ihr solltet jetzt wieder das Eigenschaftenfenster der Notiz vor euch sehen.
Jetzt werden wir nach und nach die Eigenschaften der Notiz so verändern dass sie uns gefallen.
Wir fangen links oben an:
Die ID stimmt ja schon ("00Notiz1") mal, das ist einwandfrei soweit.
Das Feld "Name" beinhaltet den Namen den unsere Notiz später im Spiel haben soll, sprich das was im Inventar angezeigt wird und euch das Spiel anzeigt wenn ihr die Notiz auf dem Boden liegen seht und sie euch anschaut. Da "1. Maat Filchs Notiz" nicht ganz das ist was wir uns vorstellen ändern wir den Namen auf "interessante Notiz".
Die "Script", "Weight", "Value", "Teaches" und Icon-Eigenschaften lassen wir erstmal außen vor.
Also weiter zu der Eigenschaft "Scroll": Hier sollte ein Häkchen gesetzt sein weil unsere Notiz ja sozusagen eine Schritftrolle ist und auch so vom Spiel behandelt werden soll.
"Can't be Taken": Hier sollte kein Häkchen gesetzt sein, schließlich wollen wir unsere Notiz später auch aufheben und mitnehmen können.
"Quest Item": Hier brauchen wir auch kein Häkchen da es für unseren Quest uninteressant ist ob der Spieler die Notiz hat oder nicht oder ob er sie verkauft oder in den Fluß wirft oder zerkaut und runterschluckt. Kein Häkchen also.
Rechts unten im Fenster sehen wir die Eigenschaften "Enchanting" und "Enchantment". Die lassen wir so wie sie sind: also auf "NONE" und "0".
Interssant für uns ist dafür das "Book Text"-Feld. Hier kommt der Text rein der später im Spiel in unserer Notiz zu lesen sein wird. Seid kreativ. Formatiert wird der Text mit HTML-Tags. Der wichtigste Tag hierbei ist wohl "
" der einen Zeilenumbruch in euren Text einfügt. Schreiben wir also jetzt einen Text in unsere Notiz der uns gefällt und auch dieser Schritt wäre geschafft.
Das Eigenschaftenfenster unserer Notiz sollte jetzt also ungefähr so aussehen:


Gratuliere! So weit hat es doch ohne größere Verluste geklappt.


3. Schritt: Platzieren unserer Notiz im Spiel[/b]
Wie man ein Objekt im Spiel platziert wurde ja schon in anderen Tutorials erklärt. Legt eure Notiz also irgendwohin wo ihr sie später im Spiel auch wiederfindet, zum Beispiel vor eure Haustür. Am einfachsten ist es die Notiz in der Luft über der Stelle zu platzieren wo ihr sie hin haben wollt und dann kurz die Physikengine zu aktivieren dann wird sie nach unten fallen und ungefähr da landen wo ihr sie haben wolltet.


4. Schritt: Erstellen eines eigenen Quests[/b]
So, unsere Notiz haben wir jetzt im Spiel, jetzt brauchen wir noch den Quest der mit ihr verbunden sein soll.
Klickt dazu in der Menüleiste des Construction Sets auf "Character" -> "Quests". Um einen neuen Quest einzufügen machen wir einen Rechtsklick in die Questliste (links im Fenster) und wählen "New". Das Programm fragt uns jetz nach der FormID für den neuen Quest, geben wir hier also "00NotizQuest" ein und klicken "OK". TADA! Da ist er: unser erster eigener Quest, im Moment noch ein wenig nackt aber das kann man ja ändern.


5. Schritt: "Quest Data"[/b]
So um unseren Quest "verwendbar" zu machen editieren wir zuerst mal dessen Quest Data. Wählt dazu im Quests-Fenster oben den Reiter "Quest Data" aus und schon kanns losgehen.
In das Feld "Quest Name" tragen wir den Namen ein den der Quest im Spiel tragen soll... Weil es irgendwie Sinn macht nennen wir ihn "Der Quest mit den Notizen".
In das "Priority"-Feld geben wir "50" ein. Also eine sehr geringe Priorität.
Jetzt entfernen wir noch den Haken bei "Start Game Enabled".
Sehr schön! Mit der Quest Data sind wir jetzt schon fast fertig, es fehlt nur noch eine "Condition" für unseren Quest.
Klickt dazu unten bei "Quest Conditions" auf "New".
In der Quest Conditions-Liste erscheint jetzt unsere Condition die wir aber noch bearbeiten müssen; klickt die Condition dazu an, sie sollte jetzt unterlegt sein.
Wählt jetzt unten (gleich neben dem "New"-Button) bei "Condition Function" aus der Liste "GetIsPlayableRace" und ändert schließlich unter "Value" den Wert von "0.0000" auf "1.0000" und schon sind wir mit der Quest Data fertig, hat doch auch fast nicht weh getan!


6. Schritt: "Quest Stages"[/b]
Und munter geht's weiter zu den Quest Stages. Wir werden nur zwei verschiedene Stages benötigen: die erste, der euch im Questlog anzeigt dass ihr eine Notiz gefunden habt und schließlich die Zweite die im Questlog unter den abgeschlossenen Quests angezeigt wird wenn der Quest beendet ist.
Machen wir also einen Rechtsklick in die Liste links im Quest Stages-Fenster (die die mit "Index" betitelt ist) und wählen "New". Als Index tragen wir für unsere erste Stage "10" ein. Klickt eure neu erstellte Stage an und widmet euch dann der "Log Entry"-Liste.
Auch hier machen wir wieder einen Rechtsklick und wählen "New" aus, wodurch ein Log Entry in die Liste hinzugefügt wird.
Wählt diesen aus und siehe da: ihr habt die Möglichkeit im "Log Entry"-Fenster den Text einzugeben der später im Spiel im Questlog erscheinen soll. Wir entscheiden uns für was simples, also tragen wir ein: "Ich habe eine Notiz gefunden und soll nun eine Zweite suchen."
Von den restlichen Einstellungen lassen wir erstmal die Finger.
Sehr gut! Ihr habt hiermit eure erste Quest Stage erstellt.
Jetzt brauchen wir noch die zweite, nämlich die die den Quest abschließen soll. Verfahrt also wie oben beschrieben und erstellt eine zweite Stage: Gebt ihr den Index 20, tragt als Log Entry "Ich habe die zweite Notiz gefunden." ein und setzt einen Haken bei der "Complete Quest"-Eigenschaft.
Damit der Quest auch wirklich beendet wird wenn wir diese Stage "erreichen" müsst ihr noch im "Result Script" einen simplen Befehl eingeben. Tragt hier "StopQuest 00NotizQuest" ein und klickt "Compile Result".
Wunderbar, die Quest Stages stehen und damit sind wir schon ein gutes Stück auf unserem Weg zu einem eigenen Quest weitergekommen!


7. Schritt: Starten unseres Quests bei Lesen der Notiz[/b]
So, wir haben einen Quest und wir haben eine Notiz, jetzt müssen wir die Beiden nur noch zusammenbringen. Um zu erreichen dass unser Quest gestartet wird sobald wir einen Blick auf unsere Notiz werfen brauchen wir ein Script. Schließt also das Quests-Fenster wieder und sucht jetzt im Menü unter "Gameplay" den Unterpunkt "Edit Scripts" heraus (und klickt drauf).
Im Script-Editor wählt ihr aus der Menüleiste "Script" -> "New" und fügt folgenden Code in euer neues Script ein:

Code
Scriptname 00Notiz1Script

short Doonce

begin OnActivate

if ( IsActionRef Player == 1 ) && ( Doonce == 0 )
SetStage 00NotizQuest 10
set Doonce to 1
endif

Activate

end

Das wichtigste an diesem Script ist die Zeile "SetStage 00NotizQuest 10"
die aktiviert euren Quest (00NotizQuest) und setzt ihn auf die Stage 10.
Klicken wir also jetzt auf "Script" -> "Save" und schon haben wir das Script das wir brauchen um unseren Quest zum Laufen zu bringen.
Verlassen wir also den Script-Editor wieder und verpassen unserer Notiz unser neu erstelltes Script.
Sucht einfach wieder die "Books"-Liste im Object Window und doppelklickt auf eure Notiz "00Notiz1". Sucht euch jetzt unter dem Punkt "Script" aus der Liste euer neu erstelltes Script "00Notiz1Script" und klickt "OK".
Jetzt habt ihr euer Script mit eurer Notiz verbunden, das heißt sobald ihr jetzt im Spiel eure Notiz anklickt wird das Script aufgerufen welches wiederum euren Quest startet. Klingt zwar komisch, is aber so.
Würden wir jetzt speichern und das Spiel starten könnten wir zu unserer Notiz gehen, sie anklicken und damit den Quest starten. Aber da wir ja noch keine zweite Notiz haben die wir suchen könnten ist es so noch relativ sinnfrei.


8. Schritt: Die zweite Notiz und das zweite Script[/b]
Wie ihr eine neue Notiz und ein neues Script erstellt wisst ihr ja jetzt und wir brauchen von jedem noch ein Exemplar.
Erstellt also ein neues Script, genau wie das erste, nur ändert den Scriptname zu "00Notiz2Script" und die Stage die aktiviert werden soll von "10" auf "20". Speichert dieses Script.
Dann erstellt ihr eine neue Notiz auf die gleiche Weise wie die erste. Gebt ihr die FormID "00Notiz2" weist ihr als Script "00Notiz2Script" zu und gebt ihr als Namen "Die zweite Notiz". Außerdem solltet ihr bei "Teaches" aus der Liste "Akrobatik" auswählen. So weit so gut, platziert jetzt die zweite Notiz im Spiel, zum Testen am besten nicht zu weit weg von eurer ersten Notiz. Sehr schön, wenn ihr alles richtig gemacht habt, habt ihr jetzt euren ersten, eigenen und funktionierenden Quest erstellt. Jetzt wollen wir aber noch einen Questmarker einbauen der euch auf der Karte und im Kompass anzeigt wo die zweite Notiz liegt.


9. Schritt: Der Questmarker[/b]
Da wir den Questmarker nicht direkt auf die Notiz zeigen lassen können sondern dafür ein eigenes Objekt benötigt wird sucht euch im Objects Window unter "World Objects" -> "Static" ganz unten in der Liste das "XMarker"-Objekt und zieht es ins Spiel. Platziert den XMarker so genau wie möglich auf eurer Notiz und doppelklickt ihn um ihm eine ID zu geben ("00NotizMarker"). Wunderbar, jetzt können wir unseren eigentlichen Questmarker erstellen.
Öffnet wieder über "Character" -> "Quests" das Quests-Fenster und wählt euren Quest aus der Liste ("00NotizQuest") und wählt aus den Reitern oben "Quest Targets". Rechtsklickt in die Targets-Liste und wählt "New". Jetzt könnt ihr euren Marker bearbeiten:
Wählen wir also bei "Quest Target Data" als Cell die Zelle aus in der sich unsere zweite Notiz (und somit der XMarker) befindet. Jetzt sollten wir in der unteren Liste mit den Objekten den Eintrag "'XMarker' '00NotizMarker'" auswählen können. Also tun wir das und klicken OK.
Ich gratuliere! Ihr habts geschafft!


10. Schritt: Speichern und Spielen[/b]
Wählt jetzt im Construction Set aus dem Menü "File" -> "Save" und gebt eurem neuen Plugin einen Namen, zum Beispiel "Mein erster Quest.esp" und speichert es in eurem Oblivion\Data Ordner.
Startet jetz Oblivion und wählt bei "Spieldateien" euer Plugin aus und aktiviert es. Klickt auf Spielen und erfreut euch an eurem ersten eigenen Quest, ihr habt's euch verdient :master:


P.S.: Danke an Nexan und LordKain die mir geduldig dabei geholfen haben meinen ersten eigenen sinnlosen Quest zu erstellen  
:ugl-hdl:
  08.04.2006, 06:31
  • Offline
  • http://nerdus.blogspot.com


  • Abenteurer
    • Neuling
Ich habe jetzt eine Wiki eingerichtet, wo Tutorials gesammelt werden und jeder Benutzer seine eigenen hinzufügen kann:

http://www.oblivion-tutorials.de.vu

Ich würde mich freuen, wenn ihr auch eure Tutorials integrieren würdet!

MfG
Seb
  08.04.2006, 17:41
  • Offline
  • http://www.pcjunior.de


  • Neuling
    • Neuling
Hier gibt es ein Tutorial für Höhenkarten (genau wie in der Tutorial PDF):

Höhenkarten - Tutorial

Greetz!
  10.04.2006, 00:33
  • Offline


  • Bettler
    • Neuling
Vertonen von Dialogen

Anmerkung:
Ich gehe hier nicht mehr auf die Charaktererstellung und Dialogerstellung ein. Ihr solltet die oberen Tutorials mindestens teilweise gemacht haben.

Anmerkung#2:
Ihr braucht für dieses Tutorial ein Programm, das für mp3s und wavs die Bitrate, etc. verändern kann. Ich benutze Sony Sound Forge.
http://www.sonymediasoftware.com/download/step2.asp?DID=559
Hier könnt ihr eine 30-Tage Testversion runterladen. Wenn ihr ein anderes Freeware-Programm kennt, das das auch kann, schickt mir eine PM dann passe ich das Tutorial an.

Erstellt einen npc. Wichtig: wählt eine Rasse aus.
Erstellt einen Quest für den npc, mit einem Topic GREETING und einem anderen.
Fügt zu dem Topic GREETING eine Antwort hinzu.

Fügt eine Bedingung „GetIsID“ mit eurem Npc hinzu

Klickt wieder auf eure Antwort. Dort seht ihr jetzt einen Pfad vom Ordner Data.

Im Pfad kommt der Ordner NONE vor, weil eure Mod noch keine Namen hat. Also speichert die Mod, und startet den Editor neu, wählt beim Neustart eure Mod als Active file aus. Jetzt lautet der Pfad in etwa: „Sound/Voice/00tutorialstest.esp/Nord/M/00tutorialstest...“ Da sucht das Spiel nach den Sounddateien. Wir müssen also unsere jetzt in diesen Ordner kopieren.

Dazu ihr das Musikbearbeitungsprogramm:
Ihr ladet eure Sounddatei in dem Programm. Hier könnt ihr es noch bearbeiten. Über Process > Volume könnt ihr die Lautstärke verändern. Zum Abschneiden, könnt ihr Teile einfach markieren und ENTF drücken.
Jetzt müssen wir die Sounddatei zweimal abspeichern. Einmal als *.wav, die braucht der Editor um eine *.lip datei zu erstellen. Und als *.mp3, das wird dann im Spiel abgespielt.

Dazu gehen wir auf File --> Save As:
Dateiname: egal
Dateityp: Wave (Microsoft)
Recent: egal
Hinter Template auf Custom klicken und das auswählen:

Das ist besonders wichtig, sonst kann das Spiel sie nicht benutzen.


Nochmal File --> Save As:
Dateiname: egal
Dateityp: MP3 Audio
Recent: egal
Wieder auf Custom klicken:

Das ist besonders wichtig, sonst kann das Spiel sie nicht benutzen.


Der TES-CS zeigt euch einen Pfad an:

Diesen Ordner müssen wir jetzt erstellen. Dazu geht ihr in den Ordner Data im Oblivion Spielverzeichnis und erstellt eben diese Ordner. Bei mir wäre das der Ordner Sound/Voice/00tutorialstest.esp/Nord/M

Da kopiert ihr jetzt die *wav und *mp3 rein.

Jetzt benennt ihr die Dateien so um, wie der Editor das anzeigt. Bei mir wäre das:
00TutorialQuest_GREETING_00000CE9_1.mp3   und
00TutorialQuest_GREETING_00000CE9_1.wav

Wenn alles geklappt hat, könnt ihr jetzt per Doppelklick auf den Pfad die Datei abspielen. Wenn nicht, prüft nocheinmal den Pfad und Dateinamen und ob ihr es richtig abgespeichert habt.

Theoretisch wären wir jetzt fertig, aber das Spiel braucht noch eine *.lip. Die erzeugen wir indem wir im Editor den Pfad anwählen, ein Häckchen bei „From wav“ setzen und auf „Generate Lip File“ klicken.
Das könnt ihr jetzt mit jedem Dialog genauso machen.

Editiert by Thunderbird Alternativ ist folgendes Programm zum Vertonen geeignet : Download
Näheres findet ihr HIER!
  11.04.2006, 15:01
  • Offline


  • Freund
    • Neuling
Grundlagen: Wie man Kreaturen in seine Häuser bekommt
[/B][/U][/SIZE]

Also ihr geht jetzt erstmal in euer Haus und auf Actors / LeveledCreature.
So müsste es jetzt aussehn:




Dann wählt ihr irgendeine Zeile aus und Rechtsklick und New. Dann sollte es so aussehn:




Dieses Fenster lasst ihr offen. Ihr geht dann in Actors / Creature und wählt die Kreatur aus, die spawnen soll. Hier im Beispiel ein Goblin. Zieht die Kreatur jetzt rüber in das Fenster in die Zeilen und rechts könnt ihr nochmal die Art des Gegners festlegen. Bei Count könnt ihr die Anzahl der kommenden Monster festlegen ;)




Gebt noch die ID der Box (^^) ein und geht dann wieder auf Actors / LeveledCreature und wählt eure Box aus, die zieht ihr jetzt in euer Haus und stellt es schön hin.




Wenn ihr jetzt alles richtig gemacht habt, sollte ein Goblin in euerem Haus sein.
  30.09.2006, 23:18
  • Offline
  • http://cyborg1122.cy.funpic.de/


  • Freund
    • Neuling
Händler ins Spiel einbaun

Ok, das ist mein 2. Tutorial, dass ich hier schreibe und ich hoffe ihr kommt mit den beiden gut zurecht :)


1. Vorbereitung
Ihr braucht:
  • Ein Haus, das ihr nach dem Tutorial von Lord Dagon erstellen könnt.
  • Einen NPC, den ihr nach dem Tutorial von Grabba (Wir bringen Leben in die Welt) erstellen könnt.

2. Schritt für Schritt

Wenn ihr euer Haus erstellt habt, geht ihr rein, öffnet den NPC (Actors / NPC) im Object Window. Wenn ihr das gemacht habt, sollte das Fenster so ausschauen:


Jetzt geht ihr auf den Punkt Al
Uns interessiert jetzt nur die Kategorie Buys / Sell, denn der Rest wurde ja in dem NPC erstellen erklärt.
Jetzt macht ihr bei den Sachen, die der Händler verkaufen soll einen Hacken rein. Damit der Händler euere Sachen auch noch repariert, müsst ihr den Hacken bei Repair reinmachen. Ich glaube, wenn ihr bei Recharge einen Hacken reinmacht, dann kann er auch euere Gegenstände wieder aufladen :) Das mit den Trainieren der Sachen weiß ich noch nicht. Aber damit die Sachen (Reparieren / Kaufen) sichtbar/anklickbar werden, müsst ihr noch bei AI ein neues Package erstellen und den Hacken bei Offer Services rein tun, dann kann euer Händler dann später handeln, wenn ihr das Tut weiter macht.

Ok, wenn ihr jetzt das Zeug gemacht, was der Händler verkaufen soll, dann zieht ihr ihn in euer World Window (Entweder in die Welt oder in ein Haus).

So jetzt habt ihr mal grob festgelegt, was der Händler verkaufen soll, aber dem Händler wurden ja noch keine Gegenstände zu gewiesen, die er verkaufen soll.

Dafür braucht ihr jetzt eine Truhe. Die Truhen findet ihr unter World Objects / Container. Da öffnet ihr jetzt einfach das AnvilBlooadworkChest, setzt bei der ID 00 hin und löscht die Items raus.
Ok, in die Truhe kommen die Gegenstände, die der Händler verkaufen soll.

3. Truhe füllen
Ihr öffnet einfach die Truhe im Object Window, lasst das Fenster offen und die Sachen die ihr reinmachen wollt (in die Truhe), die zieht ihr einfach in die Truhe rein. Wenn ihr fertig seit, sollte die Truhe ungefähr so aussehen:



Jetzt, da ihr festgelegt habt, was der Händler verkaufen soll, zieht ihr die Truhe auch in die Welt.

4. Truhe mit Händler verbinden

Ihr öffnet die Truhe im World Window und geht auf Ownership, bei NPC gebt ihr die ID eueres Händlers an. Und damit ihr nicht die Truhe des Händlers plündern könnt, setzt ihr dann noch Lock auf Unmöglich und kein Schlüssel ;) Ihr müsst UNBEDINGT noch einen Hacken bei Persistent Reference machen, sonst findet der euere Truhe net, wenn ihr sie dann gleich angeben müsst.



Jetzt müsst ihr nur noch eins machen, ihr öffnet den NPC im World Window und geht auf Merchant Container gehn und da dann die Zelle euerer Truhe angeben und dann die selber.


Wenn ihr alles richtig gemacht habt, sollte das dann so im Spiel aussehn:


5. Fertig

Ja hier mit ist das Tutorial zu Ende und ich hoffe ihr seit damit klar gekommen :)
  03.10.2006, 16:20
  • Offline
  • http://cyborg1122.cy.funpic.de/


  • Drachengott
    • Nirn.de Team
Falsche Posts! In drei Tagen werden alle drei Posts gelöscht, und wer ab da nochmal sowas postet, kriegt eine Verwarnung.
  01.10.2007, 22:46
  • Offline
  • Nirn.de