U7J - 使ってみる
U7日本語化ツールの使い方です。
翻訳以外で何をどうしたらいいのかといった事を簡単に説明します。
必要なもの
以下のものを用意してください。
- ウルティマ7のゲーム本体
ウルティマコレクション日本版やUltima Collection(英語版)に含まれるものと同じバージョンに対応しています。
- オリジナルのExult
ExultのオフィシャルサイトからWindows用をダウンロードしてください。
日本語化対応版のExultはオリジナルに対する差分になっているので、それだけでは動作できません。
- Exult日本語化対応版
最新版をダウンロードしてください。
- U7日本語化ツール
最新版をダウンロードしてください。
日本語化ツール本体の後にリリースされた更新版があれば一緒にダウンロードしてください。
- BDFフォント (オプション)
ゲーム内での日本語表示にBDFフォントを使用したい場合は、使いたいフォントを用意します。
ゲームで使用しているフォントはとても小さいので、そのような小さいサイズ用にデザインされたBDFフォントを使用した方が文字を読みやすくなると思います。
以下のようなものがあります。
他にもいろいろあると思います。
好みにあうものを探してみてください。
[TOP]
インストール
- ウルティマ7
まず、ウルティマ7のゲーム本体をインストールします。
インストーラを使うのか、CD-ROMから直接コピーするのかはどの製品を入手したかによって違うので、それぞれの製品マニュアルに従ってください。
ウルティマコレクション日本版のものであれば、CD-ROM内のUltima_7フォルダとSerpentフォルダをまるごと全て適当な場所にコピーするだけです。
例えば、C:\games\Ultima_7や、D:\Serpent等。
CD-ROMからコピーした後は、読み取り専用属性を解除しておいてください。
- オリジナルExult
ダウンロードしたインストーラを実行して、必要な設定をするだけです。
インストール先はC:\Program Files以下のフォルダは避けた方が良さそうです。
Black GateとSerpent Isleのある場所の指定を間違えなければ、インストール完了した時点で、英語版のままのゲームがそれぞれ遊べるようになっていると思います。
この時点で一度Exultがちゃんと動作するか確認しておく事をオススメします。
- 日本語化対応版Exult
exult-1.9-u7j-x.x.x.7zを解凍するとexult-1.9.0gitというフォルダが出来ます。
その中にさらに64bitというフォルダがあります。
その中身全てをオリジナルExultをインストールした場所に上書きコピーします。
- U7日本語化ツール
u7j-x.x.x.zipを適当な場所に解凍してください。
その中の64bitというフォルダにツールの実行ファイルが入っています。
更新版ファイルがあるときは、それらも解凍して日本語化ツール本体のある場所に上書きコピーしてください。
- BDFフォント (オプション)
ダウンロードしたファイルを解凍して、適当な場所にコピーしておくだけで良いです。
事前にどのファイルがどんなデザインなのかは確認しておいてください。
U7日本語化ツールにはフォントのプレビュー機能はありません。
Black GateとSerpent Isleの日本語化を平行して行う場合は、作業フォルダを分ける必要があります。
環境変数PATHにU7日本語化ツールをインストールした場所を指定して作業フォルダからプログラム実行ができるようにする、
もしくはU7日本語化ツールのあるフォルダをコピーして、一方をBlack Gate用、他方をSerpent Isle用としてください。
フォルダをコピーする方がディスクは無駄に使いますが簡単だと思います。
[TOP]
オリジナルのデータファイルから各種テキストを抽出する
U7日本語化ツールに含まれるバッチファイルを使用します。
Black Gateの場合は
bg_init.bat、
Serpent Isleの場合は
si_init.batを編集して使用します。
このバッチファイルはゲームのSTATICフォルダからオリジナルのデータファイルを作業場所にコピーし、それらから英語テキストを抽出、アセンブラソースを作成します。
バッチファイルをテキストエディタで開いて以下の
赤い部分を各自の環境にあわせて変更してください。
@echo off
set STATICDIR="C:\Ultima7\STATIC"
rem - Black GateのSTATICフォルダの場所を指定します
set LOGMODE=2
rem - 各プログラムの表示内容を保存するかどうかを指定します
rem 0 保存しない
rem 1 保存する
rem 2 保存するがエラーにならなかったときは削除する
set BACKUP=0
rem - データファイルのバックアップを作成するかどうかを指定します
rem 0 バックアップファイルを作成しない
rem 1 拡張子.origを追加した名前でバックアップを作成する
rem バックアップファイルはコピー元フォルダに作成します
rem 既にバックアップファイルがある場合は作成しません
これは
bg_init.batの先頭の部分ですが、
si_init.batも同じ様になっています。
例えば
Black Gateのゲームファイルが
D:\games\Ultima_7にある場合は、
set STATICDIR="D:\games\Ultima_7\STATIC"
となります。
LOGMODEと
BACKUPはお好みで設定してください。
としておくと、オリジナルのデータファイルを上書きしてしまってもバックアップの方が残るので便利かもしれません。
バックアップした
*.origがある場合、
bg_init.batおよび
si_init.batは、
*.origの方をオリジナルのデータファイルとみなし、そちらをコピーします。
慣れてきたらdocフォルダにある
u7disasm_patch.txtを読んで
u7disasmのオプションも変更してみてください。
bg_init.batおよび
si_init.batではコピープロテクト質問の答えをスライドバーに設定しておく
--asm-patch-copy-protect-answerが指定されていますが他にもいろいろあります。
バッチファイルの編集が済んだら、
bg_init.batまたは
si_init.batを実行します。
自動でテキストの抽出を行い、以下のファイルが作成されます。
- bg_text.en.txt (Black Gateのみ)
- npc_names.en.txt
- text.flx.en.txt
- usecode.asm
- usecode.en.txt
- usecode.src
エラーになった時は
LOGMODEを
0以外にしていれば
*.logファイルが出来ていると思うので、内容を確認して間違いを直してください。
バッチファイルで指定した内容と実際の環境が違っていなければ、この段階でエラーになることはあまり無いと思います。
[TOP]
翻訳テキストを作成する
翻訳自体はがんばってご自分で行ってください。
ここではどのファイルに何のテキストが含まれているのかだけ説明します。
以下のファイルの内容を翻訳します。
各ファイル名の
en部分を
jaにした名前で翻訳ファイルを作成します。
翻訳ファイルは文字コードをUTF-8にして作成してください。
BOMはあっても無くてもどちらでも良いです。
翻訳ファイルの区切り文字をタブ以外に変えてしまうと翻訳テキスト反映時にエラーになります。
翻訳ファイルの作成にはタブ、半角空白、全角空白を見分けられるテキストエディタの使用をお勧めします。
- bg_text.en.txt (Black Gateのみ)
オープニングのガーディアンの台詞とエンディングのテキストが含まれています。
4番目の項目を翻訳します。
翻訳ファイル名はbg_text.ja.txtです。
オープニングの翻訳に「|」(文字コード0x7C)が含まれる場合、そこで分割して2段で表示します。
翻訳が長くなり画面からはみ出しそうな場合は「|」を使用してください。
- exultmsg.en.txt
オリジナルのプログラム中に埋め込まれていたテキストを抽出したファイルです。
Black Gateのエンディング、
Serpent Isleのオープニングとエンディング、その他のテキストが含まれています。
4番目の項目を翻訳します。
翻訳ファイル名は
exultmsg.ja.txtです。
以下の行はゲーム完了メッセージ用に「|」で分割し、ゲーム内時間により組み合わせて使用しています。
BG_ENDGAME 50 ENDFONT & |only |exactly | year| years| month| months| day| days| hour| hours|negative time!
SI_ENDGAME 24 ENDFONT & |only |exactly | year| years| month| months| day| days| hour| hours|negative time!
24時間未満でクリアしたときは「only 23 hours」のように最初にonly部分の文字列が、
クリア時間が月単位で日、時間が0になる、または1ヶ月(28日)未満で時間が0になるときは「exactly 27 days」のように最初にexactly部分の文字列が追加されます。
最後のnegative time!はマイナス時間の場合のエラーメッセージなので翻訳しなくてもよいです。
- npc_names.en.txt
NPC名が含まれています。
2番目の項目を翻訳します。
翻訳ファイル名はnpc_names.ja.txtです。
NPC名には16バイト以内という制限があります。
半角の英数字、ひらがな、カタカナは1文字1バイト、濁点と半濁点はそれだけで1バイト、それ以外の文字は1文字2バイトになります。
NPC名で使用している漢字は優先的に2バイトで割り当てるので、1文字3バイトになることはありません。
- text.flx.en.txt
物の名前や定型の短い台詞、他にはチート機能で使用するテキストが含まれています。
2番目の項目を翻訳します。
翻訳ファイル名はtext.flx.ja.txtです。
魔法の品と普通の品で同じ名前を使用していることもあるので少し注意が必要です。
「A/B/C/D」形式のものは単数と複数で表示が切り替わります。
単数の場合は「ABC」、複数は「数量 BD」と表示されます。
例えば、「a/mandrake root//s」の場合は「a mandrake root」や「10 mandrake roots」となります。
「A/B/C/D」形式になっているものの、実際には単数でしか使われていないものもあります。
そういうものは「/」なしの普通の形式に変えてしまっても問題ないと思います。
また、日本語化対応版Exultではこれに加えて名前の「*」を数量に変更して表示するようにしています。
例えば、「*ゴールド」は「3ゴールド」、「矢 *本」は「矢 50本」のように表示します。
- usecode.en.txt
会話や本、標識等、ゲーム中で表示されるテキストの大部分がこのファイルに含まれています。
4番目の項目を翻訳します。
翻訳ファイル名は
usecode.ja.txtです。
テキストの種類によって3番目の項目が違っています。
特に
CHOICEは、同じ内容の別の行にあるものとセットで同じ翻訳にしないと、会話で選択した内容が話されない等の不具合を引き起こしたりします。
usecode.srcを見ると、どのテキストどうしが関係しているか理解する助けになるかもしれません。
また表示とは逆順に並んでいたり、複数の部分を組み合わせて文章を組み立てたりしている事もあるので、慣れるまではかなり大変だと思います。
3番目の項目が、
PLAQUE、
S.PLAQUE、
SIGN、
TOMBとなっているものは金色の銘板、標識、墓石等の表示内容です。
翻訳内容は画面下部に字幕として表示します。
この字幕には1番上に表示されるテキストの分しか表示されません。
例えば
FELLOWSHIP
HALL
という
SIGNの場合、
FELLOWSHIPの部分の翻訳しか字幕に表示されません。
また、翻訳テキストに「\n」が含まれる場合、そこで分割して2段で表示します。
SIGN、
PLAQUE、
TOMBのうちテキストが英小文字のものはルーン文字で表示されるものです。
字幕にはルーン文字は表示できないので普通に翻訳してください。
以下はルーン文字のテキスト中の記号と表示内容の対応表です。
英語テキストの記号
| 表示内容
|
(
| THを表すルーン文字
|
)
| EEを表すルーン文字
|
*
| NGを表すルーン文字
|
+
| EAを表すルーン文字
|
,
| STを表すルーン文字
|
|
| 「・」または空白
|
慣れてきたらdocフォルダにある
README.kinsoku.TXTも読んで、
kinsoku.cfgをいろいろ変更してみてください。
Black Gateオープニングの水色の字幕は直接
u7bg_subtitle.exeまたは
u7bg_subtitle_bdf.exeの画面に入力するか、
BMP画像を
u7bg_subtitle.数字.bmp(数字は1〜7)というファイル名で用意します。
この字幕は画像データになっているので、他の翻訳とは違う扱いになっています。
BMP画像についてはU7日本語化ツールのdocフォルダにある
u7bg_subtitle_bmp.txtを読んでください。
[TOP]
翻訳テキストをデータファイルに反映させる
U7日本語化ツールに含まれるバッチファイルを使用します。
Black Gateの場合は
bg.bat、
Serpent Isleの場合は
si.batを編集して使用します。
このバッチファイルは翻訳テキストを使用してデータファイルの日本語化を行います。
バッチファイルをテキストエディタで開いて以下の
赤い部分を各自の環境にあわせて変更してください。
@echo off
set EXULTDIR="C:\Program Files\Exult"
rem - Exultのインストール場所を指定します
set LOGMODE=2
rem - 各プログラムの表示内容を保存するかどうかを指定します
rem 0 保存しない
rem 1 保存する
rem 2 保存するがエラーにならなかったときは削除する
set DELOLD=0
rem - 古いデータファイルを事前に削除するかどうかを指定します
rem 0 削除しない
rem 1 削除する
rem 基本的にデータファイルは上書き作成されるので古いものが残ることはありませんが
rem エラーや翻訳ファイルを移動/削除した場合には新旧混在になる可能性があります
これは
bg.batの先頭の部分ですが、
si.batも同じ様になっています。
Exultを
C:\games\Exultにインストールした場合は、
set EXULTDIR="C:\games\Exult"
となります。
LOGMODEと
DELOLDはお好みで設定してください。
さらにファイル中ほどにある以下の赤い箇所はどちらか選んで、使用する方の
remをはずし、使用しない方には
remを追加してしてください。
rem ------------------------------------------------
echo u7font_add を実行します
rem ------------------------------------------------
set LOGFILE=u7font_add.log
if %LOGMODE% == 0 set LOGFILE=nul
rem どれか1つをえらんで実行します
rem - u7font_add システムフォントからゲーム用のフォントを作成します
rem - u7font_add_bdf BDFフォントからゲーム用のフォントを作成します
rem u7font_add.exe > %LOGFILE% 2>&1
u7font_add_bdf.exe > %LOGFILE% 2>&1
u7font_add_bdf.exeを使用する場合は、
BDFフォントが必要です。
違いはU7日本語化ツールのdocフォルダにある
u7font_add.txtを読んでください。
BDFフォントを用意して
u7font_add_bdf.exeを使用した方が良好な表示を得られると思います。
Black Gateの場合はその後にある以下もどちらか選んでください。
rem ------------------------------------------------
echo u7bg_subtitle を実行します
rem ------------------------------------------------
set LOGFILE=u7bg_subtitle.log
if %LOGMODE% == 0 set LOGFILE=nul
rem どれか1つをえらんで実行します
rem - u7bg_subtitle システムフォントを使用してオープニング字幕画像を作成します
rem - u7bg_subtitle_bdf BDFフォントを使用してオープニング字幕画像を作成します
rem - u7bg_subtitle_bmp ビットマップ画像からオープニング字幕画像を作成します
rem u7bg_subtitle.exe > %LOGFILE% 2>&1
u7bg_subtitle_bdf.exe > %LOGFILE% 2>&1
rem u7bg_subtitle_bmp.exe > %LOGFILE% 2>&1
u7bg_subtitle_bdf.exeを使用する場合は、
BDFフォントが必要です。
u7bg_subtitle_bmp.exeは事前に字幕用の
BMP画像を
u7bg_subtitle.数字.bmp(数字は1〜7)というファイル名で用意しておく必要があります。
それぞれの違いはU7日本語化ツールのdocフォルダにある
u7bg_subtitle.txtおよび
u7bg_subtitle_bmp.txtを読んでください。
とりあえず
u7bg_subtitle.exeの方を使用して、表示結果に満足できないときは変更すれば良いと思います。
バッチファイルの編集が済んだら、
bg.batまたは
si.batを実行します。
途中、フォント追加プログラムのダイアログが表示されます。
u7font_add.exe
| u7font_add_bdf.exe
|
|
|
チェックボックスは上から6つはチェック、7つ目はお好みで、一番下は解除して、
Execute(実行)をクリックし、完了したら
Quit(終了)をクリックしてください。
フォント指定はいろいろ試してみてください。
Black Gateはオープニングの字幕作成プログラムに
u7bg_subtitle.exeまたは
u7bg_subtitle_bdf.exeを選んだ場合はそのダイアログも表示されます。
u7bg_subtitle.exe
| u7bg_subtitle_bdf.exe
|
|
|
フォントを指定して、テキストボックスに字幕用のテキストを入力してください。
テキストを入力したら、
Execute(実行)して
Quit(終了)してください。
全て済んだら以下のファイルが作成されているはずです。
- exult_u7j.cfg
- exultmsg.txt.new
- fonts.vga.new
- initgame.dat.new
- mainshp.flx.new (Black Gateのみ)
- text.flx.new
- usecode.map
- usecode.new
エラーになった時は
LOGMODEを
0以外にしていれば
*.logファイルが出来ていると思うので、内容を確認して間違いを直してください。
exult_u7j.cfgの
[SPEECH] DISP_TEXT=OFFを
ONに変更しておくと、ゲーム中にガーディアン等が喋る場面で、その字幕が表示されるようになります。
また、
[MISC] RESET_NPC_NAMES=OFFを
ONにすると、セーブデータを読み込んだ後にNPC名を設定しなおすので、NPC名を変更する場合には
ONにしておくと便利だと思います。
[TOP]
日本語化したデータファイルをExultのゲームフォルダにコピーする
U7日本語化ツールに含まれるバッチファイルを使用します。
Black Gateの場合は
bg_copydata.bat、
Serpent Isleの場合は
si_copydata.batを編集して使用します。
このバッチファイルは作成した日本語化データファイルをゲームのSTATICフォルダに上書きコピーします。
バッチファイルをテキストエディタで開いて以下の
赤い部分を各自の環境にあわせて変更してください。
@echo off
set STATICDIR="C:\Program Files\Exult\Ultima7\STATIC"
rem - Black GateのSTATICフォルダの場所を指定します
これは
bg_copydata.batの先頭の部分ですが、
si_copydata.batも同じ様になっています。
Exultで使用するゲームファイルの場所を
STATICDIRで指定します。
例えば
Black Gateのゲームファイルが
D:\games\Ultima_7にある場合は、
set STATICDIR="D:\games\Ultima_7\STATIC"
とします。
バッチファイルの編集が済んだら、
bg_copydata.batまたは
si_copydata.batを実行するのですが、ゲームのデータファイルが上書きされるのでオリジナルをバックアップしていない場合は先にバックアップしておく事をオススメします。
問題なければバッチファイルを実行します。
[TOP]
遊んでみる
全て順調に出来ていれば翻訳テキストを用意した範囲内で日本語が表示されるはずです。
おかしな所があれば、翻訳テキストを修正して、再度テキストの反映からやりなおします。
プレイヤー名にはひらがな、カタカナも使用できます。
CTRL、
F5、
F9、
F10キーのいずれかを押す度に、英字→ひらがな→カタカナ→英字と入力モードが変化します。
入力方法はローマ字入力のみです。
[TOP]
[戻る]