« ●第[03回]: マスターファイルやmod入手あれこれ (Skyrim) | トップページ | ●戦いののち平和が訪れ…(天空のクリスタリア) »

2015年7月28日 (火)

●第[04回]: 世界を生成する? (skyrim)

こんにちは、ゆう@TESmod沼 です(^^;)
ちょっと仕事が忙しくて、しばらくサボってました^^

20150725_00086
↑こちらのほうは、時間を見つけては少しずつ進めています。

ある程度、mod構成を決めてプレイ中にはいじらないようにしてしまえば、プレーのほうにウエイトを持ってこれますね。
(modいじり楽しいけど・・・)
(modいじり楽しいけど・・・)

20150728_00024
↑言ってるそばから・・・ドーン!w

いや・・・だって、こんなの見つけちゃったら、プレイそっちのけでまずは試してみるでしょ^^;

・・・
・・・

さて、気を取り直して・・・

Skyrimのmod環境で遊ぶ上で、揃えておいた方がいいツールが2つあります
前にも書いたTES5edit と MFG Console です。

http://skyrim.2game.info/detail.php?id=25859

http://skyrim.2game.info/detail.php?id=44596

CKまで使わずとも、TES5editでesp/esmの構造や参照/上書き関係の確認、プラグインの変更、マージの作成など、相当なことができますので、使えるようになっておいた方がイイです。もうひとつの、MFG Console も必須に近いです。遊ぶだけなら必要ありませんが、コンソールのコマンドを拡張してくれるのと、ゲーム内で様々なオブジェクトのIDを調べることができる便利な拡張です。

この便利なエディターを使うに当たって、覚えておいた方がいいIDに関する話があります。
今までの記事では分かりやすく一まとめに「アドレス」と読んでいました。
上位2桁がロードオーダになるアレ、です。
Skyrimの世界に存在するもの(オブジェクト)には、すべてID(アドレス)が振られています。

 

IDは3種類あります、
①BaseID(ベースID)
 オブジェクトの元となるひな形IDです。
 C++やJAVAでいう「クラス」のアドレスです。
 ベースIDはひな形ですので、ゲーム内に設置されているもの「そのもの」ではありません。
 たとえば、「エルスウェアーフォンヂュ(のひな形)」みたいなものです。
 実体ではなく、性質や構成要素を表します。
②RefID(リファレンスID)
 オブジェクトが実体化されてたときに発生するID、言い換えると、世界に配置された場合のIDです。
 C++やJAVAでいう「インスタンス」のアドレスです。
 ウインドヘルムのキャンドルハース・ホールに配置されたエルスウェーア・フォンデュと、ホワイトランのバナードメアに配置されたエルスウェーア・フォンデュは、性質は同じものでも配置場所など実体は別物ですよね。これら実体を管理するのがRefID(リファレンスID)というわけです。
①と②は合わせてFormID(フォームID)と呼ばれます。ただし②は動的データ(ゲーム動作中にしか現れない)なので、TES5editで見れるのはFormIDといっても①のBaseIDです。②を見ようと思ったら、ゲーム内のコンソールで、画面上のオブジェクトをマウスクリックすると表示されます(MFG Consoleを入れている場合)。ちなみに、ゲーム終了時にはセーブデータの中に保存されます。
また、①や②は値が重複してはいけません。重複した場合は競合となり、先の記事のロードオーダー的に優先度が高い方が採用されます。
③EditorID(エディターID)
 FormID(①や②のID)に、分かりやすい名前をつけた文字列です。これも重複は許されません。
 Skyrimでは途中でmodを出し入れして、BaseIDやRefIDの上位2桁が変化してしまうことがよくあります。たとえばインベントリの管理がこれらのID出されていたら、番号が変わった瞬間に整合がとれなくなってしまいます。EditorIDで管理していれば、ロードオーダーが変わっても変化しないため、ロードオーダーの影響をうけなくなります。
 Modの中でも、スクリプトなどでオブジェクトを指定するときに、BaseID/RefID直接ではなく、EditorID(ユニーク文字列)でオブジェクトを引っ張ってくるように作ることができます。
このような作り方をされているmod同士なら、マージするときにFormIDが変更されてしまってもちゃんと動作をします。
内部要素に対してBaseID/RefID直接参照で作られているmodは、マージしたりしてIDを振りなおすと、おかしくなります。
どのようにオブジェクトを参照しているかはスクリプトのソースを見ないと分かりませんけど、マージしてIDが変わると動かなくなるmodは直接参照の可能性が高いです。その場合は、IDを固定のままマージして動けばラッキー、ダメなら改造が必要になります。
・・・
・・・
20150728_00113
↑MFG consoleを入れている時のコンソール画面の例
この例では、マウスでゴールド(金貨)をポイントしています。

 

 

金貨のゲーム中でのbaseIDは0000000f、データはskyrim.esmに定義されています。
そしてこの例ではHavenbag.espで配置され、さらに、Immersive Jewelry.espで最終的に上書きされている、ということがわかります。
よくある、mod入れたら日本語が英語に戻っちゃった、というのも、MFG console入れて英語に戻ったオブジェクトをポイントして、最後に上書きしたespを特定すれば、どのmodのせいかすぐにわかります。
Tes5edit
↑こちらはTES5editの例
BladesCuirassAA(ブレイドの鎧の付帯情報)に対して、定義がskyrim.esm、そしてUSKP(Unofficial Skyrim Patch.esp)で上書きされ、さらにClanking Armor.espで最終上書きされていることがわかります。
このように、適切なツールを使って、ロードオーダーとIDのメカニズムを表層だけでも知っておくと、modの動作がおかしな時の原因切り分けに役立ちます。
TES5editというと一番に上がってくる用途はダーティ・エディットのクリーニングですが、むしろmodの構造ビューワ/簡易エディタとしての機能の方が重要です。
使い方を覚えておいて損はないですよ~(^_^)/
これで、mod盛り盛りのプレー環境を構築する基礎知識はだいたいそろったといえます。
次回からは、個別のmodや、環境整備について紹介していきます。
・・・
・・・
さて、ちょっとスクショのコーナーw
今日は本編をちょっと離れて・・・
20150725_00043
↑サラさんの鎧を新調しました^^
・・・Dynasty Armorのチェインメイルのテクスチャを弄ったもの。
・・・新品という設定なのでいいけど、もうちょっとテクスチャに濁りと傷を入れて、錆やくすみを入れたら世界になじんでくれるかな(°° )
20150726_00026
↑Modデータベースで気になっていたスクルドさんも入れてみました。
正しい仮面の外し方がわかりませんが、中から美人さんが出てきました。
20150726_00022
↑スクルドさんの装備はアイゼンアーマーのリテクスチャ(白青金)と、別modのElysium Skirt、そしてBLESS Online Tinuviel Armorのベルトを装備スロットと表示優先度を変更してスカートの継ぎ目を隠しています。
プレイヤーはDorothy Robe白とDf T33ブーツの白リテクスチャ、レースのショートクロークといったいでたちです。
お世辞にもロアフレンドリーではありませんし、ホワイトラン以南の緑の多い地域では目立ちすぎますが、ENB選んで北方の雪原の方だと意外と映えます^^
テクスチャとかいじりだすと、きりがないのでこの辺で・・・w
・・・
・・・
んで、さっきの続き・・・
20150728_00041
↑なんか降ってきた~

20150728_00024
↑オープニングの処刑シーン・・・^^;

20150728_00062
↑スライム○スじゃありません。ドラゴンですw

20150728_00067
↑スライムべ○じゃないので、火も吹きます。

20150728_00074
↑スライ○べスじゃないので、空も飛びます。

20150728_00080
↑スラ○ムべスじゃないので、でかいです。

20150728_00090
↑ス○イムべスじゃないので、帝国兵も歯が立ちません。

20150728_00106
↑ヘルゲンの街を破壊したあと、飛び去る○ライムべス、じゃなくてドラゴンw

フォロワー版もあるようです・・・

20150722_00066
↑こんなの・・・w かわいい!

20150722_00067_2
↑確かにそうなんだけど・・・その言い方ってひどいよね(U_U )

これをロアフレンドリーと言えるぐらい、柔らかい頭でいたいものです(違っ・・・
それでは~♪

|

« ●第[03回]: マスターファイルやmod入手あれこれ (Skyrim) | トップページ | ●戦いののち平和が訪れ…(天空のクリスタリア) »

ゲーム」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1149701/60747488

この記事へのトラックバック一覧です: ●第[04回]: 世界を生成する? (skyrim):

« ●第[03回]: マスターファイルやmod入手あれこれ (Skyrim) | トップページ | ●戦いののち平和が訪れ…(天空のクリスタリア) »