PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ

2021年02月25日
0

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモです。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順

Sunless Sea と DLC Zubmariner の日本語化ファイルは こちらのアップローダ で公開されています。

Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam 版 Sunless Sea 日本語化可能
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam 版 Sunless Sea DLC Zubmariner 日本語化可能

日本語化の動作確認するためにインストールした Steam 版 SUNLESS SEASteam 版 DLC Zubmariner です。

インストール後、日本語化ファイルを配置するためのフォルダを生成するため、一度ゲームを起動させておきます。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam ライブラリで Sunless Sea プロパティ画面を開き、ローカルファイルタブで 「ローカルファイルを閲覧...」 をクリックしてインストールフォルダを開く

Steam 版 SUNLESS SEA でインストール先フォルダを開きたい場合、Steam ライブラリからプロパティ画面を開き、ローカルファイルにある 「参照...」 ボタンをクリックすることでインストール先フォルダにすぐにアクセスできます。

または、Steam ライブラリでタイトルを右クリック → 管理 → ローカルファイルを閲覧、をクリックすることでインストール先フォルダを開くこともできます。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip をダウンロードして展開・解凍、Steam_ssjptr_1224 フォルダにある japanese_translation フォルダをコピー

アップローダから Steam_ssjptr_1224.zip をダウンロードして展開・解凍します。

Steam_ssjptr_1224 フォルダにある japanese_translation フォルダをコピーします。

japanese_translation フォルダには日本語に翻訳された json ファイルが含まれています。テキストエディタで編集可能。

このファイルは GOG 版の日本語化ファイルGOG_ssjptr_1224.zip に含まれているものとまったく同じものです。

そのため、GOG 版の japanese_translation フォルダ を流用しても日本語化できるようになっています。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip をダウンロードして展開・解凍、コピーした japanese_translation フォルダを %USERPROFILE%/AppData/LocalLow/Failbetter Games/Sunless Sea/addon フォルダに配置

コピーした japanese_translation フォルダを %USERPROFILE%/AppData/LocalLow/Failbetter Games/Sunless Sea/addon フォルダに配置します。(参考:%USERPROFILE% を開く方法

配置先の addon フォルダがない・見つからない場合、ゲームを起動してから再度アクセスしてみてください。

japanese_translation フォルダの配置先場所は GOG 版と共通 です。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip をダウンロードして展開・解凍、Steam用dll フォルダにある Sunless.Game.dll ファイルをコピー

次に Steam_ssjptr_1224.zip に含まれている、Steam用dll フォルダにある Sunless.Game.dll ファイルをコピーします。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip をダウンロードして展開・解凍、コピーした Sunless.Game.dll ファイルをゲームインストール先 Sunless Sea_Data\Managed フォルダにある同名ファイルと差し替え

Steam 版 のインストール先 Sunless Sea_Data\Managed フォルダに Sunless.Game.dll ファイルがあるので、先ほどコピーした Steam用dll フォルダの Sunless.Game.dll ファイルに差し替えます。

ゲームを起動して日本語化されているかどうか確認します。

日本語化ファイル Sunless.Game.dll に差し替えた場合、元の dll ファイルと比べてゲーム起動後のタイトル画面に到達するまで、時間がかかるようになります。

以下、クリックすると日本語化した Steam 版 SUNLESS SEA のスクリーンショットが開きます。

ゲーム内設定 Options → Video Settings にある UI scale と Font scale はともに最小値(デフォルト)1x 時のスクリーンショットです。両設定をバランスよく上げることで文字が見やすい大きさに調節することができます。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Steam_ssjptr_1224.zip を使って日本語化した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x

GOG 版 Sunless Sea + DLC Zubmariner 日本語化方法

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、GOG 版 Sunless Sea + DLC Zubmariner 日本語化方法、GOG 版 Sunless Sea + DLC Zubmariner 日本語化可能

日本語化の動作確認するためにインストールした GOG 版 Sunless SeaGOG 版 DLC Zubmariner です。

インストール後、日本語化ファイルを配置するためのフォルダを生成するため、一度ゲームを起動させておきます。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、GOG 版 Sunless Sea + DLC Zubmariner 日本語化方法、GOG_ssjptr_1224.zip をダウンロードして展開・解凍、GOG_ssjptr_1224 フォルダにある japanese_translation フォルダをコピー

アップローダから GOG_ssjptr_1224.zip をダウンロードして展開・解凍します。

GOG_ssjptr_1224 フォルダにある japanese_translation フォルダをコピーします。

japanese_translation フォルダには日本語に翻訳された json ファイルが含まれています。テキストエディタで編集可能。

このファイルは Steam 版の日本語化ファイルSteam_ssjptr_1224.zip に含まれているものとまったく同じものです。

そのため、Steam 版の japanese_translation フォルダ を流用しても日本語化できるようになっています。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、GOG 版 Sunless Sea + DLC Zubmariner 日本語化方法、GOG_ssjptr_1224.zip をダウンロードして展開・解凍、コピーした japanese_translation フォルダを %USERPROFILE%/AppData/LocalLow/Failbetter Games/Sunless Sea/addon フォルダに配置

コピーした japanese_translation フォルダを %USERPROFILE%/AppData/LocalLow/Failbetter Games/Sunless Sea/addon フォルダに配置します。(参考:%USERPROFILE% を開く方法

配置先の addon フォルダがない・見つからない場合、ゲームを起動してから再度アクセスしてみてください。

japanese_translation フォルダの配置先場所は Steam 版と共通 です。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、GOG 版 Sunless Sea + DLC Zubmariner 日本語化方法、GOG_ssjptr_1224.zip をダウンロードして展開・解凍、GOG用dll フォルダにある Sunless.Game.dll ファイルをコピー

次に GOG_ssjptr_1224.zip に含まれている、GOG用dll フォルダにある Sunless.Game.dll ファイルをコピーします。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、GOG 版 Sunless Sea + DLC Zubmariner 日本語化方法、GOG_ssjptr_1224.zip をダウンロードして展開・解凍、コピーした Sunless.Game.dll ファイルをゲームインストール先 Sunless Sea_Data\Managed フォルダにある同名ファイルと差し替え

GOG 版 Sunless Sea のインストール先 Sunless Sea_Data\Managed フォルダに Sunless.Game.dll ファイルがあるので、先ほどコピーした GOG用dll フォルダの Sunless.Game.dll ファイルに差し替えます。

ゲームを起動して日本語化されているかどうか確認します。

日本語化ファイル Sunless.Game.dll に差し替えた場合、元の dll ファイルと比べてゲーム起動後のタイトル画面に到達するまで、時間がかかるようになります。

Epic 版 Sunless Sea + DLC Zubmariner 日本語化方法

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Epic 版 Sunless Sea 日本語化可能
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語化手順、Steam 版 Sunless Sea + DLC Zubmariner 日本語化方法、Epic 版 Sunless Sea 日本語化可能

日本語化の動作確認するためにインストールした Epic 版 Sunless SeaEpic 版 DLC Zubmariner です。

GOG 版の日本語化ファイル GOG_ssjptr_1224.zip を使うことで日本語化可能です。

インストール方法は GOG 版 Sunless Sea と同じです。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ

PC ゲーム Sunless Sea および Sunless Sea の日本語化ファイル を解析した時のメモです。

日本語化の活動内容については、5ch に当時のスレ住人による解析記録や日本語化情報などが残っています。

Sunless Sea ではゲームエンジンに Unity を使用しているため、海外で公開されているツールを使うことで配信プラットフォーム問わずこのゲームで使われているテキストやフォントを、かんたんにエクスポート・インポートすることが可能となっています。

今回の調査では Sunless Sea の日本語化ファイル に含まれている日本語化用 dll ファイルについて、どのようなやり方で日本語化したのか、記録を見つけることはできませんでした。

そこでこちらで試行錯誤してみた結果、dll ファイルを日本語化するにあたっておそらく使われたと思われるツール及びその方法を見つけることができたので、その内容を公開します。

Sunless Sea + DLC Zubmariner - UnityEX を使った翻訳ファイルエクスポート・インポート

UnityEX を使うことでゲーム内に表示される一部のテキストファイルをエクスポート・インポートができます。UnityEX を使い方については下部にある関連記事の過去記事より確認してください。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使った翻訳ファイルエクスポート・インポート、UnityEX を使ってゲームインストール先 Sunless Sea_Data フォルダにある resources.assets ファイルからテキストファイルをエクスポート、Unity_Assets_Files\resources フォルダにエクスポートされた ~.txt ファイル、日本語化ファイルの同名 json ファイルの拡張子を txt に変換してインポートしてもゲームに反映されない模様(構成内容が異なる)

上の画像は UnityEX を使ってゲームインストール先 Sunless Sea_Data フォルダにある resources.assets ファイルから、同フォルダ内の Unity_Assets_Files\resources フォルダにエクスポートされたテキストファイルです。

すべてではないですが、このうちいくつかのテキストファイルがゲーム内で英語を表示するテキスト文字が含まれています。

日本語化ファイル に含まれる json ファイルはこちらのテキストファイルから流用したものと思われます。

試しに 日本語化ファイル に含まれる json ファイルを txt に拡張子を変換して UnityEX でインポートしてみましたが、日本語で表示することはできませんでした。

WinMergeUnityEX でエクスポートしたテキストファイルと、日本語化ファイル の json ファイルを比較してみたところ、構成内容がまったく異なっておりました。(events.json、events.txt はそのままの形式で比較すると非常に時間がかかるため注意)

おそらくファイル内容の差異が原因で json → txt に変更したファイルを UnityEX でインポートしただけでは、日本語化はできないようです。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使った翻訳ファイルエクスポート・インポート、UnityEX を使って Unity_Assets_Files\resources フォルダにエクスポートした events.txt ファイルに日本語文字を追加、インポート後ゲーム内で追加文字が表示されていることを確認

上の画像は UnityEX でエクスポートしたテキストファイル(events.txt)に日本語文字を追加し、UnityEX でインポートした後のスクリーンショットです。

ゲーム内で追加文字(ノート内に表示されている最初の文面 Three decades ago, ~ の先頭にひらがなの 「あ」 を追加)が表示されていることが確認できます。

このように UnityEX でエクスポートしたテキストファイルの英文表示箇所を日本語に書き換えてインポートすることで、日本語が表示できるようにもなっています。

ただ、エクスポートしたテキストファイルや日本語化ファイルの json ファイルも含めて、一部のファイルは改行なし 1行で記述されているため、テキストエディタで編集したいときは非常に不便です。

JSON Online Editor のような JSON エディタサービスなどを使って整形してから編集したほうがよいでしょう。(events.json、events.txt のように 20MB もあるファイルをオンラインサービスで整形すると非常に時間がかかるため注意)

Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート

UnityEX を使うことで別のフォントに変更することができます。

2020年12月に こちらの記事 でフォントの変更方法が公開されていましたが、どういう理由かわかりませんが 2021年2月時点こちらで試した限りでは少しやり方が変わっていました。

以下、こちらで確認できた UnityEX を使ったフォント変更方法です。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3.7 でゲームインストール先 Sunless Sea_Data フォルダにある resources.assets ファイルからType 128(Font)フォントファイル(~.font_raw)を右クリックから Export with convert でエクスポート

ゲームインストール先 Sunless Sea_Data フォルダにある resources.assets ファイルをバックアップしてから UnityEX で開きます。

Type 列をクリックしてソートし Type 128(Font)フォントファイル(~.font_raw) を選択、右クリックから Export with convert でエクスポートします。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3.7 を使って Unity_Assets_Files\resources\Fonts フォルダにエクスポートされた ~.ttf(DroidSerif~、TrajanPro~)ファイル

UnityEX を使って Unity_Assets_Files\resources\Fonts フォルダにエクスポートされた ~.ttf(DroidSerif~、TrajanPro~)フォントファイルです。Steam 版 では一部 ~.otf 形式でエクスポートされます

このフォルダに使いたいフォントファイルに差し替えて、ファイル名をエクスポートしたファイル名に変更します。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、Unity_Assets_Files\resources フォルダにある ttf フォントファイルを、リネーム(名前変更)した UD デジタル教科書体 NK-B(UDDigiKyokashoNK-B-03.ttf)フォントファイルにすべて差し替え

Unity_Assets_Files\resources フォルダにある ttf フォントファイルを、リネーム(名前変更)した UD デジタル教科書体 NK-B(UDDigiKyokashoNK-B-03.ttf)フォントファイルにすべて差し替えたところです。(全部のフォントを変更する必要はありませんが、ここでは変更したフォントの動作確認テストのため、すべて差し替え)

ちなみに UD デジタル教科書体 NK-B(UDDigiKyokashoNK-B-03.ttf)フォントファイルは Windows 10 Fall Creators Update(バージョン 1709)以降の C:\Windows\Fonts フォルダにある UDDigiKyokashoN-B.ttc ファイルを、ttc → ttf に変換するサイト を使って入手したものです。

Steam 版 では一部のフォントファイルが ~.otf 形式となっていますが、ファイル名が同じであれば ttf 形式のフォントファイルでも一応問題ないようです。

ただ動作が確実に保証されているわけではないので事前に使いたい otf フォントを用意しておくか、ttf → otf 変換サイト を使うなどして otf ファイルに差し替えたほうがいいかもしれません。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、Unity_Assets_Files\resources フォルダにある ttf フォントファイルを、リネーム(名前変更)した UD デジタル教科書体 NK-B(UDDigiKyokashoNK-B-03.ttf)フォントファイルに差し替え後、UnityEX v1.9.3.7 でインポート(Import files ボタンをクリック)

Unity_Assets_Files\resources フォルダに変更したいフォントファイルに差し替えた後、UnityEX で Import files ボタンをクリックしてインポートします。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、Unity_Assets_Files\resources フォルダにある ttf フォントファイルとリネーム(名前変更)した UD デジタル教科書体 NK-B(UDDigiKyokashoNK-B-03.ttf)フォントファイルに差し替え後、UnityEX v1.9.3.7 でインポート(Import files ボタンをクリック)、フォントファイル差し替え完了

UnityEX でインポートしたフォントファイルの Size が反映されたら、フォントファイルの差し替えは完了です。

ゲームを起動してフォントが変更されているかどうか確認します。

以下、クリックすると UD デジタル教科書体 NK-B フォントに変更したスクリーンショットが開きます。

ゲーム内設定 Options → Video Settings にある UI scale と Font scale はともに最小値(デフォルト)1x 時のスクリーンショットです。両設定をバランスよく上げることで文字が見やすい大きさに調節することができます。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - UnityEX を使ったフォントファイルエクスポート・インポート、UnityEX v1.9.3. を使ってUD デジタル教科書体 NK-Bフォントファイルに変更した Steam 版 Sunless Sea + DLC Zubmariner スクリーンショット、Options - Video Settings - UI scale 1x、Font scale 1x

Sunless Sea + DLC Zubmariner - dnSpy を使った Sunless.Game.dll ファイル英語・日本語編集方法

Sunless Sea 日本語化ファイル に含まれる Sunless.Game.dll ファイルを導入することで、言語ファイルの json ファイルだけでは日本語化できなかった部分が日本語で表示できるようになります。

Sunless.Game.dll ファイルを何らかの方法で編集して日本語化しているのはすぐ予想できましたが、バイナリエディタで覗いてみてもそれらしい箇所はわからず、仮にその場所がわかってもバイナリエディタ上で文字を編集するのはできれば避けたいところ。

ふと、デコンパイラツールで dll ファイルを開けば編集できるのではないかと思い試してみたところ、文字の編集ができるようになりゲームで編集した文字を表示することができました。以下、そのやり方を紹介します。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - dnSpy を使った Sunless.Game.dll ファイル英語・日本語編集方法、dnSpy で Sunless.Game.dll ファイルを開き文字を書き換える方法、Sunless.Game.UI.Menus → MainMenu → ExitGame を開き、右クリックで Edit Method C(#)... をクリック

dnSpySunless Sea 日本語化ファイルSunless.Game.dll ファイルを開きます。

ここでは例としてゲーム終了時の確認メッセージを編集してみます。Sunless.Game.UI.Menus → MainMenu → ExitGame までを開き、右クリックで Edit Method C(#)... をクリックします。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - dnSpy を使った Sunless.Game.dll ファイル英語・日本語編集方法、dnSpy で Sunless.Game.dll ファイルを開き文字を書き換える方法、Sunless.Game.UI.Menus → MainMenu → ExitGame を開き、右クリックで Edit Method C(#)... をクリック、Edit Code 画面で文字を編集して Compile ボタンをクリック

Edit Code 画面が表示されるので、ここで追加・変更したい文字に編集したら Compile ボタンをクリックして画面を閉じます。

ここでは適当に先頭文字にひらがなの 「あ」 を追加します。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - dnSpy を使った Sunless.Game.dll ファイル英語・日本語編集方法、dnSpy で Sunless.Game.dll ファイルを開き文字を書き換える方法、Sunless.Game.UI.Menus → MainMenu → ExitGame を開き、右クリックで Edit Method C(#)... をクリック、Edit Code 画面で文字を追加して Compile ボタンをクリック、dnSpy メニュー File → Save Module をクリック、Save Module 画面で OK ボタンをクリック

元の画面に戻るので、メニューから File → Save Module をクリックします。Save Module 画面が表示されるので OK ボタンをクリックします。

これで Sunless.Game.dll ファイルの文字編集ができたので、ゲームを起動して編集した文字が表示されるかどうか確認します。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - dnSpy を使った Sunless.Game.dll ファイル英語・日本語編集方法、dnSpy で書き換えた Sunless.Game.dll ファイルでゲームを起動、文字表示を確認したスクリーンショット

ゲーム中に編集した文字が表示されたら成功です。

今回は dnSpy を使って文字を編集することに成功しましたが、おそらくほかのデコンパイラツールでも同様なことが可能だと思われます。

Sunless Sea + DLC Zubmariner - dnSpy と grep を使った Sunless.Game.dll ファイル日本語データ検索方法

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - dnSpy と grep を使った Sunless.Game.dll ファイル日本語データ検索方法、dnSpy にある Search 欄にある Search For を Number/String に変更して、検索したい文字列を入力

dnSpy では Search 画面(画像右下)で探したい文字を入力することで検索できますが、Search For 欄にある項目を適切に設定しないと検索に引っ掛かりません。

デフォルトでは 「All of the Above」 に設定されていますが、今回のような翻訳文字列(ゲーム中に表示される文字)を検索する場合は 「Number/String」 に設定してから検索することで、目的の文字を見つけることができます。

この方法では特定の文字を検索できますが、すでに日本語化されている Sunless.Game.dll ファイルから日本語訳のみを一気に検索したい場合には向いていません。

そこで、以下の検索方法を思いつきました。内容はコードファイルに出力(エクスポート)して grep の正規表現で検索するというものです。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - dnSpy と grep を使った Sunless.Game.dll ファイル日本語データ検索方法、dnSpy で Sunless.Game.dll ファイルを開いた状態にする
PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - dnSpy と grep を使った Sunless.Game.dll ファイル日本語データ検索方法、dnSpy で Sunless.Game.dll ファイルを開き、メニューから File → Export to Project をクリック

dnSpy で Sunless.Game.dll ファイルを開いた状態から、メニューから File → Export to Project をクリックします。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - dnSpy と grep を使った Sunless.Game.dll ファイル日本語データ検索方法、dnSpy で Sunless.Game.dll ファイルを開き、メニューから File → Export to Project をクリック、Export to Project 画面で Folder(保存先フォルダ)を設定して Export ボタンをクリック

Export to Project 画面が表示されるので Folder(保存先フォルダ)を設定して Export ボタンをクリックします。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - dnSpy と grep を使った Sunless.Game.dll ファイル日本語データ検索方法、grep で日本語(全角文字)を検索、ここではテキストエディタ秀丸エディタの grep 機能を使用、検索条件は dnSpy の Export to Project で保存したフォルダを指定、正規表現にチェックマーク、検索ファイルは cs ファイルを指定、検索する文字列を [^ -~。-゚\t\n] にして検索開始

grep を使って正規表現で検索します。ここでは 秀丸エディタ を例に説明します。

dnSpy の Export to Project で保存したフォルダを指定、正規表現にチェックマーク、検索ファイルは cs ファイルを指定、検索する文字列を [^ -~。-゚\t\n] にして検索を開始します。

正規表現は ここの記事 を参考にして、さらに改行を除外するため \n を付加した形になっています。

PC ゲーム Sunless Sea + DLC Zubmariner 日本語化と日本語化ファイル解析メモ、PC ゲーム Sunless Sea + DLC Zubmariner 日本語ファイル解析メモ、Sunless Sea + DLC Zubmariner - dnSpy と grep を使った Sunless.Game.dll ファイル日本語データ検索方法、テキストエディタ秀丸エディタの grep 機能で dnSpy で保存した cs ファイルから全角文字列を検索した結果

目的の日本語文字列が検索できたら成功です。

awgs
Posted by awgs