世界最大規模のゲーム開発イベント。ティラノゲームフェス2024エントリー受付中 

  • 採用実績は20000作品以上。PC・スマホ・ブラウザ対応のノベルゲーム製作キット

ローカライズ(翻訳)機能とは

この機能はティラノスクリプトV600以上が必要です
V530以前のバージョンでも翻訳機能を利用できるようにするプラグインも提供されています。

ティラノスクリプトで海外向けにローカライズしたい場合、高機能な翻訳機能が提供されます。

・自動的に翻訳対象の文章を抽出する機能
・1つのビルドで言語を自由に切り替える機能
・プレイヤーの環境から自動的に言語を検出して設定する機能
・翻訳用のCSVをエクスポートが可能。エクセルなどの外部ソフトでの編集も可能

あらゆる言語で相互変換できます。

(例)

  • 日本語→英語
  • 日本語→中国語
  • 英語→日本語
  • 英語→中国語
このように、どのような言語にも対応できます。

それではさっそく、試してみましょう。

ティラノスタジオのダウンロード

まずは、翻訳機能に対応した最新版のティラノスタジオを入手してください。

>>最新版のティラノスタジオを入手する

そして、通常通りティラノスクリプトのプロジェクトを読み込みます。

翻訳機能を使ってみる

今回は英語への翻訳を想定して作ってみましょう

最初にローカライズしたい言語を新規作成します。
左メニューの「開発」から「翻訳」を選択して、「言語の追加」をクリックしてください。



言語を表す半角英数字を入力します。
例えば英語なら「en」中国語「ch」日本語「ja」といった具合です。




追加されましたね。
左のシナリオ一覧からscene1を選択します
ゲームのシナリオが自動的に解析されて表示されているのが確認できます。




それでは、翻訳作業を始めてみましょう。

空白のセルをダブルクリックすると編集することができるので、左欄に対応する英訳を入力していきます。
ある程度進んだら、右下の「保存」ボタンをクリックしてください。





ここで一旦、プレビューを試してみます。
翻訳をゲームに適応する場合は[lang_set]タグを使用します。

first.ksをエディタで開いて好きな場所に以下のスクリプトを記述してください


[lang_set name="en" ]
保存してプレビューしてみましょう。




英語で入力した翻訳後の状態でゲームが進行しますね。
これで簡単にローカライズ版を作ることが可能です。

キャラクター名を翻訳する

「キャラクター」を選択すると、登場するキャラクター名が一覧で抽出されているので 同じように翻訳を入力します。



保存してプレビューすると名前欄も翻訳されているのが確認できます。

翻訳対象にしたいタグを登録する

文章以外に翻訳したい部分があるかもしれません。
例えば、選択肢やボタンの文字などです。

その場合、「タグ登録」機能を使用します。

右上の歯車アイコンをクリックしてください。



ここに翻訳対象にしたいタグとパラメータを指定しておくと、翻訳画面に抽出してくれます。
デフォルトで、glink、ptext タグは登録されています。

例えば、自分で作ったマクロ

[mymacro value="ここを翻訳したい"]

みたいなタグがあったとすると、ツールの「追加」ボタンを押して

タグ名に「mymacro」 、パラメータに「value」を登録しておくと「ここを翻訳したい」が抽出できます。

最後に「設定して反映」をクリックが必要です。

CSVでエクスポート・インポートする

ツールの画面上で作業する以外に、一旦CSVに書き出して エクセルなどで編集することもできます。

の2通りの方法が用意されています。

インポートとエクスポートは画面右上のボタンで行います。





言語によって処理を分ける

スタジオの翻訳機能だけでは、すべてのローカライズをすることが難しい場合があります。
例えば、画像などに文字を埋め込んでいた場合や、別の言語の場合だけ文字数を多くして説明が必要といったケースです。

その場合はスクリプト中の[if]タグを使って、選択されている言語で分岐させることができます

以下のスクリプトを参考にしてみてください。



[if exp="TYRANO.kag.lang==='en'"]
英語の場合の処理[p]
[elsif exp="TYRANO.kag.lang==='ch'" ]
中国語の場合の処理[p]
[else]
それ以外の処理[p]
[endif]


いかがでしょう、つまり[ lang_set ]で指定している言語はTYRANO.kag.langで取得することができます。
この処理を使えば、言語ごとに柔軟にカスタマイズすることができますね。

プレイ環境で言語を自動的に設定する

プレイヤーがどのような言語を主に使用しているかを読み取って、自動的に設定することもできます。
次のコードをご確認ください。



[iscript]

//ユーザーの使用している言語を取得
var lang = navigator.language;

//対応している言語じゃなかった場合は標準の言語を使用する
sf.select_lang="default";

if(lang.indexOf("en")!=-1){
	sf.select_lang = "en";
}

[endscript]

[lang_set name="&sf.select_lang"]


いかがでしょう。navigator.languageで取得できる値は言語によって異なりますので、 対応したい言語がどのような値を返すのかは事前に調べておきましょう。

言語を選択して保存する

プレイヤーに言語を選択してもらうケースにも対応が可能です
[lang_set]タグはどのタイミングでも使用可能なので、言語設定画面などを用意して 1つのビルド内で言語を切り替えることも簡単にできます。

ただ、選択した言語を次回起動時も反映するにはシステム変数に使用中の言語を入れておくのがよいでしょう。


                                        
[iscript]

if(!sf.selected_lang){
    
    //定義されていない場合はデフォルトで初期化
    sf.selected_lang="default";

}

[endscript]

[lang_set name="&sf.select_lang"]

つまり、言語を切り替えたタイミングでsf.selected_langにnameパラメータの値をいれてあげるとよいわけです。



V530よりも古いバージョンでも翻訳機能利用する

なんらかの事情でティラノスクリプトのバージョンをアップできない場合、 古いバージョンのティラノでも翻訳機能が利用できるようにプラグインを配布しています。

翻訳プラグインをダウンロード

詳しい使い方は内包されているreadme.txtをご参照ください。