Thinking Skeever

Skyrim/The Witcher 3 Modについてのあれこれ。FoModの作り方、Mod導入時のトラブル事例などのニッチな話を書いていきます。a.k.a. BowmoreLover@nexusmods

FOModの作り方(NMMとMOの差異について)

Nexus Mod Manager(NMM)とMod OrganizerとではFOModインストーラの動作が異なるので注意が必要です。

この記事は次のバージョンで確認した情報です。

  • Nexus Mod Manager 0.54.10
  • Mod Organizer 1.2.18

order属性のデフォルト値

<optionalFileGroups>、<plugins>のorder属性を省略したときの動作が異なります。
省略せず明記したほうがよいでしょう。

  • NMM:Ascending(昇順)が仮定される
  • MO:Explicit(指定順)が仮定される

name属性中の特殊文字

<installStep>、<group>、<plugin>のname属性中にアンパーサント(&)を指定したときの動作が異なります。

  • NMM:普通に表示される
  • MO:直後の文字がニモニックと認識され、アンダーバー付で表示される

他の特殊文字については未検証ですが、特殊文字の指定は避けたほうが無難だと思います。

タグ省略時の動作

NMMでは、<description>、<files>、<dependencies>など、一部のタグを省略するとインストールエラーになります。中身が空であっても残しておいたほうが無難です。

タグの記述順序

NMMでは、タグの記述順序が比較的厳密に決められています。
例えば、<plugin>内のタグは次の順序で記述する必要があります。

  1. <description>
  2. <image>
  3. <files>
  4. <conditionFlags>
  5. <typeDescriptor>

<description>内の文字列の改行の扱い

次の指定をした場合、MOでは改行されて表示されますが、NMMでは改行が無視され1行にまとめられて表示されます。

<description>
    UNP体型です。
どちらかといえばスリムな体型です。
</description>

次のように改行コード(&#xD;)を書くことで、MO/NMMともに正しく改行されます。

<description>
    UNP体型です。&#xD;
どちらかといえばスリムな体型です。
</description>

特殊文字を含む文字をCDATAセクションで囲む場合、改行コードはCDATAセクションの外に指定します。

<description>
    <![CDATA[UNP体型です。]]>&#xD;
<![CDATA[どちらかといえば"スリム"な体型です。]]>
</description>

本来ならこれで改行されるはずなのですが、NMMではうまく改行されません。
CDATAセクションが各行頭から開始しないようにするか、CDATAセクションを使わないことでうまく改行されます。

<description>
    UNP体型です。&#xD;
どちらかといえば<![CDATA["スリム"]]>な体型です。
</description>
<description>
    UNP体型です。&#xD;
どちらかといえば&quot;スリム&quot;な体型です。
</description>

<group> type="SelectAtLeastOne"の動作

<group>のtype属性 "SelectAtLeastOne" は、項目の中から1つ以上を必ず選択するという意味です。
すべて未選択にしたときの動作が異なります。

  • NMM:メッセージ"You must select at least one plugin in this group."が表示されチェックが外れない
  • MO:すべて未選択にできてしまう。警告メッセージは表示されない。その代わりになのか選択肢の上に"1つ以上の項目を選択:"という文字が表示される。

<folder>、<file>のパス区切り文字"\"

パスの区切り文字に"\"を使ったとき、Mod Organizerのバージョンによってはファイルがコピーされない場合があります。"/"を使ったほうが安全です。

  • MO v1.3.4で確認されている現象

パスの指定

    <folder source="00 Core Files - Vanilla\" destination="" priority="0"/>

MOのログ

[D] using mod name "FOMod Tutorial 05" (id 0) -> C:/Skyrim_Work/Temp/FOModTutor05.zip
[C] failed to extract FOModTutor05/00 Core Files - Vanilla\ to : FOModTutor05/00 Core Files - Vanilla\ not found in archive
[D] installing to "C:/Skyrim_Work/Tools/MO_1.3.4/mods\FOMod Tutorial 05"
[D] Installation successful

 インストーラ自体は正常に終了し気付きにくいので注意が必要です。
 この現象はv1.2.18およびv1.3.5では発生しません。

修正履歴

  • 2015/05/04 23:10 「<folder>、<file>のパス区切り文字"\"」追加
  • 2015/05/18 02:00 「<folder>、<file>のパス区切り文字"\"」修正(v1.3.5で対策されたことを追記)

Copyright (C) 2015-2020 ThinkingSkeever, All Rights Reserved.
ブログの記事内に記載されているメーカー名、製品名称等は、日本及びその他の国における各企業の商標または登録商標です。
リンクはご自由に。記事の転載はご遠慮ください。記事を引用する場合はトラックバックするか元のURLを明記してください。