NPC美化MODをスタンドアロン化して共存させる Skyrim
シンプルかつとても丁寧に美形化されたChao's Redesigned Lydiaを例にまとめてみようと思います。
作業はTES5editで行います。とても簡単です。
mod oganaizerを使用しての作成、プレイ環境になります。
TES5editでespを開きます。
中に入って居たのはNon-Player Character(Actor)のみでした。
この中には容姿に関わる情報から、NPCの所在地、NPCの普段の行動、NPCの初期装備、身長、などなど、個人を特徴づける様々な情報が入っています。
色のついている一番左側の数字 000A2C8EがリディアさんのIDで、これがSkyrim.esmよりも後に読み込まれることで、上書きをして、別の容姿になるようにしてあります。
なので、これを上書きするのではなく、新しいIDを与えて独立化させます。
Non-Player Character(Actor)を変更していく
画像のように右クリックからCopy as new recordで新しいespにNon-Player Character(Actor)を作成します。
※ちなみにCopy as overraideはIDをそのまま引き継ぎたい場合に使うので、こちらを選択すると000A2C8EのNon-Player Character(Actor)が出来ます。
中身を見ていくと、リディアさんとして行動したり、リディアさんと同じフラグによって行動するように設定されているので、Remove(削除)、追記など行っていきます。
で、変更したものが↓。わかり易く比較できるように新しいespに上書きコピーしました。黄色く色が変わってる部分が変更のあった部分。
これで別の美形NPCとして登録することが出来ましたが、まだゲーム内での居場所がありませんので、彼女にゲーム内で会えるようにcellの項目を付けていきます。
Cellの追加
cellは他のスタンドアロンフォロワーなどからコピーしたほうが圧倒的に楽なのですが、今回はSkyrim.esmの中からコピーします。
今回は酔いどれパンツマン(ハンツマン)にしてみました。
先程作ったNon-Player Character(Actor)を開いて、IDをコピーしてきます。そして、NAME-Baseの項目に貼り付けてNPCを配置します。
編集できる項目は右クリックからeditやRemoveなど出てくるので、そこから変更や削除を行います。
これで、酔いどれパンツマンにNPCが配置されました。
しかしこのままだとただのNPCなので、フォロワーとしての属性を与えるため、Relathionshipという友好関係的なものを加えます。
Copy as overraideで上書きしてしまってますが、これやると元のNPCが消えるので、この項目を後でCopy as new recordで新しいIDを取得して、同じespにペーストしました。
Relathionshipの追加
Skyrim.esmからコピーしてきます。誰でもいいです。内容をほぼ書き換えますし。
また、その後他のスタンドアロンを作ったときはこれをコピーしてIDだけ書き換えれば、いくらでも使いまわしが効きます。
一番最初にあったものをCopy as new recordでコピー。IDは変えておきたいので。
デルフィンさんでした。
EDID-Editor ID 自分の作ったNPCの名前(Non-Player Character(Actor)の名前)
Parent Non-Player Character(Actor)のID
childをPlayer "Prisoner" [NPC_:00000007]
RankをAlly (これにしておくと、会ったその瞬間から従者になってくれる)
まあ親と子の関係ってことですかね。
以上でespの編集は終わりです。
コピー元がSkyrim.esmだけならば、マスターファイルがSkyrim.esmだけになるのですが、コピー元が他のespで、必要なものが全て自分の作ったespに入っている場合、File Headerの項目を開き、マスター指定されているesm及びespの指定を外しておきます。
閉じて保存します。
このあとはローカルファイルの編集です。
ローカルファイルの配置、編集
test.espという新しく作成されたespを新しいmodとして使うためにフォルダを作ります。フォルダ階層はオリジナルと同じで、以下のようになります。
test \ test.esp
test \ textures
test \ meshes
親フォルダ作って、その中にespを入れて、もとのmodの中にあるesp以外のものを全てコピペすれば良いだけなんで、テクスチャとメッシュのフォルダをわざわざ作る必要はありません。
次に以下の階層へ移動します。
test\meshes\actors\character\FaceGenData\FaceGeom\ChLydia.esp\00000D63.nif
test\textures\actors\character\FaceGenData\FaceTint\ChLydia.esp\00000D63.dds
どっちが先でもいいです。
と、ここまで来て気づいたことが。。。普通美化modなら
test\meshes\actors\character\FaceGenData\FaceGeom\Skyrim.esm\000A2C8E.nif
test\textures\actors\character\FaceGenData\FaceTint\Skyrim.esm\000A2C8E.dds
になるのでは。。。なんかおかしいぞ。。。
まあこのあたりも全部これから変えていくんで問題ないと思いますが。。。
まず、メッシュ・テクスチャ、どちらからでもいいのでフォルダ名をかえます。
今回はespの名前がtest.espなので、以下のようになります。
test\meshes\actors\character\FaceGenData\FaceGeom\test.esp\000A2C8E.nif
test\textures\actors\character\FaceGenData\FaceTint\test.esp\000A2C8E.dds
要するに、最後のフォルダ名をesp及びesmの名前にします。このとき拡張子も全て入ります。
次にFaceGeom、FaceTintの名前を先程作ったesp内のNon-Player Character(Actor)のIDに変更します。FaceGeomの名前が違えば、存在しなくなる可能性があり、FaceTintの名前が違うと顔面崩壊すると思います。
tes5editでは0B000800となっていますが、先頭の2文字はロード順によって変わるので00に変更して00000800が本当のIDとなります。
test\meshes\actors\character\FaceGenData\FaceGeom\test.esp\00000800.nif
test\textures\actors\character\FaceGenData\FaceTint\test.esp\00000800.dds
上のようになっていればok。
以上で作業終了。ゲーム内で確認してみます。
はい、ちゃんと酔いどれパンツマンにいました。しかし、髪と顔が何やらおかしい。
Nexusのディストリビューションを見ると、以下のmodが必須とのこと。
マスターファイル指定もされてなければ、ヘッドパーツの項目にも何も書かれていないので、完全に見落としていましたが、これがないと顔がおかしくなるわけですね。
(FaceGeomの髪のnifに指定されていると思われ。nifskopeで確認しないと分からない)
また忘れると悪いので、test.espにマスターファイル登録しておきます。
改めてゲーム内で確認
今度は髪型は治りましたが、しわくちゃのおばーちゃんに。。。
正直ヴァニラの肌テクスチャのままやったことなかったんで、ここまでひどいのかと初めて知りました。作者のディストリビューションにも Fair Skin Complexionが推奨と書かれていたので、導入して確認。
スキンテクスチャmodってすごいですね。一気に美形化。後ろのリディアさんもニッコリですよ。
以下が今回のテストプレイ環境。enbは入れてますが、enbootの機能しか使っていません。
まあそんなわけで、基本的にこの作業をすることによって、tes5editだけでもスタンドアロンフォロワーは作れます。一人作れれば後は慣れです。
ただ、必須のmodをマージしてしまうか、そのまま使うか、スキンテクスチャはそれぞれに適したものに変えたい、種族を独立化させて体型もそれぞれ変えたいとなると、もう少し作業量が増えますが、見た目の個性は増えますね。
自分のやり方だと、AI的な個性は失われますが、基本的にフォロワー管理modのAIで動いていてもらったほうが管理も楽で、申し分なしなので、今のところ気にはならないです。
では以上で終わりです。
以下の記事はCKでの作業になりますが、各項目が分かりやすかった。
初めてのパッチ作り。[Skyrim スタンドアロンフォロワー fix パッチ]
スタンドアロンフォロワーなどをいじくり回して、なんとなく分かってきたので、頭と体が繋がらなかったスタンドアロンフォロワーが、首と体がつながるようになり、初期装備もきちんと持っているようになるパッチを作成してみました。
①最も単純なバージョン。
独立した体と頭がつながるが、初期装備はない状態。
このバージョンはNon-Player Character(Actor)のみを変更しました。
例によって下記の記事を参照。
追加したのはNon-Player Character(Actor)こちらは本家に上書き。
②このバージョンでは種族としての独立化と初期装備を適用しました。
装備とRace情報の関係がまだうまく飲み込めてませんが、このあたりを加筆、修正すればよいというのと、初期装備の登録のやり方が学べました。
裸アーマーの登録もNon-Player Character(Actor)からこちらのRaceへの登録と変更しています。
↑追加、修正した項目。
不足していたRaceとOutfitを追加。
Raceを変更したので、アーマーアドオンにRace情報を追記。
RaceはノルドのRaceをそのまま使用していますが、名前を変えることによって能力はノルドと同じですが独立した種族になるようです。
このバージョンではまだスケルトンのパスはデフォルトのままで、上書きインストールされたスケルトンか、バニラのスケルトンを参照して使用します。
まあ、bodyがXPMSE必須なので、ヴァニラのスケルトンを参照するとCTDするようです。
③②番のパッチのスケルトンの項目を変えます。
オリジナルのスケルトンを使えるようにするため、modのメッシュフォルダにパスを変更するだけ。
そのかわり、このフォルダにXPMSEに準拠したスケルトンが入ってないと、CTDします。というのも、今回パッチ適用したフォロワーは、XPMSEに準拠した体型で作られているので。
もしほかのスケルトンを使用する場合は、体型メッシュを変更する必要があります。
パッチが機能しているかの確認
ちゃんと服も着てますし、自前のメガネも最初から装備してくれるようになりました。
おそらくこれで大丈夫なはず。。。
あとは体の部分ですが、ちゃんと脱いでもらって確認しましたが、大丈夫でした。
本当にこのmodからはたくさんの事が学べました。
追記・2019年5月24日
スケルトンを独立化出来た場合は、このフォロワー少し首が長いのでnifskopeで調節してあげると良い感じになる。自分は-2.5ほど縮めてみた。
以下首の縮め方。
とても簡単なNPCの外見変更 -トルフディルを幼女にしてしまいました-
①気に入ったスタンドアロンフォロワーModを用意します。
今回は以下の娘達に協力をしてもらいます。
②Modをアクティブにして、変更したいNPCが入っているespと一緒にTES5editで読み込みます。
③変更したいNPCのNon-Player Character(Actor)をID検索などで探してきて、Overwrite Copyします。このとき新しいesp(new)を選択したほうが事故も少ないかと。
④先程DLしてアクティブにしたスタンドアロンフォロワーのNon-Player Character(Actor)を見ながら、OverwriteCopyしたほうのNon-Player Character(Actor)の項目を変更していきます。
見た目に関係のありそうな部分や、性別、種族(Race)は重要なので、よく確認しながら変更していきます。
終わったら終了、保存します。
⑤スタンドアロンフォロワーのFaceGeomの名前(id)を変更したいNPCのIDに変えます。
そして、保存先が同じになるようにフォルダ階層を構築してModoganaizerでespとともに新規modとして読み込ませるか、単純に上書してしまいます。
※当然元ファイルのバックアップは忘れずに。
⑥もとになったスタンドアロンフォロワーのmodと一緒に、今回作った簡易modをアクティブにしてゲームを起動します。
装備品や、固有のパーツなんかはそのまんま、もとになったスタンドアロンフォロワーのものを流用しているので、必ずセットで。
ロードオーダーはSkyrimゲームデータ→スタンドアロンフォロワーmod→今回作った簡易modの順番で。
以上です。
当然のことながら声はジジイのまま。そうでないとセリフ喋れないですからね。
種族はこのスタンドアロンフォロワーの種族と同じになり、同じスケルトンを使用します。体型ももちろん同じものですが、ドッペルゲンガーではなく、別のID(トルフディル)なので、元のフォロワーと一緒になっても問題ないかと・・・、テストしてませんが。
以下は作業のスクショ。
これでなんとなくわかったこと。
NPCはRaceやNon-Player Character(Actor)で差別化されているのだけど、実際はFaceGeomとIDによって差別化されている。
というのもespの中にあるRaceやNon-Player Character(Actor)に頭部(FaceGeom)を登録する箇所が無かったので。
イメージとしては頭部(FaceGeom)から枝がついて、その先にRaceやNon-Player Character(Actor)があるといった感じに見えました。そう解釈しないと頭部(FaceGeom)を登録する箇所がなくて、焦ってしまいます。
とりあえずこんな感じでやれば、肉屋のおっさんをデブにするとか、物乞いはもっとガリガリにするとか、アンカノのような気に食わないやつは動物にしてしまうとか出来そうな気もしますが、またそのうち実験してみます。
独自体型が適応されていないスタンドアロンフォロワー" Judy Follower"の対処法
①tes5editで Judy Followerのespファイルを開きます。
②Armorの項目を開き、上の方にあるFromIDをコピーします。
※ダブルクリックすると窓が開いて、テキストが表示されるので、そこからコピー。
③Non-Player Character(Actor)の項目を開きます。
④WNAM - Worm Armorの項目をダブルクリックして、編集できる状態にしたら、先程コピーしてきたArmorのFromIDをペーストします。
⑤tes5editを閉じて、esp保存します。
⑥ゲーム内で確認してください。
参考にした記事
自分でスタンドアロンフォロワーとか作ったことがないので、この方法は非常に応急処置的な方法だと思いますが、この作業をするだけで、自前の体のnifとテクスチャをちゃんと適応させることができます。
また彼女は初期装備が登録されていないので、当然裸でウロウロしています。
そのため、ゲーム内でうまくいったかどうかを確認するのは非常に簡単だと思います。
また彼女のトレードマークであるメガネは、彼女自身のイベントリにちゃんと入っていますので、仲間にしたあと装備してもらいましょう。
こんな感じで大学に居ます。修正ができる前は首から下が別のボディテクスチャになっており、はっきりとボディが適応されていないとわかりましたが、修正されるとこんどは首の継ぎ目も何もなく、はっきりと修正されたことがわかります。
追記:2019年5月16日
TES5editで他の作業をしながら見てて原因がわかった気がする。
彼女は独立化したフォロワーならば持っているはずのRaceの項目を持っていない。
要するに彼女は独立化した存在ではなく、ヴァニラのフォロワーと同じNordという種族に属しているわけで、当然独立化したスケルトン、体を持つことは出来ない。
※Non-Player CharacterにNordと指定されている。
顔(FaceGen)のテクスチャが適応されているのは、おそらくnifでしっかりと指定されているため。
※NPCはespのテクスチャセットを使用せず、nifのほうに従う傾向があるらしい。
よって、上記の方法でbodyを適応させるか、Raceの項目を自分で付け加え、独立化したのち、Raceの該当項目にhead、body(Armor)を記載する必要があると思える。
追記・2019年5月24日
一応他のmodとは競合していないので安全かと思うが、このmodのパッチを作ってみた。nexusのフォーラムにURLを掲載しておいたが、なんか消されてて、あーこうゆうの駄目なのかなぁと。一応コメントあればURLはコメ欄に貼るつもり。
しかしmod界のルールが分からないので、何が起こるか怖い。
Skyrim NiNode Transform Tools-v0-0-2の使い方
スタンドアロンフォロワーなど独自体型をもつスケルトンを別のスケルトンに体型を移植し出力するツール
Vanilla or XPMS→揺れない
から
XPMSE→揺れる に変換する。
これ以外の使いみちが思いつかん。
①NiNode Transform Toolsをdlしてきて解凍。
アクセサリーからコマンドプロンプトを立ち上げる。
②コマンドプロンプトにNiTransform.exeがあるディレクトリ(解凍先のフォルダ)から作業をするために、そのフォルダに移動するためのコマンドを打つ。
cd / d のあとにアドレスを右クリでコピペ
自分の場合は以下
cd /d F:\Program GAME\Skyrim toolいろいろ\NiNode Transform Tools-v0-0-2
ENTERを押して、コマンドプロンプトからNiNode Transform Toolsへの作業ができる環境ができる。
以下ここまでの画像
※同じフォルダ内にコマンドプロンプトのショートカットを作っておくと、その後の作業がやりやすい。
③説明書のとおり、変換したい(変換元)スケルトンをコピーしてNiNode Transform Toolsのフォルダにペースト、名前をsrc.nifと変える。
※だいたい女性のスタンドアロンフォロワーしかこんなことやらないので、コピーするファイルはskeleton_female.nifだと思う。
ModOrganizerの場合は
mod名\meshes\actors\character\キャラクタ名\\skeleton_female.nif
こんな感じでスケルトンは入っている。
NMMの人はmeshes以降を同じように辿ってください。
data\meshes\actors\character\キャラクタ名\\skeleton_female.nif
④XPMSEに変換したいので、XPMSEのフォルダ
ModOrganizer(自分の場合)
F:\Program GAME\The Elder Scrolls V Skyrim - Legendary Edition\ModOrganizer\mods\XP32 Maximum Skeleton Extended\meshes\actors\character\character assets female
からskeleton_female.nifをコピーしてきて、NiNode Transform Toolsのフォルダにペースト、名前をxpmse.nifと変える。
※NMMで入れた人はmeshe以降は同じファイルパスにあるはずなので、そこからコピーするか、再度XPMSEをDLして解凍し、mesheフォルダからたどれば該当するファイルが見つかるはず。
data\meshes\actors\character\character assets female
⑤Node Transform Toolsのフォルダ内に以下
src.nif
xpmse.nif
のファイル2つが追加され、フォルダ内は画像の様になる。
⑥コマンドプロンプトに戻って、説明書にあるコマンドを打ち込んでENTER。
NiDumpScale.exe src.nif > nodes.txt
フォルダ内にnodes.txtが出力される。
※コマンドはコピペでおk
⑦次に以下のコマンド打ち込みENTER。
NiUpdateScale.exe xpmse.nif nodes.txt
フォルダ内にout.nifが出力される。
⑧最後に以下のコマンドを打ち込んでENTER。
rename out.nif skeleton_female.nif
フォルダ内にskeleton_female.nifが出力される。
この出力されたファイルが変換されたxpmseのスケルトン。
これを適用したいキャラのスケルトンに上書きして、ゲーム内で確認。
<首の長さを調整>
通常はここで終わりなはずなのだが、首が長くなっていることがある。nodes.txtの中をみると首の値が読み込まれておらず、首がもともとのサイズのままだったりする。
そのときは別のプログラム、NifSkopeで首の長さを調整する。
①先程Node Transform Toolsで作ったskeleton_female.nifをNifSkopeで読み込み"CME Neck [Neck]"の項目を探す。
※NiNodeから開いて探していく。レジストリの様なディレクトリ構造で、検索もあるかどうかわからんので、根気よく探す必要がある。
②CME Neck [Neck]の項がみつかったら、下段にあるTranslationのzの値のみを変える。通常ここの値はすべて0になっている。
長ければマイナスに、短ければプラスに。普通長いのでマイナスに振ればいい。
キャラごとに長さの程度が違うので、正確な値を出すことは自分にはできないが、ゲーム内で確認しながらやってみたところ、-1~-3あたりで落ち着くのでは無いかと思う。
③save asで上書き先を確認しながら編集したskeleton_female.nifを出力し、ゲーム内で確認。良ければここで作業終了。
自分でキャラを作ることのない自分の様な人間は、あまり使うことのないソフトだが、スクショをみて気に入って入れたスタンドアロンのフォロワーさんをお風呂に入れたら、乳が揺れない?!
とりあえずBBP体型にしてしまえばと体型メッシュを変えたら乳がビヨーン?!
面倒くさいので、XPMSEをそのまま打ち込んでみたら体型、顔型いろいろ違う・・・。(´・ω・`)
でもここまで分かれば、もうそんな悲しい思いはしなくて済むはず。
※ちなみにここではスケルトンの話のみで終わりですが、実際はfemalebody_1.nif femalebody_0.nifの作成、キャラに合ったスキンテクスチャを上書きする必要が出て来ると思います。
スタンドアロンのフォロワーの場合は配布先の説明にたいてい何を使って作られたか書かれているので、それをもとにしてください。
特に肌のテクスチャは最新のものにしないとアソコが白くなったりします。
これはまた別の記事で。