Overview
翻訳したい人などの為のゲーム内テキスト変更方法或いはUnityのAssetBundleの変更方法
はじめに
このゲームはUnityで作られていてゲーム内テキストもUnityのアセットとしてパックされているのでツールを使ってテキストファイルを抽出し、変更した後アセットファイルに埋め込み戻すという手順でテキストを変更する。
Unity Assets Bundle Extractorをインストールする
まずUnity Assets Bundle Extractor(以下UABE)をダウンロードする。
[link]
に行ってREADME.mdを見ると
You can find the main project page on [link].
などと書かれていると思う。
ここが実行ファイルをダウンロードできるサイトなのでそこで最新のファイルをダウンロードする。
ダウンロードしたAssetsBundleExtractor_2.2stabled_64bit.zipといったファイルを解凍すれば実行準備完了である。
テキストファイルを抽出する
FateSeekerFateSeeker_DataStreamingAssetsStandaloneWindows64textfiles
というファイルがゲーム内テキストファイルが含まれるAssetBundleファイルなので
コピーしてtextfiles.bakとかの名前に変更しバックアップを作成しておくといい。
なおムービーの字幕は別になっていて
FateSeekerFateSeeker_DataStreamingAssetsStandaloneWindows64movie_other
に含まれている。
AssetBundleExtractor.exeを実行してUABEを起動するとメイン画面が表示される。
そしてUABEのメニューのFile->openを選択して「textfiles」を開く。
すると
の様にunpackの確認ダイアログが表示されるので「はい」を押した後適当なファイル名で保存する。
Infoを押すとAssetBundleに含まれるアセットの一覧が表示される。
ここでName列から「Localization」という行を探し出してクリックで選択する。
これが目的のゲーム内テキストファイルである。
ここで画面右の「Plugins」を押すと選択しているアセットに対して実行できるプラグイン一覧が表示される。
「Export to .txt」を選択して「OK」を押して適当な名前で保存する。
テキストを変更する
適当なテキストエディタで先ほど保存したファイルを開くと中身は以下のようなcsvファイルだとわかる。
どうやら1列目がテキストのキー、2列目が繁体中文テキスト、3列目が簡体中文テキストであるらしい。
試しにタイトルメニューの「初入武林(ゲームスタート)」を変更してみよう。
これが修正前である。
テキストエディタで「初入武林」を検索して簡体字テキスト列を以下のように変更し上書き保存する。
テキストファイルを埋め込み戻す
まずUABEのアセット一覧の「Localization」列を選択した後に「Plugins」を押してプラグイン一覧を表示する。
次に「Import from .txt」を選択して「OK」を押し先ほど修正したcsvファイルを選択すると以下のように一覧のModifiedに「*」が表示される。
この状態でアセット一覧の「OK」を押すと保存確認ダイアログが表示されるので「はい」を押す。
するとアセット一覧が閉じられるのでUABEのメニューのFile->saveを選択して適当なファイル名で保存する。
ただしこの時の名前は「textfiles」や先ほどunpackした時に入力した名前以外にしないとエラーになる事には注意してほしい。
もしかすると最初にunpackしたのにpackしなくてもいいのか?という疑問を持ったかもしれないが、このゲームはAssetBundleをpackしていなくても読み込んでくれるのでそのままでいい。
なお以上でUABEを使った作業は終了なので閉じても構わない。
変更したAssetBundleファイルを
FateSeekerFateSeeker_DataStreamingAssetsStandaloneWindows64
に戻し「textfiles」にリネームすれば全ての作業は終了である。
ゲームを起動すると以下のようにタイトルメニューの「初入武林」が日本語に変更されているはずだ。
変更されていない場合はゲームの設定で言語を簡体中文にしてみよう。
おわりに
このゲームはUABEを使えば割合簡単にゲーム内テキストを変更できることがわかってもらえたと思う。
この方法は他のUnity製ゲームにも応用できるはずだ。
誰かこのゲームの日本語訳をやってくれないかな…