Sarmaticus

誰も読まないような趣味の話しかしないほうのブログ

マウントアンドブレード2のModの Shokuhō (織豊) のインストールとトラブルシューティング


概要

マウントアンドブレード2のMod Shokuhō (織豊) が最近公開された. このModの公開を機にModに手を出す人が多そうな気がするので, インストール・日本語表示・トラブルシューティングについて解説しておく.

まず, Shokuhō のバージョンは現時点で最新の v1.0.0.6 を想定している. 日本語パッチはMod本体のバージョンに強く依存しているので, 現在のバージョンが何であるかに注意してほしい. それから, 私の日本語ファイルは現時点では完成していない. 主にシステムメッセージや地名の翻訳が終わっていない. 詳細は配布ページに書いてある.


インストール手順

インストールの手順は, Steamワークショップからインストールする方法と, NexusModsからインストールする方法の2通りを紹介する. Shokuhōだけなら ModDB からもダウンロードできるが, 他の依存Modはダウンロードできないはずなので, 結局必要なものをすべて配布しているサイトからダウンロードしたほうが便利だ.


Steamワークショップからインストールする場合

全てSteamワークショップからインストールする場合は, あまり難しいことはない. Shokuhoと依存modのインストールボタンを片っ端からクリックするだけだからだ. 唯一の注意点は, ワークショップからインストールしたフォント変更modが正常に動作しないということだけだ.

注; 現時点では日本語表示用の修正パッチの公開許可がおりていないので, これだけワークショップではインストールできない.

ワークショップで配布したModはなぜかうまく動作しないものがあり, 残念ながら日本語Modもこの不具合に引っかかってしまった. よって, 日本語ファイルのみ外部からインストールすることになる. Modは以降で説明するNexusで配布しているようにしているが, どうしてもアカウント登録したくない人のために GitHubにもアップロードしておいた. 以下のURL のZIPファイルが日本語ファイルである.

Releases · Gedevan-Aleksizde/shokuhofix · GitHub



Nexusからインストールする場合

そして以降の説明は, Steamから購入し, なおかつNexus Mods た場合を想定している. 残念ながら, それ以外は持ってないので知らない. だが, 家庭用ゲーム機版以外はだいたい同じではないかと予想する. 覚えるべきは, 典型的なmodのインストール方法と, インストールしたmodに修正パッチを適用する場合である. Shokuhō に限らずほとんどのmodをこの方法でインストールできる.

Shokuhoの動作には, 依存する他の複数のmodのインストールも必要だが, ほぼすべてがそれぞれこの方法でインストールできる.

まずは MB2のインストールフォルダを見つける. Steam であれば, ライブラリのゲームの個別ページにある歯車アイコンの「管理」ボタンを押し, そこから「プロパティ」「インストール済みファイル」「参照」と辿っていくと, インストールフォルダを開ける. その中に Modulesフォルダがあり, modはModulesフォルダの中にさらにフォルダを分けて配置される. Shokuhoの場合は, そのままShokuhoという名前のフォルダに入っていることが多い. Nexusから手動ダウンロードした場合は, 圧縮ファイルを展開して, 出てきたフォルダをModulesフォルダに置くだけでよい. この方法で, 以下をインストールする.

Shokuhō本体が要求するのは, 最初の4つだけである. しかし, MB2の日本語ローカライゼーションは壊滅的なので, 以前私が作った, 文字化けが発生しないフォントに置き換え膨大な誤訳を修正する Correct Localization JP もインストールしてもらう. 題材が題材だけに, 特にフォント変更がなければ文字化けが大量発生して意味不明になることだろう. さもなくば「あし名よしひろ」とか「あそこれみつ」「がもう氏郷」とか、NPC一覧を選挙ポスターにするしかなくなり, 地名も同じような目に遭う.


パッチの適用方法

Shokuhōは ファイルサイズが巨大であるため, 更新の際にパッチファイルとして配布されることがある. まずファイルサイズの大きく, バージョンの少し古いものをインストールしてから, パッチファイルもダウンロードし, 既にインストールしてあるものに上書きする. 私はこのように他のModに上書きしてインストールする種類のファイルはよくパッチと呼ばれる.

Shokuhoを日本語で表示するためのModも, パッチ形式で適用する. より正確には, Shokuhōのテキストやローカライゼーション設定の誤りを修正するには, Shokuhoのファイルのいくつかを書き換える必要があったためである.

Shokuho - Text Correction And Overhaul And Japanese Translation at Mount & Blade II: Bannerlord Nexus - Mods and community

パッチは既存のModのフォルダに上書きするだけでインストールできるが, 上書きするModの想定するバージョンが違うと動作しないことが多い. 私が作るパッチは, 必ず対応バージョンを書いているので, ダウンロードページで最新の情報を確認して欲しい.

こちらも手動でダウンロードして展開するところは同じである. Shokuhōのフォルダと同じ名前のフォルダが出てきたら, それでModを上書きする.

一部は私の好みによる翻案であるが, 原文の書き間違えもかなり多いため, 英文もろとも修正している.

不要なバイナリファイルの削除


Shokuhoのインストールフォルダの bin/Win64_Shipping_Client/0harmony.dll を削除する. 0Harmony.dll というのは, おそらくHarmonyのバイナリファイルだろう. しかし, Shokuhōは Harmony のインストールを指定しているから, このファイルは不要なはずである. 一応質問したが答えてくれない. 用途不明のバイナリファイルをインストールするのは気味が悪いので消すことを推奨する.


(補足) Mod管理ツールを使う場合

Nexus ModsにはVortexという公式管理ツールが存在するが, 不具合が多く, 使ってるだけで状況を悪化させることのほうが多いので, はっきり言っておすすめしない. 少なくとも私ではVortexのバグが原因の問題を解決できないので, 手動でインストールするか, Mod Organizer 2 を使うかのどちらか1つをおすすめする.

MO2は手動でインストールするより安全にmodを扱えるので便利だが, 覚えることが少し多い. 知りたい場合は, Mod管理ツールをはじめインストール全般を詳細に説明したこの記事を読んで欲しい.

under-identified.hatenablog.com


ランチャーで有効にする

SteamワークショップかNexusのいずれかでインストールしたら, 次はランチャーのチェックボックスをクリックして有効にする必要がある. 日本語パッチはShokuhōに上書きして適用したのでカウントしないから, それ以外の7つのmodにチェックボックスを入れる必要がある. さらに, 並びも重要である. 以下のように, Text は Nativeの上, FontはShokuhoの後が望ましい.

Settlement Icon Resign は必須ではないが推奨する


最初の起動

最初に起動した際は, 「シェーダーのコンパイル」を選択することを強く推奨する. これをしておかないと頻繁に読み込みが発生してまともに遊べない可能性が高い. 最初に一度実行すれば, 以降はシェーダーキャッシュを削除するまでは再度コンパイルする必要がない.

注意書きも読んでおこう

シェーダーのコンパイルが完了すれば, 新規開始を押すとキャンペーンモードが開始する. カスタムバトルも対応している.


トラブルシューティング

MB2は本体もけっこう不安定であるので, その上さらにファイルサイズが巨大で, なおかつ過剰に入り組んだスクリプトを使用している Shokuhō では, かなりエラーが起こりやすいと予想される. v1.0.0.6 現在は, 翻訳文を追加しただけでクラッシュするようなことはなくなったが, 未だに不要なバイナリファイルを含めているなど, スクリプトはあまり丁寧に管理されていないようにみえる. そこで, 私が体験したことを主に, いくつかメモを残しておく.


シェーダーのコンパイルが終わらない

シェーダーのコンパイルがうまくいかない場合がある. 例えば, 何時間経っても処理が終わらないとか. PCの性能にもよるが, ゲーム用であれば数時間単位でかかるということは普通はないと思う. その場合, 一度シェーダーキャッシュを消してからコンパイルをやり直せばうまくいくかもしれない. このことは本体でも説明されるが, Shokuho のこの機能は(他の多くの機能が既存のmodのソースのコピペであることから)おそらくTORとだいたい同じ実装だろう. そこで, TORのトラブルシューティングに書いてある方法で, より徹底的にキャッシュを削除する方法も紹介しておく.

  1. MB2インストールフォルダの Shaders/CoreShader 内にあるファイルを削除する (Shokuhoでも紹介されている方法)
  2. MB2インストールフォルダの Shaders/D3D11/compressed_shaders_cache.sack を削除する
  3. エクスプローラーのサーチバーに %programdata% と入力して移動するフォルダ内の, Mount and Blade II Bannerlord フォルダにある Shaders を削除する

TORの場合はTORのモジュールフォルダにもキャッシュが作られるのでそれも消せと書いてあるが, Shokuhoにはないようだ.


日本語どころか文字が表示されない

説明をよく読んでください. おそらくあなたは私の日本語修正ModをSteamワークショップでインストールしているが, 注意書きを見落としている. MB2またはワークショップの不具合のため, Steamワークショップからインストールしたフォント変更modは正常に動作しないことがわかっている. 色々試してみたが私には解決できなかったし, サポートに伝えたが取り合ってもらえなかった. (この話の詳細は私の低評価レビューにも書いている)

https://steamcommunity.com/sharedfiles/filedetails/?id=3094687623

この場合の解決方法は, ワークショップからインストールしたものをゲーム本体のフォルダにコピーするか, ワークショップ以外からインストールすることである. NexusModsからインストールするのが便利だと思うが, どうしてもアカウント登録をしなくないのであればGitHubからインストールできる. 方法の詳細は以前書いた.

www.nexusmods.com


起動直後のロード画面中にクラッシュし, しかもエラーメッセージが出ないので原因がわからない

具体的な原因が表示されず, ただ「Bannerlord.exeは動作を停止しました」というポップアップだけが表示されて強制終了させられることがある. これはShokuhoに限らずMB2でmod全般を使用した場合に起こり得る. なぜこの不具合が起こったときにエラーメッセージを出してくれないのか理解できないが, 私の経験では, 多くの場合は, XMLファイルの設定の矛盾または構文エラーである. この「無言強制終了」が起こるのは, modに含まれているXMLが書き換えられたり他のModが上書きしたりすることで, 存在しないXMLを参照したり, 構文エラーが発生したり, 不要なXMLが含まれていたり(特にこれでクラッシュするのが本当に意味がわからない)していた場合である. modの更新や日本語パッチの上書き操作を間違えた時によく起こるので, 最近そのような操作をしたmodを見直すとよい. これが理由ならば, 原因となるmodを一旦フォルダごと削除してからインストールし直せば解決する.


言語変更しようとするとクラッシュする

v1.0,0.6 時点では「既知のローカライゼーション関連のバグはすべて修正した」というぞんざいなリリースノートが出ており, 以前のようなローカライゼーション由来のクラッシュは激減した. しかし未だに, ゲーム中に言語を変更しようとするとたいていクラッシュする. ButterLib のログを見ても, Shokuhō のスクリプトに問題があるように見える. 作者が修正するまでは, 言語設定を変える必要がある場合は迂回して行うべきだろう. つまり, 一旦ランチャーでShokuhō を無効にしてからMB2を起動して言語変更し, それから終了し, 再び Shokuhō を有効にしてから起動しなおせば, おそらく言語変更できない問題は回避できる.


兵士の抜擢ができないらしい

Distinguished Serivce という Modと同等の機能が含まれていると作者は主張しているが, 不具合でうまく動作しないという話をちらほら聞く. 私の作った改良版である Distinguished Service Redux を試しに併用してみると, NPC領主による兵士の抜擢は動作しているようである. 何人NPCが登場してもクラッシュしなかった. しかし, 自分が抜擢する場合はどうなるかまでは確認していない. Shokuho 側の Distinguished Service 相当の機能はどうやって設定を変えられるのかは提示されていない.