2017年2月8日

TES5Editで競合用パッチを作ろう

TES5Edit を使って、MODの競合を修正するパッチを自作してみましょう。
MODの組み合わせによっては専用のパッチが用意されていたりしますが、やはり自分のMOD環境に必要なパッチは自作するのが最良です。

TES5Edit では競合箇所が簡単に分かりますし、パッチを作るのも作業自体は難しくありません。
前回作成した「Test1.esp」を元に、パッチ作成法を確認していきたいと思います。


競合用パッチを作成する前に

基本的なことですが、MODの Description は必ず読んでおきましょう。英語ですので理解しにくい部分があったとしても、併用可能MODやロードオーダー(読み込む順番)について確認するだけでも違います。
ロードオーダーだけで何とかなりそうならその方が良いです。LOOTでチェックするのも良いでしょう。

それらで上手くいかないときが競合用パッチの出番です。
最初からすべての競合を潰すことは無いと思います。気になるところだけ修正し、作成した競合用パッチをアップデートしていけば良いでしょう。

今回出てくるファイルは以下の4つです。

  • Skyrim.esm … バニラのファイル。検証の元ファイルとして利用。
  • Test1.esp … 前回作成しました。「Iron Gauntlets」の中の「Value」と「Weight」の値を変更しています。
  • Test2.esp … これから作る競合MOD。Test1 に対してわざと競合させます。
  • TestPatch.esp … 競合を改善させるパッチ。最後に作成します。

デモ用競合MOD「Test2.esp」の作成

まずは前回作成した「Test1.esp」に競合するMODをわざと作成してみます。

TES5Edit を起動します。「Test1.esp」にだけチェックを入れてOKボタンを押します。


マスターファイルに指定されている「Skyrim.esm」も一緒に読み込まれます。
「Iron Gauntlets」の変更された行が黄色になっています。競合はしていません。

左画面の「Test1.esp」の「Iron Gauntlets」を右クリックして「Copy as override into...」を選択し、競合するMODを新規作成します。

名前は「Test2.esp」にしました。右画面に3つのMODが表示されています。
まだ単なるコピーですので競合していませんから、行背景は黄色です。
ロードオーダーは、左画面では下の方が後(優先)、右画面では右の方が後(優先)です。

「Test2.esp」の数値を、Value=25、Weight=3 にしてみましょう。
すると↓

はい、競合しました。

見やすくするために、右画面のどこかを右クリックして、「Hide no conflict rows」にチェックを入れましょう。競合箇所のみが表示されます。

今回のケースでは、次のような競合が起きています。

  • 「Value」は、Test1 で「50」にしたが、Test2 で「25」に書き戻された
  • 「Weight」は、Test1 で「1」にしたが、Test2 で「3」に書き換えられた

このとき、ゲームに反映されるのは Test2 の数値のみです。Test1 というMODは無意味になりました。

Test2 の Value=25 は Skyrim.esm と同じです。
Test2 は、Weight=3 に変更するだけのMODで、それ以外はバニラの数値を利用しています。

例えばここで、ロードオーダーを Test1 が後にくるようにすると、Value は競合しなくなりますが、Weight は競合したままで、Test2 は無意味になります。

このように、MODの変更箇所以外はバニラの値が利用されているため、ロードオーダーによって競合の有無が変わります。

複数のMODが関係してくるとこういった競合は非常に発生しやすく、ロードオーダーを変えて1ヶ所を修正すると、別の場所が新たに競合してしまったりします。


競合用パッチ「TestPatch.esp」の作成

今度はこの競合を修正するパッチを作成してみます。
パッチの元になるMODを選ぶのですが、なるべく変更箇所が少ないものを選んだ方が良いでしょう。
どのMODを元にしてもパッチは作成できますが、修正箇所が多いと結構大変です。

今回は「Test2.esp」からコピーを作成します。
Test1、Test2 のときと同様に新規作成しましょう。

コピーができました。名前は「TestPatch.esp」にしました。
Test1 の Value=50 を反映させたいので、TestPatch に値をドラッグします。

すると

Value の競合が修正され、行背景が黄色になりました。
ゲームでは TestPatch の値が反映されますので、Value=50、Weight=3 となります。

Weight の背景は赤色のままですが、これは競合によって Test1 の値が無効になってしまっているからです。
ここは意図的に放置して大丈夫です。競合が嫌なら Test1 の値を修正すれば良いですが、MODのオリジナル値を改変してしまう修正法は個人的におすすめしません。


今回は簡易的に競合させてパッチを作成しましたが、本番のMOD同士の競合対策は、

  1. 競合箇所の特定(TES5Edit で赤くなっている行)
  2. パッチの元にするMODの選定
  3. ゲームに反映させる値の選定

をして進めることになります。

競合は完全に修正する必要はありません。何度も書いていますが、一番右側のMODの値が反映されるだけです。
競合が少ないほうが動作が安定するような気もしますが、プレイに支障が無いならそれで良いと思います。

自分の環境用にものすごく完璧なパッチを作成しても、関連するMODを抜いたり、新しくMODを入れたりしたらまた変更しなくてはなりません。
ほどほどに修正して、ゲームプレイの方を楽しみましょう!
パッチの作成の方が楽しくなってきてしまうその日まで!


0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。