Oblivionプレイ記録 036 Archive Invalidationとは – TES CS Wikiより

以下に訳出するTES CS WikiOblivion Mods FAQのページの「Archive Invalidation」の項目は2006年6月に項目が設けられ、最終更新は2007年11月となっています。かなり古い記事にあたりますが、それでもなお有用性があると判断し、ここに転載、訳出します。転載、訳出の範囲は同項目の前半部分です。

Wikiのコンテンツという性質上、ここに訳出する内容の正確性は100%担保されているわけではありません。なお、今回TES CS WikiのGeneral Disclaimerのページを見た上でコンテンツの一部を転載、訳出しても問題ないという判断をしましたが、権利者からの警告等があった場合にはすみやかに記事の修正を行います。

Oblivionは通常、個別のフォルダ(Meshes、Textures、Sounds等)からではなく、サイズの大きな幾つかの.bsaファイルからメディアリソース(アートワーク※1、会話音声、音楽等)を取得しています。(Vanilla状態の)Oblivion、そして公式DLCはこれらの.bsaファイル(bsaはBethesda Softworks Archiveを略したもの)を利用します。これらの.bsaファイルの内部は、「Data」フォルダの構成と全く同じような構成となっています。

ユーザたちによって作られるModは、.bsaファイルを活用しようとし始めていますが、多くのModはいまだに、「Data」ディレクトリにそのMod固有のMeshesやTexturesなどのファイルの配置を求めます。このことは、新たな項目を追加するModの場合はいいのですが、しかしオリジナルのOblivionの項目を変更する、いわゆる「Replacer※2」Modの場合、問題となりえます。たとえば、代表的なModのタイプとして、「Armorのテクスチャを置き換えるもの」や「風景のテクスチャを置き換えるもの」が存在します。それらは、オリジナルの「stock(.bsaファイルにストック)」されたテクスチャを置き換えることにより、Oblivion内での(Armorや風景の)見た目を向上させます。

本来ならこのことは、問題とはなりません。なぜなら、Oblivionは以下のように設計されてるからです。Oblivionはメッシュ、テクスチャ等のファイルに施されたタイムスタンプ(ファイルが最後に変更された日付・時刻)がオリジナルの.bsaファイルに施されたそれより、新しいものであれば自動的にそれらのファイルを読み込みます。.bsaファイルに施されたタイムスタンプが旧いものであれば、その.bsaファイル内の項目はより新しいタイムスタンプを施された「Data」フォルダ内の、同名の項目によって置き換えられます。

しかしながら、いくつかのケースでは、この設計は正しく機能しません。この事態が、OblivionのArchiveInvalidationのシステム自体の不具合に起因していることには疑いの余地はないと思われます。ゲームの発売から1年以上経ち、数々の公式パッチがリリースされたのですが、Bethesda社がこの不具合を修正することはなさそうです。これが意味することは、プレイヤーは「Replacer」Modをインストールしたいのならば、いくつかある回避方法のうちの1つを採らねばならないということです。

このテーマに関する更なる詳細、そしてArchiveInvalidationの一般的な問題にたいする広範な検証結果については、ArchiveInvalidation Explainedという記事で取り扱われてます(ElderScrollsForum上のこのトピックのスレッドは現在消失している)。

広く知られている回避策はそれぞれ、メリットとデメリットを持っています。後述するリストの中の最初2つの方法―BSA AlterationとBSA Redirection―は最適の推奨される方法です。後述するリストの中の後ろの2つの方法―BSA InvalidationとBSA Extraction―は深刻な欠点を持つが故に、推奨されない方法です。以下に、いくばくかの概要とともに回避策のリストを記します。

BSA Alteration: この回避策は、Archive Invalidationの問題に対する策(理想的なもの)としては、最初に見出されたものです。この回避策は広く用いられており、信頼性が高く、全くシンプルなものです。そして、多くのOblivionのModユーザーたちが今に至るまで使い慣れたものです。この回避策のデメリットはいくつかの外部ツールのうち1つは必ず利用しなければいけないということ(どちらにせよ、これらのツールのうち1つは恐らく必要になってくるので大きな問題ではない)、Replacer Modをインストール/アンインストールした後にはBSAに対する変更をUpdateしなければいけない(大抵のツールはこれを自動化された方法で行ってくれるにもかかわらず)、そして覚えておかなければならないことは、Bethesda社によって提供される公式パッチを適用した後にはBSAに対する変更をRemoveしなければならないということです。

BSA Redirection: この回避策は、より新しい回避策であり、とても効果的であることが判明しています。この回避策は、BSA Alterationよりも好ましい所以となるメリットを備えています。最大のメリットは、この回避策はいかなる外部ツールも必要としないということ(とはいっても、この回避策を採るに当たっていくつかのファイルをインストールする必要があるし、設定のためにツールを導入するべきです)。そして、一旦セットアップしてしまえばArchive Invalidationに関することは殆ど忘れてしまっていいということが挙げられます(Replacer Modのインストール/アンインストールした後の、ユーザによる手間は一切必要ありません)。

BSA Invalidation: この回避策は、Archive Invalidationの問題に対する策として、最初に発見されたものです。そして多くのユーザの間で長い間用いられてきました。しかしながら、この回避策は厄介な制限と問題を内包しており、そのため現在では殆ど用いられることがありません。あいにく、多くの黎明期に開発されたModは今なおこの方法をユーザに推奨しています、よって多くのユーザはこの方法が優れたものだと思うに至ってます。実際はこの方法は多くの環境下では、最悪なものです。この回避策を信頼に足るものとする唯一の方法は、BSA Extraction(後述)を併せて利用することです。ユーザは、もし可能ならこの方法を避けるべきでしょう。

BSA Extraction: この回避策はMod製作者(どの道.bsaファイルから頻繁にファイルを抽出する必要がある)にとっては役に立つ方法です。しかしながら、この回避策はModのプレイヤーにとって大きなデメリットがあり、そのためこれ以上の詳細はここでは触れません。

  • ※1 CADやグラフィックスソフトで作成されたファイル
  • ※2 Replaceは「差し替える」「置き換える」の意

Oblivion Mods FAQ – The Elder Scrolls Construction Set WikiのArchive Invalidationの項目より転載、訳出。注記は転載、訳出者によるもの。

併せてOBMMのヘルプファイル、Oblivion Wiki JP 避難所のOBMMのページ内の「Archive Invalidation」の項目等も読むと参考になると思います。

BSA redirectionとは?

BSA redirectionは先の記述でも触れられているように、現在あるArchive Invalidationの手法の中でも、より効果的であり、尚且つメンテナンスフリーな手法です。OBMMのUtilitiesから、Archive Invalidationを選択して、Modeの中から BSA redirectionにチェックを入れます。そしてUpdate nowを押すとほんの一瞬でそれは完了します。初めて、それを行った時、「え、これで終わり?」とあっけなく思ったものです。そのプロセスで何が為されているかというと、以下の2つになります。

  1. 「C:\Program Files\Bethesda Softworks\Oblivion\obmm」に「BSARedirection.bsa」が新しく作られる。
  2. ini.ファイルのsArchiveListの項目の先頭に..\obmm\BSARedirection.bsaの記述が加えられる。

Vanillaの状態では、oblivion.ini内の記述は、以下のようになっています。

SArchiveList=Oblivion - Meshes.bsa, Oblivion - Textures - Compressed.bsa, Oblivion - Sounds.bsa, Oblivion - Voices1.bsa, Oblivion - Voices2.bsa, Oblivion - Misc.bsa

それが、BSA redirectionを実行することによって、

SArchiveList=..\obmm\BSARedirection.bsa, Oblivion - Meshes.bsa, Oblivion - Textures - Compressed.bsa, Oblivion - Sounds.bsa, Oblivion - Voices1.bsa, Oblivion - Voices2.bsa, Oblivion - Misc.bsa

以上のように、緑文字の部分が追加されます。

By changing the list to include another BSA containing at least one texture, you can trick the game engine into processing the bugged ArchiveInvalidation logic for that new dummy file rather than the real Textures BSA (called Oblivion – Textures – Compressed.bsa).

Oblivion Mods FAQ – The Elder Scrolls Construction Set Wiki
http://cs.elderscrolls.com/constwiki/index.php/Oblivion_Mods_FAQ

iniファイル内の、ゲームエンジンに読み込ませるBSAファイルのリストの先頭に、1つダミーのBSAファイル(少なくとも1つのテクスチャファイルを含む)を加えます。こうすることで、リストの先頭に加えられたBSAファイルを、最初にゲームエンジンは読み込みます。そして当初の設計の意図どおり、「Data」フォルダ内のテクスチャファイルを読み込ませることができる※3という仕組みです。

  • ※3 「Oblivion – Textures – Compressed.bsa」より優先的に

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です