ModモリモリのFallout 4 : 005 DEF_UIでアイテムをグループ化する

 引き続きDEF_UIネタ。

 今回やりたいのは「Campsite – Simple Wasteland Camping (and HD Sleeping Bags)」というModのキャンプ用アイテムを1つのグループにまとめること。

 DEF_UIの設定ファイルの場所など基本的な知識があるものとして、その辺はザックリ書きます。

 下の画像のように「キャンピング・キット」というグループを作り・・・

 展開すると一覧が表示されるようにしたい。

まずはアイコンを表示

 キャンピング・キットなので葉っぱのアイコンにしてみた。DEF_UIで使えるアイコンはDEF_UIの設定ツール「settings.exe」の「ICons」ボタンから確認できる。


 これを見ると葉っぱのアイコンは「n_leaf」という名前らしい。

  続いて、xTranslatorアプリでアイテム名の先頭にキーワードをつける。

 キャンプキットには「(CampKit)」というキーワードを使うことにする。

 アイコンとキーワードの関連付けはDEF_INV_TAGS.xmlファイルで行う。ファイルに以下の行を追記。

 <tag icon=’n_leaf’ keyword=’CampKit’ hidetag=’true’/> 

 これでグループ化はできていないものの、キャンピング・キット系のアイテムにアイコンが表示されるようになった。

グループ化する

 で、グループ化している設定を探すのにしばらく時間を要したが「lyrConf.xml」にグループ化の設定が書かれていると判明。

 他の記述を参考に以下のように設定を追加。

</subCategory>
        <subCategory tag=”\(CampKit\)”>
        <favorite type=”boolean”>false</favorite>
        <taggedForSearch type=”boolean”>false</taggedForSearch>
        <isLegendary type=”boolean”>false</isLegendary>
        <filterFlag type=”int”>512</filterFlag>
        <equipState type=”int”>1</equipState>
        <text>[CampKit] キャンピング・キット</text>
        <canFavorite type=”boolean”>false</canFavorite>
        <filterMask type=”int”>512</filterMask>
        <subFilter type=”int”>16777216</subFilter>
    </subCategory>

 subFilterが曲者でユニークな値を設定する必要があり、65536から始めて2倍した値を使って行けばよいらしい。

 すでに記述されている設定だと65536からはじまって8388608まで使っているので、 8388608 を2倍した16777216を使用。

 紆余曲折ありながら、ここまで設定したら目的通りの動作になった。

 DEF_UIで使えるアイコンはModで足せるみたいだが、ソート用のModに縛りがあるようなので悩ましい。