言語名や言語変更時のメッセージを記述したJSONフォーマットのファイルです。
主に使用可能言語の確認とコンフィグ画面の表示に使用されます。
言語情報のファイル名は <言語ID>.json とし、これらのファイルは ./Languages フォルダに保存します。
language | 言語ID |
---|---|
name | 表示用の言語名 |
message | 言語変更時のゲームの再起動を促すメッセージ文 |
言語IDは UnityEngine.SystemLanguage 列挙型に定義された列挙子を使用します。
代表的な言語のIDは以下のものになります。
日本語 | Japanese |
---|---|
英語 | English |
フランス語 | French |
ポルトガル語 | Portuguese |
ドイツ語 | German |
イタリア語 | Italian |
スペイン語 | Spanish |
タイ語 | Thai |
インドネシア語 | Indonesian |
ロシア語 | Russian |
中国語 (繁体字) | ChineseTraditional |
中国語 (簡体字) | ChineseSimplified |
ローカライズ用のアセットバンドル
Scenarios | シナリオ スクリプト |
---|---|
LC_Tables | テーブル関連のJSONファイル。テーブル内のローカライズ項目の情報 |
アセットバンドルを格納するフォルダ
プロジェクト | Assets/AssetBundles/Localize/<言語ID> |
---|---|
製品版 | AssetBundles/<言語ID> |
Excelファイル名 | シート名 |
---|---|
Chapters.xlsx | chapters |
CharactersProfile.xlsx | profiles, alias |
DelehelList.xlsx | delehels |
Enemys.xlsx | enemys |
Extra.xlsx | scenes, animations |
Items.xlsx | items |
MapList.xlsx | maps |
Missions.xlsx | missions |
SexHistory.xlsx | historys |
SexualInfo.xlsx | ranks, statuses, skills |
SideEpisodes.xlsx | episodes |
Skills.xlsx | skills, attributes, scopes, buffs |
Weapons.xlsx | weapons |
Words.xlsx | words |
ベーススクリプト(日本語版スクリプト)のラベルとスクリプト処理を翻訳されたテキストとマージしてローカライズ版のスクリプトを生成します。
メニューバーの Tools -> LocalizeTool からローカライズツールを表示してください。
各ファイル、又は、ディレクトリのパスを設定して Convert ボタンを押すとベースとターゲットをマージしたローカライズ版スクリプトが生成されます。
BaseFilePath | ベースとなるスクリプトファイル |
---|---|
TargetFilePath | 翻訳テキスト、又は、翻訳スクリプト |
OutputFilePath | 出力先のファイル |
BaseDirectory | ベースとなるスクリプトファイルがあるディレクトリ |
TargetDirectory | 翻訳テキスト、又は、翻訳スクリプトがあるディレクトリ |
OutputDirectory | 出力先のディレクトリ |
翻訳テキストはメッセージ数をベースと同じにする必要があります。
テキストの記述ルールはLCMスクリプトの仕様と同様です。
各メッセージとメッセージの間に空白行で区切りを入れてください。
テキストの長さ等の都合でベースと異なるメッセージ数になる場合は \BP[] エスケープコマンドを使用してメッセージ数を一致させてください。
翻訳テキスト内にラベルやスクリプト関数が含まれていても問題ありません。
但し、翻訳テキスト内のラベルやスクリプト関数は全て無視される点に注意してください。
ベーススクリプトと翻訳テキストをツールを使用してローカライズした時の例を示します。
例では翻訳テキスト内にラベルやスクリプト関数が入れられていますがメッセージのみの平文であっても挙動は同じです。
ベース スクリプト | 翻訳テキスト |
---|---|
*Event06_02 : if (WhoLeader( "Mukuro" ) == true) : if (CharaCostume( "Mukuro" ) == 2) 黒夜叉のままだとくつろげない。 黒夜叉化を解いた方がいい。 : RpgCharaBatch( "Player", "MoveDown", 1 ) : Return : endif : endif \CI["お風呂に入る"] \CI["お風呂に入らない"] お風呂に入りますか? : if ($choice == 1) : Jump( "*OnnaYu_Event_select_s2" ) : endif *Event07_01 \CI["風呂から出る"] \CI["まだ出ない"] 風呂から出ますか? : if ($choice == 1) : Jump( "*Event07_01_select_s2" ) : endif |
*hoge : foo : bar You can't relax if you stay Kuroyasha. It is better to solve the Kuroyasha conversion. : baz : qux \CI["Take a bath"] \CI["Do not take a bath"] Do you take a bath? *fuga \CI["Get out of the bath"] \CI["Not yet out"] Do you get out of the bath? : toto : tete |
上の2ファイルをツールに渡すと以下のように処理されます。
ベース スクリプト | マージされたスクリプト | 翻訳スクリプト | |||
---|---|---|---|---|---|
ラベル | *Event06_02 | → | *Event06_02 | *hoge | |
コマンド |
: if (WhoLeader( "Mukuro" ) == true) : if (CharaCostume( "Mukuro" ) == 2) |
→ |
: if (WhoLeader( "Mukuro" ) == true) : if (CharaCostume( "Mukuro" ) == 2) |
: foo : bar |
|
メッセージ |
黒夜叉のままだとくつろげない。 黒夜叉化を解いた方がいい。 |
You can't relax if you stay Kuroyasha. It is better to solve the Kuroyasha conversion. |
← |
You can't relax if you stay Kuroyasha. It is better to solve the Kuroyasha conversion. |
|
コマンド |
: RpgCharaBatch( "Player", "MoveDown", 1 ) : Return : endif : endif |
→ |
: RpgCharaBatch( "Player", "MoveDown", 1 ) : Return : endif : endif |
: baz : qux |
|
メッセージ |
\CI["お風呂に入る"] \CI["お風呂に入らない"] お風呂に入りますか? |
\CI["Take a bath"] \CI["Not take a bath"] Do you take a bath? |
← |
\CI["Take a bath"] \CI["Not take a bath"] Do you take a bath? |
|
コマンド |
: if ($choice == 1) : Jump( "*OnnaYu_Event_select_s2" ) : endif |
→ |
: if ($choice == 1) : Jump( "*OnnaYu_Event_select_s2" ) : endif |
||
ラベル行 | *Event07_01 | → | *Event07_01 | *fuga | |
メッセージ |
\CI["風呂から出る"] \CI["まだ出ない"] 風呂から出ますか? |
\CI["Get out of the bath"] \CI["Not yet out"] Do you get out of the bath? |
← |
\CI["Get out of the bath"] \CI["Not yet out"] Do you get out of the bath? |
|
コマンド |
: if ($choice == 1) : Jump( "*Event07_01_select_s2" ) : endif |
→ |
: if ($choice == 1) : Jump( "*Event07_01_select_s2" ) : endif |
: toto : tete |
|
... | ... | ... |