Mod有効化(Archive Invalidation)のためのINI設定について
Modを有効化するためには.iniの設定ファイルにコードを追加する必要がある。英語ではArchive Invalidationと言われている。
bInvalidateOlderFiles=1
と sResourceDataDirsFinal=
を設定する必要がある。
bInvalidateOlderFiles=1 とは?
これはOlderFiles(古いファイル)を無効化するかどうかという設定。OlderFilesというのは具体的にはバニラの元のファイルたちを指していて、Invalidate(無効化)といっても完全に無効化させるわけではなく優先度を下げるという意味。 0
がデフォルトで、OlderFilesを無効化しない、つまり元のファイルを最優先にする設定。 1
はOlderFilesを無効化するという設定。つまり元のファイルの優先度を下げて、新しく追加したModのファイルの優先度を上げる設定。
sResourceDataDirsFinal= とは?
これは Data\
内でスキャンするサブフォルダを指定する設定。デフォルトでは STRINGS\
のみが設定されているため、それ以外のサブフォルダ(Modで追加されるInterfaceやSound)なども自動的に全てスキャン対象とするために空を設定することになる。
Mod有効化手順
事前準備
デフォルトのWindowsでは拡張子が省略されて表示されるが、あらゆるトラブルの元になるので常に拡張子を表示させておいた方がいい。どこでもいいのでエクスプローラーを開き上の「表示」->「表示」->「ファイル名拡張子」をオンにする
StarfieldCustom.iniのファイル新規作成
誤った形式のファイルを作るとトラブルの元なので、元々存在しているファイルをコピペして新しいファイルを作成するのが一番安全。
設定ファイルを作成するフォルダを開く。エクスプローラーのアドレスバーに
%USERPROFILE%\Documents\My Games\Starfield\
を入力してエンターで開ける。開くとStarfieldPrefs.ini
があるはずStarfieldPrefs.ini
をコピーして同じ場所に張り付けしStarfieldPrefs - コピー.ini
を作成するStarfieldPrefs - コピー.ini
の名前をStarfieldCustom.ini
に変更するStarfieldCustom.ini
の中身をすべて削除する
StarfieldCustom.iniにMod有効化のための設定追加
StarfieldCustom.ini
をテキストエディタで開き、その中に下の3行を追加する- 新たに
StarfieldCustom.ini
を作成した人は下の3行だけが存在しているはず - 例えばFOVを設定したい場合などはこのファイルに設定を書いていくことになる
[Archive] bInvalidateOlderFiles=1 sResourceDataDirsFinal=
- 新たに
完了
Modが有効化されない場合のトラブルシューティング
不正な目に見えない文字が混入している
目に見えない文字がINIに混入する事で設定が反映されない問題。このブログの上の設定をコピペするのは安全だけど、Nexusmodの説明欄などに記載されているコードをコピペする場合はかなり注意した方がいい。たぶんNexusmodの入力フォームが悪いと思う。
Windowsの標準のメモ帳ではこれを確認する事ができないが、もう少し高機能なエディタであればこれを目で確認する事ができる。他の回避策としてはタイプミスに注意して綺麗に削除した後に手入力で書き直すなど。
例えば9/17現在の Ship Skip - Instant Station Docking and More by Bub というModの説明欄に記載されているコードをVisualStudio Codeで確認すると下記のようにメモ帳では目に見えない文字が先頭に混じっている。これではModは有効化されない。
なぜかStarfield.iniに設定を書かないと反映されない民
原因はよくわかっていないが、 StarfieldCustom.ini
に正しく設定を追加しても設定が反映されない人がいるらしい。そういう人は Starfield.ini
というファイルに設定を追加すると反映されるらしい。
Starfield.ini
は steamapps\common\Starfield\Starfield.ini
に存在するもの。 \Documents\My Games\
の方ではないので注意。
設定方法は、 Starfield.ini
の中にはすでに [Archive]
と sResourceDataDirsFinal=STRINGS\
が設定されているので、この sResourceDataDirsFinal=STRINGS\
の =
より後ろ STRINGS\
を消す。そして bInvalidateOlderFiles=1
の行を追加する。 StarfieldCustom.ini
に設定したものと同じ内容にするということ。これでModが有効化されるらしい。