2020年2月11日火曜日

Pathfinder: Kingmaker 日本語化支援ツールの使い方


2020.02.23 日本語化支援ツール(v1.1.0)をアップしました。最新版をダウンロードし、お使いください。

Pathfinder: Kingmaker 用の日本語化支援ツールを作りました。


このツールには次の機能があります。


  • 翻訳シートの作成
  • 日本語化ファイルの作成
  • 用語集による置換機能(オプション)




1.準備


1.1.ツールのダウンロード


Pathfinder: Kingmaker の日本語化を支援するツールを次のリンクから最新版をダウンロードします。

「Releases · synctam/PfkJpModAid」
https://github.com/synctam/PfkJpModAid/releases

この例では、"PfkJpModAid_v1.0.0.zip" をダウンロードしました。
ダウンロードしたファイルをデスクトップに解凍します。

解凍後のフォルダー構成:

PfkJpModAid
  │  
  ├─ ModMaker --- 日本語化MOD作成用
  │   ├─ PfkModMaker.bat
  │   │  
  │   ├─ glossary
  │   │    └─ Pathfinder_Kingmaker - Glossary(sample).csv
  │   │      
  │   ├─ jpMod
  │   │    ├─ normal
  │   │    ├─ refid
  │   │    └─ umm
  │   │          
  │   └─ sheet
  │          
  ├─ original
  │      
  ├─ SheetMaker --- 翻訳シート作成用
  │   ├─ PfkSheetMaker.bat
  │   │  
  │   ├─ backup
  │   │      
  │   ├─ fanTranslation
  │   │    └─ enGB_jp.json
  │   │      
  │   └─ sheet
  │          
  └─ tools


1.2.原文と翻訳済みデータのコピー


original フォルダーにオリジナルの enGB.json ファイルをコピーします。

すでに翻訳済みのファイルがある場合は、PfkSheetMaker\fanTranslation フォルダーに コピーします。ファイル名は enGB.json としてください。


2.翻訳シート

 

ここでは、翻訳で使用する翻訳シートの作成とアップデート時に変更箇所を調べるための比較用シートの2つを作成します。

2.1. 翻訳シートの作成


PfkSheetMaker フォルダーにあるバッチファイル "PfkSheetMaker.bat" をダブルクリックし実行します。
処理時間は1分くらいです。エラーが表示されなければ、翻訳シートの作成は完了です。

これで翻訳シートが2種類作成されます。

ひとつは、SheetMaker\backup フォルダーに作成された比較用の翻訳シートです。このシートは、ゲームがアップデートされた時に変更箇所を調べるために使用するためのものです。大切に保管しておいてください。ファイル名は、PathfinderKingmaker_Compare_yyyy.mm.dd_hh.mm.ss.csv で、ファイル形式はCSVです。比較用のため、列は、[[Key]] と [[English]] のみです。

もう一つは、SheetMaker\sheet フォルダーに作成された翻訳シートで、Googleスプレッドシートへアップロードするためものです。ファイル名は、PathfinderKingmaker_yyyy.mm.dd_hh.mm.ss.xlsx で、ファイル形式はExcelです。デフォルトではシートは7分割されており、それぞれ10,000行となっています。

行数を変更したい場合は、バッチファイル "PfkSheetMaker.bat" 中の "-n 10000" の部分を変更してください。なお、指定可能な行数は5000以上です。また、"-n 10000" 部分を削除すれば1シートになります。


2.2.Googleスプレッドシートへアップロード


前項で、SheetMaker\sheet フォルダに作成された翻訳シートをGoogleスプレッドシートにアップロードします。

ブラウザー(Chrome推奨)で Googleドライブを開き、翻訳用のフォルダーを作成します。今回は、フォルダー名を「Pathfinder Kingmaker 日本語化」としました。

次に、今作成した「Pathfinder Kingmaker 日本語化」フォルダーを開き、先程作成した "PathfinderKingmaker_yyyy.mm.dd_hh.mm.ss.xlsx" をブラウザーにドラッグ&ドロップします。
注意事項:アップロードは必ずExcelファイルの方をアップしてください。比較用CSVファイルには必要な情報が含まれていないため、このアップロードには適していません。

アップロードしたファイルをアプリ「Googleスプレッドシート」で開きます。

開いたファイルをExcel形式からGoogleスプレッドシート形式に変換します。

これで、新しいファイルが作成されGoogleスプレッド形式への変換は完了です。
ここで、シート名の PathfinderKingmaker に変更しておきます。

変換が終わったので、不要なExcelファイルを右クリックし、削除します。

次に翻訳を楽にするために、[[MachineTranslation]](D列)にGoogle翻訳の計算式を入れます。

 例えば、D2のセルに次の計算式を入れます。

    =GOOGLETRANSLATE(B2)

これで、B2の文章が翻訳されD2に格納されます。同様に、[[MachineTranslation]](D列)のすべての行に計算式を入れておくと便利です。このゲームの場合、すべての項目のGoogle翻訳には3時間半ほどかかりました。

Google翻訳完了後、翻訳済みの部分をテキスト化します。Google翻訳の計算式を入れたままにしておくと、処理が重くなったり突然再翻訳が始まったりしますので、必ずテキスト化しておいてください。

テキスト化の手順:
  1. D列をすべて選択する。
  2. Ctrl+C でコピーする。
  3. Ctrl+Shift+Vで貼り付けする。
これで、計算式が削除されテキストのみとなります。


2.3.翻訳


C列に翻訳した文章を入力します。


2.4.翻訳シートのダウンロード


GoogleスプレッドシートからCSV形式で翻訳シートをダウンロードします。 "PathfinderKingmaker" のメニューの [ファイル] - [ダウンロード] - [カンマ区切りの値(csv、現在のシート)] で "ModMaker\sheet" フォルダーにファイル名 "PathfinderKingmaker_Sheet1.csv" でダウンロードします。 以下同様に、Sheet1~7 までのシートをダウンロードします。

【参考】
「お~るげーむず(仮)」さんが公開しているツール「GSS_Downloader」を使用すると翻訳シートをワンクリックでダウンロードできるようになります。興味のある方は次の記事を御覧ください。
「[Tools] GSS_Downloader(更新2) | お~るげーむず(仮)」
https://agk.saloon.jp/game/overseasgame/jp-localize/tools-gss_downloader


2.5.日本語化MODの作成


バッチファイル "PfkModMaker.bat" をダブルクリックし、実行します。
エラーが表示されなければ、翻訳シートの作成は完了です。

これで jpMod フォルダーに3種類の日本語ファイルが作成されます。
  1. normalフォルダ:通常版
  2. refidフォルダ:ReferenceID付き
  3. ummフォルダ:Unity mod manager版日本語化MOD用CSVファイル
普通は通常版を使用します。
ReferenceID付きは、ゲーム画面のテキストの先頭にReferenceIDが付きます。誤字脱字などを指摘する時にReferenceIDを伝えると、翻訳シートの該当箇所をすぐに見つけられるので便利です。
Unity mod manager版日本語化MODを使用している場合は、ummフォルダ内のCSVファイル jaJP.csv を使用します。


2.6.日本語表示の確認


準備中・・・


3.オプション機能


3.1.用語集


用語集を使用した単語置き換え機能があります。これは、日本語ファイル作成時に特定の用語を置き換える機能です。用語の統一や一括変更が簡単にできます。また、固有名詞英語版などを作ることもできます(固有名詞英語版作成機能は未実装)。

用語集に必須の列は次のとおりです。

  1. [[変換区分]]
    #:常に適用、$:固有名詞日本語版のみに適用、無印:コメント
  2. [[接頭辞]]
    同一の用語で訳を区別したい時に指定します。例えば、モンスター名とアイテム名が同じ場合など。
  3. [[英語]]
    原文の単語や熟語
  4. [[日本語]]
    単語や熟語の翻訳文

用語集の登録例:


この例では、接頭辞を使用していますが、接頭辞があると翻訳時の手間が増えるため用語に重複が発生した時に、接頭辞で対応するかどうかを検討した方が良いです。

用語集で変換するための翻訳シートの書き方。

翻訳シートの翻訳文中に置き換えたい用語がある場合は、用語を"@"で括ります。
例:
  • 原 文:Dexterity score reduced temporarily. Dexterity 0 means helpless.
  • 翻訳文:@Dexterity@が一時的に減少する。@Dexterity@が 0 とは@CND_Helpless@を意味する。
このように指定するとゲーム画面には次のよう用語が置き換えられて表示されます。

【敏捷力】が一時的に減少する。【敏捷力】が 0 とは無防備状態を意味する。

用語集を使用したい場合は、ModMaker\glossaryフォルダーにCSV形式の用語集を入れておき、バッチファイル "PfkModMaker.bat" で、"-g CSV形式の用語集のファイル名" を指定します。

用語集の制限事項:
  • セルの結合はサポートしていません。


4.ゲームアップデート時の対応


ゲームがアップデートされた場合は、次の手順で対応します。

  1. 翻訳シートの再作成
    項番1.2.「原文と翻訳済みデータのコピー」~ 2.1「翻訳シートの作成」までを実行します。
  2. 変更の確認
    前回作成したCSV形式の比較用翻訳シートと今回作成したCSV形式の比較用翻訳シートを比較します。変更があった場合は、Googleスプレッドシートを修正します。

【参考】
翻訳シートの比較には、フリーソフトの WinMerge が便利です。
「WinMerge - You will see the difference…」
https://winmerge.org/?lang=ja


5.免責


日本語化支援ツール(PfkJpModAid)、バッチファイル、データおよびこの手順を使用した事によるいかなる損害も作者は一切の責任を負いません。


6.連絡先


synctam@gmail.com


7.ライセンス


7.1. PfkJpModAid、各種バッチファイル


MIT ライセンスで公開します。
Pathfinder 日本語化支援ツールのプログラムソースは次のリンクからダウンロードできます。
「synctam/PfkJpModAid: Pathfinder: Kingmaker 日本語化支援ツール」
https://github.com/synctam/PfkJpModAid


8.使用ライブラリー


8.1. CsvHelper


(Microsoft Public License (MS-PL), Apache License, Version 2.0)
「JoshClose/CsvHelper: Library to help reading and writing CSV files」
https://github.com/JoshClose/CsvHelper


8.2. Mono.Options


(The MIT License (MIT))
「XamarinComponents/XPlat/Mono.Options at master · xamarin/XamarinComponents」
https://github.com/xamarin/XamarinComponents/tree/master/XPlat/Mono.Options


8.3.ClosedXML


(The MIT License (MIT))
「ClosedXML/ClosedXML: ClosedXML is a .NET library for reading, manipulating and writing Excel 2007+ (.xlsx, .xlsm) files. It aims to provide an intuitive and user-friendly interface to dealing with the underlying OpenXML API.」
https://github.com/ClosedXML/ClosedXML


8.4.OpenXML


(The MIT License (MIT))
「OfficeDev/Open-XML-SDK: Open XML SDK by Microsoft」
https://github.com/OfficeDev/Open-XML-SDK


8.5.Crc32.NET


(The MIT License (MIT))
「force-net/Crc32.NET: Fast version of Crc32 algorithm for .NET」
https://github.com/force-net/Crc32.NET


8.6.hashids.net


(The MIT License (MIT))
「ullmark/hashids.net: A small .NET package to generate YouTube-like hashes from one or many numbers. Use hashids when you do not want to expose your database ids to the user.」
https://github.com/ullmark/hashids.net


8.7.Json.NET


(The MIT License (MIT))
「Json.NET - Newtonsoft」
https://www.newtonsoft.com/json


9.変更履歴


2020.02.23 日本語化支援ツール(v1.1.0)をアップしました。
2020.02.21 日本語化支援ツールのバグ対策版をアップしました。Bugfix: 日本語化MOD作成用バッチファイルに用語集の指定が漏れていたのを修正しました。
2020.02.12 日本語化支援ツールのバグ対策版をアップしました。Bugfix: Excel形式の翻訳シート作成時、-f オプションを指定しないと異常終了する問題を修正しました。
2020.02.11 新規公開

0 件のコメント:

コメントを投稿