NPC をコーディングして領地経営するゲーム開発(ドキュメント修正と英訳)
ドキュメントを英訳して PV を途中まででいいので作る予定でしたが、英訳を作るための補助スクリプトを作る記事になります。
プレイ動画の保存しようとしてみて
実際に保存する前に「こういう操作を行ってそれを保存しよう」という練習を兼ねて操作してみて色々と気付かされたので書き出してみます。
- ゲームのイベント中のコメントとセリフを処理するスクリプトを作りたい。
- 操作しててキー操作が行えなくなることがあった。(不具合を取り切れていない)
- 翻訳してて気付いたゲーム用語の修正など
それぞれについて、どうにかしていきます。
ゲームのイベント中のコメントとセリフを処理するスクリプトを作りたい
最初のステージではこういうシーンから始まるのですが、この処理内容は setup.lua というスクリプトに記述されています。
↓ゲーム開始後のイベントシーン
↓イベントシーンの処理を記述した Lua スクリプト
現時点で「選択された言語に対応したコメントを残す機能」「メッセージを置き換える機能」があって、それに対応した setup.lua に変更するとこうなります。
↓修正したもの
コメント行の "\~ja" は、オプションで選ばれている言語と一致するときのみ表示する仕組みです。
また、セリフに追加した tr() は translation のつもりで、ここで渡した文字列が多言語対応用の Japanese.txt や English.txt に登録されていれば置き換える仕組みになっています。
今から作るスクリプトでやりたいことは
- "\~ja" の次の行に "\~en" がないときに、ファイル名と行番号を含んだ警告メッセージを出力する。
- tr() 内の翻訳対象の文字列を、English.txt 用に抜き出す。
です。
それぞれの処理を Python で実装すると、こんな感じになります。私しか使わないスクリプトなので動けばオッケーです。
↓日本語コメントに対応する英語コメントがないのを検出するスクリプト
↓tr() の内容を抜き出すスクリプト
後は、実際にこのスクリプトを実行した結果を使うあたりですが、今回はこのくらいにします。
まとめと今後の予定
今回は、翻訳すべきテキストを検出したり抜き出したりする Python スクリプトを作成しました。
ぶっちゃけ、最近は暑くて開発にかける時間が足りてない気もするのですが、何もしないよりましなのでこんな感じで続けていきます。がんばります。