洋ゲーMOD・日本語化に関する自分用メモ
翻訳させていただいております。文字列置換対象の前後に半角スペースを開けるようにとありますが、必要ないのではないでしょうか。(原文は英語ですので単語と単語の間にスペースが必要ですが)それとも見た目的な問題上スペースを開けているということでしょうか。
Payday1の頃に決めたルールなので、すでによく覚えていませんが、行末処理の関係だったような気がします。PAYDAYの行末処理は、単語単位での行末調整がベースですが、日本語のように単語間にスペースが含まれない言語では、最大文字数で強制的に改行されます。で、置換文字列の前後にスペースを配置したほうがうまく表示されたような気がしますが、試してみて問題なければ、なしでも構いません。
了解です。ありがとうございます。
すいませんが質問いいでしょうか?5)日本語化アーカイブの作成 repack_all.batをダブルクリックします。エラーにならずすべての作成が完了するとありますがエラーにならないまで実行すればいいのでしょうか?
repack_all.bat実行までの手順が正しければ、repack_all.batの実行ではエラーはでないはずですが、そこでエラーが出るということでしょうか?
返信ありがとうございます、はい、そこでエラーがでます。内容としてはBundleUnpackerは動作を停止しましたです。自分も間違えがないか再度説明書を読んでみます。
こんにちは。PAYDAY2とは関係のない話題で申し訳ないのですが、お聞きしたいことがあります。現在Outlastの日本語化を進めておりまして、翻訳は終わったのですが、肝心の日本語表示ができておりません。「assets.SwfMovie」というファイルを日本語化すればいいというところまではわかりましたが、SwfMovieの編集ができず難航しております。UE製なのでScaleformで作成されているのではないかと思うのですが、gfxともswfとも違うようです。XCOM Enemy UnkownやDishonoredの日本語化フォントにもSwfMovieのファイルが使用されておりました。どういったファイルなのかご存じありませんか?
Outlastは持ってないのでわかりませんが、UEではUI周りはgfxを利用するのがほぼデファクトなので、gfxのファイルだと思います。gfxと言ってもflashとの違いはヘッダのマジックのみなので、中身はflashです。gfxでは、フォントはflashの埋め込みフォントの仕組みをそのまま利用しています。UE的には、利用できるフォントはgfx以外にも元々持っているビットマップフォントも使えるため中には併用しているゲームもある(描画負荷がビットマップの方が圧倒的に低いため)ので、gfxのフォントだけ作成しても必ずしもすべてのテキストが日本語表示できるわけではありません。あと最近のゲームはUDKベースであまりカスタマイズしているゲームはないですが、swfMovieとかでも独自のヘッダが付加されているものもありますので、注意が必要な場合もあります。gfxフォントの変更は比較的簡単ですが、ビットマップは結構手間がかかります。
お返事ありがとうございます。バイナリエディタで見たところ、確かにgfxファイルのようです。↓が件のファイルでして、中文パッチから取り出したファイルも入っています。http://www1.axfc.net/uploader/so/3024366.zipどちらもGFXの前に文字列がありますが、これが独自のヘッダなのでしょうか。これのせいか単純にgfxやswfとして扱えないようです。両方とも後半のコマンドは同じでしたので、フォントデータを変更さえできれば行ける気がするのですが…。
持っていないゲームなのでダウンロードはしていませんが、最近はUEベースのゲームはほとんどチェックしていないので、以前試したいくつかのゲームだとswfMovieは確か前後にUEのヘッダ・フッタがついていました。中身はIDとサイズだったはずなので、ヘッダ・フッタ自体は複雑なフォーマットではないんじゃないかと思いますが、実際のデータを見ないと正確なところは言えません。ただ、UEゲームの場合、個々の単体ファイルよりもrepackができるかどうかが問題です。まずは、オリジナルのupkをunpackしたものをそのままrepackして、ゲームが動くことが確認できないと、swfMovieを作れたとしてもゲームへの適用は難しいと思います。私の知る限り、現状公開されているupkのrepackerはないですし、以前公開されていたものを使う場合は、Outlastのupkに対応していたらラッキーという感じです。ただ、開発は小さいスタジオのようですし、UDKそのままかもしれません。
お返事ありがとうございます。確かに短いヘッダがついておりました。手持ちのunpacker/repackerが対応していましたが、1つのファイルだけ正常なunpackができなかったので、完全にそのままというわけではないかもしれません。そうこうしている内に日本語化されており、図らずも目的を達成してしまいました。ただ今後のUEゲームにも使えそうですし、jpmodさんのご意見を参考にしながらもっと解析してみたいと思います。何度もありがとうございました。
3)翻訳作業所のデータ取得 jptext_download.batをダブルクリップして実行します。ここで何度実行してもファイルを書き込めませんでしたと表示されます。解決策があれば返信お願いします。
ダウンロードしようとしているcsv等のファイルを別のエディタ等で開いているとかではないでしょうか。
ありがとうございます!解決しました!
2)日本語テキストのパック pack_jptext.batをダブルクリックして実行します。の段階でこのエラーが出てとまってしまいます。何度も質問すいません。---------------------------------------------------------日本語テキストをパックします。---------------------------------------------------------0ec4fd9b9ea6694b.0.2788420249e07551 をパック150f1756ec9d6a22.0.2788420249e07551 をパック1d74c16a73c7bb44.0.2788420249e07551 をパック54538d88a23809c9.0.2788420249e07551 をパック68b9421389c7c84d.0.2788420249e07551 をパック8ce3d42e5eaa0c49.0.2788420249e07551 をパック98b4e510e6288993.0.2788420249e07551 をパック98e3b02f4fa7bd9c.0.2788420249e07551 をパックb0a292ebcebcd6f0.0.2788420249e07551 をパックe662a7e89423d28c.0.2788420249e07551 をパックfc444e0fbb60e23c.0.2788420249e07551 をパックハンドルされていない例外: System.IndexOutOfRangeException: インデックスが配列の境界外です。 場所 System.String.get_Chars(Int32 index) 場所 Jpmod.Lib.IO.CsvFileReader.read() 場所 Jpmod.Lib.IO.CsvFileReader.Load() 場所 Payday.Program.Main(String[] args)
もう一度、csvのダウンロードからやり直してもだめでしょうか。9/16は、最新のUPDATEへの更新作業をやっていたので、CSVの整合性が崩れてたときがあるかもしれません。
jptext_download.batからやり直したのですがやはり同じエラーが出てしまいます・・・
このコメントは投稿者によって削除されました。
テキスト変換ツールにバグがありました。ver.0.2を公開したのでそちらを使ってみてください。
翻訳させていただいております。
返信削除文字列置換対象の前後に半角スペースを開けるようにとありますが、必要ないのではないでしょうか。(原文は英語ですので単語と単語の間にスペースが必要ですが)
それとも見た目的な問題上スペースを開けているということでしょうか。
Payday1の頃に決めたルールなので、すでによく覚えていませんが、行末処理の関係だったような気がします。PAYDAYの行末処理は、単語単位での行末調整がベースですが、日本語のように単語間にスペースが含まれない言語では、最大文字数で強制的に改行されます。で、置換文字列の前後にスペースを配置したほうがうまく表示されたような気がしますが、試してみて問題なければ、なしでも構いません。
削除了解です。ありがとうございます。
削除すいませんが質問いいでしょうか?
返信削除5)日本語化アーカイブの作成
repack_all.batをダブルクリックします。エラーにならずすべての作成が完了すると
ありますがエラーにならないまで実行すればいいのでしょうか?
repack_all.bat実行までの手順が正しければ、repack_all.batの実行ではエラーはでないはずですが、そこでエラーが出るということでしょうか?
削除返信ありがとうございます、
削除はい、そこでエラーがでます。
内容としては
BundleUnpackerは動作を停止しました
です。
自分も間違えがないか再度説明書を読んでみます。
こんにちは。
返信削除PAYDAY2とは関係のない話題で申し訳ないのですが、お聞きしたいことがあります。
現在Outlastの日本語化を進めておりまして、翻訳は終わったのですが、肝心の日本語表示ができておりません。
「assets.SwfMovie」というファイルを日本語化すればいいというところまではわかりましたが、SwfMovieの編集ができず難航しております。
UE製なのでScaleformで作成されているのではないかと思うのですが、gfxともswfとも違うようです。
XCOM Enemy UnkownやDishonoredの日本語化フォントにもSwfMovieのファイルが使用されておりました。
どういったファイルなのかご存じありませんか?
Outlastは持ってないのでわかりませんが、UEではUI周りはgfxを利用するのがほぼデファクトなので、gfxのファイルだと思います。gfxと言ってもflashとの違いはヘッダのマジックのみなので、中身はflashです。gfxでは、フォントはflashの埋め込みフォントの仕組みをそのまま利用しています。
削除UE的には、利用できるフォントはgfx以外にも元々持っているビットマップフォントも使えるため中には併用しているゲームもある(描画負荷がビットマップの方が圧倒的に低いため)ので、gfxのフォントだけ作成しても必ずしもすべてのテキストが日本語表示できるわけではありません。
あと最近のゲームはUDKベースであまりカスタマイズしているゲームはないですが、swfMovieとかでも独自のヘッダが付加されているものもありますので、注意が必要な場合もあります。
gfxフォントの変更は比較的簡単ですが、ビットマップは結構手間がかかります。
お返事ありがとうございます。
削除バイナリエディタで見たところ、確かにgfxファイルのようです。
↓が件のファイルでして、中文パッチから取り出したファイルも入っています。
http://www1.axfc.net/uploader/so/3024366.zip
どちらもGFXの前に文字列がありますが、これが独自のヘッダなのでしょうか。
これのせいか単純にgfxやswfとして扱えないようです。
両方とも後半のコマンドは同じでしたので、フォントデータを変更さえできれば行ける気がするのですが…。
持っていないゲームなのでダウンロードはしていませんが、最近はUEベースのゲームはほとんどチェックしていないので、以前試したいくつかのゲームだとswfMovieは確か前後にUEのヘッダ・フッタがついていました。中身はIDとサイズだったはずなので、ヘッダ・フッタ自体は複雑なフォーマットではないんじゃないかと思いますが、実際のデータを見ないと正確なところは言えません。
削除ただ、UEゲームの場合、個々の単体ファイルよりもrepackができるかどうかが問題です。まずは、オリジナルのupkをunpackしたものをそのままrepackして、ゲームが動くことが確認できないと、swfMovieを作れたとしてもゲームへの適用は難しいと思います。
私の知る限り、現状公開されているupkのrepackerはないですし、以前公開されていたものを使う場合は、Outlastのupkに対応していたらラッキーという感じです。ただ、開発は小さいスタジオのようですし、UDKそのままかもしれません。
お返事ありがとうございます。
返信削除確かに短いヘッダがついておりました。
手持ちのunpacker/repackerが対応していましたが、1つのファイルだけ正常なunpackができなかったので、完全にそのままというわけではないかもしれません。
そうこうしている内に日本語化されており、図らずも目的を達成してしまいました。
ただ今後のUEゲームにも使えそうですし、jpmodさんのご意見を参考にしながらもっと解析してみたいと思います。
何度もありがとうございました。
3)翻訳作業所のデータ取得
返信削除jptext_download.batをダブルクリップして実行します。
ここで何度実行してもファイルを書き込めませんでしたと表示されます。解決策があれば返信お願いします。
ダウンロードしようとしているcsv等のファイルを別のエディタ等で開いているとかではないでしょうか。
削除ありがとうございます!解決しました!
削除2)日本語テキストのパック
返信削除pack_jptext.batをダブルクリックして実行します。の段階でこのエラーが出てとまってしまいます。何度も質問すいません。
---------------------------------------------------------
日本語テキストをパックします。
---------------------------------------------------------
0ec4fd9b9ea6694b.0.2788420249e07551 をパック
150f1756ec9d6a22.0.2788420249e07551 をパック
1d74c16a73c7bb44.0.2788420249e07551 をパック
54538d88a23809c9.0.2788420249e07551 をパック
68b9421389c7c84d.0.2788420249e07551 をパック
8ce3d42e5eaa0c49.0.2788420249e07551 をパック
98b4e510e6288993.0.2788420249e07551 をパック
98e3b02f4fa7bd9c.0.2788420249e07551 をパック
b0a292ebcebcd6f0.0.2788420249e07551 をパック
e662a7e89423d28c.0.2788420249e07551 をパック
fc444e0fbb60e23c.0.2788420249e07551 をパック
ハンドルされていない例外: System.IndexOutOfRangeException: インデックスが配列の
境界外です。
場所 System.String.get_Chars(Int32 index)
場所 Jpmod.Lib.IO.CsvFileReader.read()
場所 Jpmod.Lib.IO.CsvFileReader.Load()
場所 Payday.Program.Main(String[] args)
もう一度、csvのダウンロードからやり直してもだめでしょうか。9/16は、最新のUPDATEへの更新作業をやっていたので、CSVの整合性が崩れてたときがあるかもしれません。
返信削除jptext_download.batからやり直したのですがやはり同じエラーが出てしまいます・・・
削除このコメントは投稿者によって削除されました。
削除テキスト変換ツールにバグがありました。ver.0.2を公開したのでそちらを使ってみてください。
返信削除