パワーアーマーをエロくしてみた

Mod作成

私にとって本作のパワーアーマーというと、最初の自由博物館前の戦闘で期待はしたものの、予想していたのと違って拍子抜けし、思った以上に使いづらく、何より露出が減って可愛くないので常用する気になれず、単なる連邦の置物となっていました。

最大の問題が可愛くないという点なので、これを解決すべく、Mod収集をしたのですが、これだと言えるものには出会えず、自分でどうにかできないかと試してみました。

PowerArmorRaceという種族

パワーアーマーは種族です。主人公の種族は人間なので、パワーアーマーに乗るということは種族が変化するということです。Skyrimで言うならノルドがウェアウルフに変身するのと似ています。

連邦にはあちこちにパワーアーマーが転がっていますが、それはフレームと呼ばれ、内部的には家具になります。家具をアクティベートすることでスクリプトが稼働して搭乗アニメーションを再生させて種族の変換が行われるようです。

理解できていないというか変わっているという点で、パワーアーマーに乗っている最中にプレイヤーの種族をGetRace関数で調べても元のHumanRaceが返ってきます。これの理由や仕組みがよくわからないのですが、装備、見た目、アニメーションがPowerArmorRaceのものになっている以上は、種族が一時的に変化していると思ってよさそうです。

それで、エロくするには

2つあります。

まず、本来のパワーアーマーのモデルをエロくする方法です。バニラで最初に手に入るT-45をOutfit Studioで小一時間いじくり回してみましたが、私のモデリングスキルでは腕を前に持っていくことすらできず、断念しました。

ただ、内部的にはPowerArmorRaceのWornSkinとして防具が指定されており、それがT-45ならT-45のフレームである防具で上書き指定されているらしく、そのフレームの防具で使われているメッシュを差し替えれば反映されることはわかりました。

そこで、今度はPowerArmorRaceの中身をHumanRaceで上書きし、ほぼHumanRaceになるようにしてみました。一部の能力などパワーアーマーならではの部分は残しつつ、スケルトン、メッシュ、アニメーション周りはHumanRaceと同じにしてみました。

スケルトンはANAM – Female Skeletal Modelで指定されているものをHumanRaceで使っているものにしてみました。実際に変化することを確認できました。今回は女性のみを対象とするため、男性のスケルトンはバニラのままです。

アニメーションまわりはFemale Behavior Graphあたりになります。こちらも女性の方のみ変更します。これを設定しないと旋回以外の操作ができませんでした。

よくわからない部分は残しました。BOD2 – Biped Body TemplateやBiped Object Namesは装備に関する設定のようですが、変更しても違いがわからず、役割を理解できていません。後述しますが、装備に関してはハードコーディングされいるような印象です。

フレームのメッシュはTALOS Exoskeleton Redux — A Power Armour Alternativeを使いました。このModは強化外骨格という防具を追加するものですが、見た目がパワーアーマーに近いため、それらしい雰囲気を味わえるというものです。あくまでも防具であり、パワーアーマーではないので、趣旨が違ってきます。そこで、パワーアーマーのフレームのメッシュをこのModのメッシュでリプレースして、本当にパワーアーマーとして使ってみました。

AAPowerArmorFrameRaiderがArmor Addonなので、これで指定されているメッシュをリプレースです。バニラであればAAPowerArmorFrameRaiderにPowerArmor専用の胴と手のShapeがセットで含まれています。リプレース後のメッシュは胴だけにしておき、手はNanakochanのものをそのまま使うためにAAを追加して組み合わせました。

AAのレコードも修正が必要で、女性の方のみメッシュを差し替えます。リプレース後は手を含まないのでBOD2から手を取り除きました。ただ、BOD2は男女共通になるので、男性の場合は手が消えてしまうと思います。

私の環境では総Nanako化が済んでおり、連邦に男は存在しないのでこれ以上の調整はしませんでした。

ほぼ人間のままのパワーアーマーが完成

パワーアーマーに乗っても強化外骨格を身に着けただけの人間という状態になります。人間が防具を着ただけに見えます。

内部的にはパワーアーマーのSpellやPerkが適用されているので高い防御力を獲得できますし、高いところから落ちてもノーダメージです。HUDがパワーアーマー専用のものに置き換わりますし、人間の時に着ていた防具は無効になります。このあたりはゲームエンジン内でハードコーディングされているようです。

装備について

パワーアーマーに乗っている最中は頭装備とパワーアーマー用の防具のみ付け外しできるようですが、これを制御している部分がわかりませんでした。

スロット制御なら人間用の防具も着れてしまいますし、レコードを眺めてもそれらしき部分が見つかりません。キーワード制御なら人間用の頭装備が着れるのがおかしいです。実はスクリプトやコンソールからのEquipItem、UnequipItemによる付け外しはひと通り可能なので、おそらくPipboyMenu内部でハードコーディングされているのではないかと思います。

というわけで、パワーアーマーに乗ったあとも人間の時に着ていた装備のいくつかをスクリプトで着せることにしました。

UIはQCAを使う

手動による脱着はPipboyだとできないみたいですが、Quick Change Armorをパワーアーマーに対応させることで実現しました。QCAは元々パワーアーマーに対応していませんが、おそらくポーズが人間前提だからだと思います。パワーアーマーをほぼ人間化したことでポーズをそのまま再生できるようになります。あとはQCA自体に装備一覧にパワーアーマー用防具が出てきてしまう不具合があるのでその辺りを調整し、パワーアーマー搭乗中は表示される防具に制限を加えるようにしました。QCA側に許容するSlotmaskを用意しておいてフィルタリングします。

QCAは内部で装備一覧を持っているのですが、これを作るのがゲーム起動時で、それ以降はイベントを監視して都度調整する処理になっています。これがあまりよろしくないので、監視は止めてQCAのメニューを開いた時に一覧を作る処理にしました。その際にパワーアーマーに搭乗中かどうかを見て一覧の作り方をかえています。

Morphが崩れる

スクリプト経由で装備を変更するとLooksMenuのMorphがよく壊れます。リファレンスが大きいのに装備が小さいままなのでクリッピングを起こすのです。これはLooksMenuのBodyGen.UpdateMorphs関数を呼ぶと改善が見られました。

どうやらGameModeだと壊れやすいようです。MenuModeだと問題ないようです。例えばコンソールを開いてスクリプトを呼ぶとうまくいきます。Fallsoulsでコンソールの時間停止をオフにすると壊れるようになります。

パワーアーマー専用防具は人間用防具に置き換える

フレーム(素体)をかえたので、各パーツも合わせてかえる必要があります。

面倒だったので、コンバットアーマーのメッシュをそのまま割り当てました。

初遭遇時のダンスは全パーツが揃った状態で出現するのでNPCの動作確認に便利です。

本記事のサンプルがPower Armor Tweaksになります。

タイトルとURLをコピーしました