NPC をコーディングして領地経営するゲーム開発(翻訳データの準備)
前回の記事で未翻訳のデータを検出する仕組みを実装したので、翻訳データを登録していきます。
やったこと
翻訳済みのメッセージがファイル出力されるようにした
このゲームは Lua スクリプトを編集できるようにするために、その Lua スクリプトのファイルをフォルダに出力するようになっています。
そのときに、今までは英語版のファイル出力では以下のように tr() タグ内はオリジナルメッセージのまま出力するつもりでした。この tr() は、ゲームシステムで評価されるときに翻訳用データがあれば置き換えて出力してくれる仕組みです。
↓今までの Lua スクリプトファイルの出力例
この仕組みでもいいのですが、日本人以外が日本語を読めることを私は期待してなくて、そうすると読めない言語が目に入るとプレイヤーのストレスになる気がしました。なので、tr() はゲームシステム側がファイル出力するときに評価されるようにしました。
↓ C# で tr() を検索して置き換えるコードの抜粋
副次的な効果として、こうすることで出力したファイルに日本語が含まれていないかどうかで翻訳が適切に完了したかをチェックしやすくなりました。よいです。
↓ 置き換えたコードに日本語が含まれてないか検出するコードの抜粋
よいです。
翻訳に関係する不具合を修正した
翻訳データ中にカンマやクオーテーションがあった場合の処理が不適切だったので修正したりしました。
ひたすら DeepL で翻訳した
翻訳すべきデータが多いので、ひたすら変換して一読してから翻訳用のファイルに記述する、を繰り返しました。がんばりました。
まとめと今後の予定
とりあえず、PV 以外の気が重い作業がほぼ終わったので大変よいです。(API ドキュメントは日本語、英語の両方のドキュメント作成が未完了です)
今後の流れは PV 作成してストアページに申請、体験版をビルドしてストアページに申請、体験版の公開、という流れになる予定です。がんばります。