Von der Resource zum fertigen Package
ein Tutorial von TheDarkRuler
Wer dieses Tut als PDF haben will, kann sich diese hier herunterladen.
(Hosting des Tuts und der PDF sind erlaubt!)
Benötigt wird
~ Oblivion
~ Construction Set
~ Grundwissen im CS
~ Folgende Ressource: Animated Harp von kaizit (Unter 'Optional Files')
Thema
~ Einbinden von neuen IdleAnimations
~ Erstellen von Packages anhand einer neuen IdleAnimation (s.o.)
~ Grundlegendste Infos über Packages
Gliederung
~ Kapitel #1 - Die IdleAnim
~ Kapitel #2 - Das IdleObject
~ Kapitel #3 - Das Auslöserobjekt
~ Kapitel #4 - Das Package
Kapitel #1 - Die IdleAnim
Kapitel #2 - Das IdleObject / AnimObject
Kapitel #3 - Das Auslöserobjekt
Kapitel #4 - Das Package
ein Tutorial von TheDarkRuler
Wer dieses Tut als PDF haben will, kann sich diese hier herunterladen.
(Hosting des Tuts und der PDF sind erlaubt!)
Benötigt wird
~ Oblivion
~ Construction Set
~ Grundwissen im CS
~ Folgende Ressource: Animated Harp von kaizit (Unter 'Optional Files')
Thema
~ Einbinden von neuen IdleAnimations
~ Erstellen von Packages anhand einer neuen IdleAnimation (s.o.)
~ Grundlegendste Infos über Packages
Gliederung
~ Kapitel #1 - Die IdleAnim
~ Kapitel #2 - Das IdleObject
~ Kapitel #3 - Das Auslöserobjekt
~ Kapitel #4 - Das Package
Kapitel #1 - Die IdleAnim
Entpacke die Ordner 'meshes' und 'textures' in dein Oblivion/data-Verzeichnis und starte anschließend das Construction Set und lade dein PlugIn. Ist dies geschehen, öffne unter in der oberen Leiste die Rubrik 'Gameplay' und anschließend klickst du auf 'Idle Animations'.
Hier siehst du aufgeklappt alle Animationen die Humanoide betreffen (Characters\_male\IdleAnims). Es gibt auch Animationen für Kreaturen, die dann aber andere Dateipfade nutzen. Die Pfade der IdleAnimations richten sich nach folgender Dateistruktur.
Angenommen eine Kreatur/ein NPC nutzt folgenden Pfad, um seine Skeleton.NIF zu wählen.
Meshes\Characters\_Male\skeleton.NIF
In diesem Fall wären die IdleAnimations in folgendem Ordner
Meshes\Characters\_Male\IdleAnims
Zurück zum IdleAnims-Fenster.
Es gibt eine gewisse Grundstruktur, die beizubehalten empfehlenswert ist. So sind alle unter GetUpFaceUpNPC befindlichen Animationen auf die Situationen im Kampf ausgerichtet, wenn ein NPC wieder aufzustehen versucht, nachdem er hingefallen ist.
Unter AnimObjectAnims hingegen finden sich Objekte, die ein NPC nutzt wie etwa Flaschen, wenn er Alchemieübungen praktiziert oder ein Bierhumpen, wenn er säuft. Da wir eine Harfe einbinden wollen, wäre dies nun eine gute Idee.
Öffne das Fenster 'AnimObjectAnims' mit einem Klick auf das + daneben und klicke dann rechts auf AnimObjectAnims und klicke dann auf 'Insert Child'. Ein untergeordneter Eintrag wird hierbei eingetragen und zunächst nur * genannt. Ändere die ID am besten so, dass sie möglichst individuell ist.
(Hier: TheDarkRulerAnimTutIdleAnimHarfe = TDRATIdleAnimHarfe)
Wie du siehst ist auch hinter Eat nun ein Stern. Das ist ein CS-Fehler, der (meines Wissens nach) nicht verhindert werden kann. Er muss, nachdem die Mod fertig ist, rausgecleant werden. Hierzu empfehle ich Eddy Kaschinskis Tutorial 'Uncleane Mods und andere No-Gos'.
Zurück zu unserer IdleAnim: Nun müssen wir die Animation eintragen. Animationen haben in Oblivion das Format KF. Die KF-Datei zum Spielen der Harfe liegt immer im IdleAnimations-Ordner des Skeleton-Pfades. Wie ich oben schrieb, ist unsere Animation also unter folgendem Pfad.
Meshes\Characters\_Male\IdleAnims
Wir klicke also auf 'Select Animation File' und klicken uns durch zu folgender Datei.
Meshes\Characters\_Male\IdleAnims\kaizit\playHarp.kf
Anschließend beenden wir das Fenster mit einem Klick auf 'Close'.
Hier siehst du aufgeklappt alle Animationen die Humanoide betreffen (Characters\_male\IdleAnims). Es gibt auch Animationen für Kreaturen, die dann aber andere Dateipfade nutzen. Die Pfade der IdleAnimations richten sich nach folgender Dateistruktur.
Angenommen eine Kreatur/ein NPC nutzt folgenden Pfad, um seine Skeleton.NIF zu wählen.
Meshes\Characters\_Male\skeleton.NIF
In diesem Fall wären die IdleAnimations in folgendem Ordner
Meshes\Characters\_Male\IdleAnims
Zurück zum IdleAnims-Fenster.
Es gibt eine gewisse Grundstruktur, die beizubehalten empfehlenswert ist. So sind alle unter GetUpFaceUpNPC befindlichen Animationen auf die Situationen im Kampf ausgerichtet, wenn ein NPC wieder aufzustehen versucht, nachdem er hingefallen ist.
Unter AnimObjectAnims hingegen finden sich Objekte, die ein NPC nutzt wie etwa Flaschen, wenn er Alchemieübungen praktiziert oder ein Bierhumpen, wenn er säuft. Da wir eine Harfe einbinden wollen, wäre dies nun eine gute Idee.
Öffne das Fenster 'AnimObjectAnims' mit einem Klick auf das + daneben und klicke dann rechts auf AnimObjectAnims und klicke dann auf 'Insert Child'. Ein untergeordneter Eintrag wird hierbei eingetragen und zunächst nur * genannt. Ändere die ID am besten so, dass sie möglichst individuell ist.
(Hier: TheDarkRulerAnimTutIdleAnimHarfe = TDRATIdleAnimHarfe)
Wie du siehst ist auch hinter Eat nun ein Stern. Das ist ein CS-Fehler, der (meines Wissens nach) nicht verhindert werden kann. Er muss, nachdem die Mod fertig ist, rausgecleant werden. Hierzu empfehle ich Eddy Kaschinskis Tutorial 'Uncleane Mods und andere No-Gos'.
Zurück zu unserer IdleAnim: Nun müssen wir die Animation eintragen. Animationen haben in Oblivion das Format KF. Die KF-Datei zum Spielen der Harfe liegt immer im IdleAnimations-Ordner des Skeleton-Pfades. Wie ich oben schrieb, ist unsere Animation also unter folgendem Pfad.
Meshes\Characters\_Male\IdleAnims
Wir klicke also auf 'Select Animation File' und klicken uns durch zu folgender Datei.
Meshes\Characters\_Male\IdleAnims\kaizit\playHarp.kf
Anschließend beenden wir das Fenster mit einem Klick auf 'Close'.
Kapitel #2 - Das IdleObject / AnimObject
Jetzt hätten wir eine Animation, welche zwar von den Bewegungen her eingebunden ist, aber ingame würde jetzt folgendes auftreten. Der NPC würde sich an einen Punkt hinstellen und Harfe spielen, aber ohne Harfe! Er würde lediglich die Bewegungen machen, aber kein Objekt dabei in der Hand halten. Dies soll unser nächster Schritt sein!
Hierzu gehen wir nun im 'Object Window' unter 'Miscellaneous' und anschließend auf 'AnimObject'. In die ID-Liste erstellen wir dann mittels Rechtsklick/New eine neue ID. Analog zu oben genannter ID nenne ich sie hier TDRATAnimObjectHarfe.
Unter Add Nif File suchen wir unser NIF-Datei, sprich unsere Harfe. In diesem Fall befindet sie sich unter folgendem Pfad.
Meshes\idleobjects\kaizit\harp.NIF
Das standardmäßige Activate müssen wir ebenso ersetzen. Hierzu suchen wir nach unserer IdleAnimation, die wir eben erstellt haben. (hier: TDRATIdleAnimHarfe)
Damit wird die IdleAnim mit dem IdleObject verbunden!
Hierzu gehen wir nun im 'Object Window' unter 'Miscellaneous' und anschließend auf 'AnimObject'. In die ID-Liste erstellen wir dann mittels Rechtsklick/New eine neue ID. Analog zu oben genannter ID nenne ich sie hier TDRATAnimObjectHarfe.
Unter Add Nif File suchen wir unser NIF-Datei, sprich unsere Harfe. In diesem Fall befindet sie sich unter folgendem Pfad.
Meshes\idleobjects\kaizit\harp.NIF
Das standardmäßige Activate müssen wir ebenso ersetzen. Hierzu suchen wir nach unserer IdleAnimation, die wir eben erstellt haben. (hier: TDRATIdleAnimHarfe)
Damit wird die IdleAnim mit dem IdleObject verbunden!
Kapitel #3 - Das Auslöserobjekt
Wir haben nun die Animation, welche korrekterweise ihr AnimObject nutzt. Das Problem nun? Wir haben keine Verbindung, die eine Nutzung der Animation in Packages zulässt. Dies müssen wir nun tun.
Es gibt viele Wege dazu, doch ich werde nun den aus meiner Sicht am Einfachsten und am Zuverlässigsten beschreiben. Hierzu gehen wir im Object Window unter Items und unter 'Misc'. Dort erstellen wir eine ID. Hier nenne ich sie analog zu obrigen IDs TDRATUseObjectHarfe. Ein NIF-Pfad oder ein Icon ist nicht vonnöten, weil es in keinem Inventar landen wird.
Haben wir dieses Objekt erstellt, so öffnen wir nun erneut über GamePlay/IdleAnim unsere IdleAnimation von vorhin.
Es wird Zeit eine Bedingung einzubauen, wann diese Animation abgespielt wird. Hierzu klicken wir rechts in das weiße Feld und klicken 'New'. Dann stellst du unten unter 'Condition Function' den Befehl 'GetIsUsedItem' ein.
Dies fragt ab, welche ID für das Package genutzt werden soll. Im Feld daneben suchen wir dann nach unserer ID TDRATUseObjectHarfe.
Die Comparison muss == sein und der Value 1.
Es gibt viele Wege dazu, doch ich werde nun den aus meiner Sicht am Einfachsten und am Zuverlässigsten beschreiben. Hierzu gehen wir im Object Window unter Items und unter 'Misc'. Dort erstellen wir eine ID. Hier nenne ich sie analog zu obrigen IDs TDRATUseObjectHarfe. Ein NIF-Pfad oder ein Icon ist nicht vonnöten, weil es in keinem Inventar landen wird.
Haben wir dieses Objekt erstellt, so öffnen wir nun erneut über GamePlay/IdleAnim unsere IdleAnimation von vorhin.
Es wird Zeit eine Bedingung einzubauen, wann diese Animation abgespielt wird. Hierzu klicken wir rechts in das weiße Feld und klicken 'New'. Dann stellst du unten unter 'Condition Function' den Befehl 'GetIsUsedItem' ein.
Dies fragt ab, welche ID für das Package genutzt werden soll. Im Feld daneben suchen wir dann nach unserer ID TDRATUseObjectHarfe.
Die Comparison muss == sein und der Value 1.
Eins vorneweg:
Hier soll nur auf die Einbindung der neuen Animation als Package eingegangen werden. Dies ist kein Package-Tutorial!
Erstelle einen neuen NPC und öffne dessen Package-Menü durch einen Klick auf 'AI'.
Dort erstellen wir nun ein neues Package.
Zunächst legen wir die ID fest. Hier nenne ich sie TDRATHarfenSpielPackage.
Dann ändern wir den Typ auf UseItemAt.
Unter 'Flags' setzen wir einen Haken auf 'Continue If PC near', damit der NPC sein Package auch ausführt, wenn der Spieler ihm nahekommt und 'Weapons Unequipped', weil es meiner Ansicht nach bescheuert aussieht, wenn ein Harfenspieler noch einen Dolch an der Seite baumeln hat.
Unter Schedule ändern wir außerdem die Duration auf 24. Wie gesagt, es soll ein simples Package sein, nur um zu zeigen, dass es geht.
Anschließend gehen wir auf 'Location' und markieren einen XMarkerHeading (Auffindbar unter WorldObject\Static) und legen ihn als Ziel fest. An exakt dieser Stelle wird der NPC hinterher seine Harfe spielen.
Jetzt müssen wir die Condition der IdleAnim erfüllen (das GetIsUsedItem!!).
Hierzu gehen wir unter 'Target' und stellen unter 'ObjectID' ein, dass unser Auslöserobjekt
'TDRATUseObjectHarfe' benutzt werden soll.
(Achtung: Hier ist das CS stellenweise sehr crashträchtig. Vorher abspeichern!)
Ist dies geschehen, speichern wir das Package, den NPC und setzen ihn dann in die Welt. Dann die ESP speichern und ingame gehen. Et voila...
Hier soll nur auf die Einbindung der neuen Animation als Package eingegangen werden. Dies ist kein Package-Tutorial!
Erstelle einen neuen NPC und öffne dessen Package-Menü durch einen Klick auf 'AI'.
Dort erstellen wir nun ein neues Package.
Zunächst legen wir die ID fest. Hier nenne ich sie TDRATHarfenSpielPackage.
Dann ändern wir den Typ auf UseItemAt.
Unter 'Flags' setzen wir einen Haken auf 'Continue If PC near', damit der NPC sein Package auch ausführt, wenn der Spieler ihm nahekommt und 'Weapons Unequipped', weil es meiner Ansicht nach bescheuert aussieht, wenn ein Harfenspieler noch einen Dolch an der Seite baumeln hat.
Unter Schedule ändern wir außerdem die Duration auf 24. Wie gesagt, es soll ein simples Package sein, nur um zu zeigen, dass es geht.
Anschließend gehen wir auf 'Location' und markieren einen XMarkerHeading (Auffindbar unter WorldObject\Static) und legen ihn als Ziel fest. An exakt dieser Stelle wird der NPC hinterher seine Harfe spielen.
Jetzt müssen wir die Condition der IdleAnim erfüllen (das GetIsUsedItem!!).
Hierzu gehen wir unter 'Target' und stellen unter 'ObjectID' ein, dass unser Auslöserobjekt
'TDRATUseObjectHarfe' benutzt werden soll.
(Achtung: Hier ist das CS stellenweise sehr crashträchtig. Vorher abspeichern!)
Ist dies geschehen, speichern wir das Package, den NPC und setzen ihn dann in die Welt. Dann die ESP speichern und ingame gehen. Et voila...
Zuletzt bearbeitet: