FC2ブログ
日本語でやりたいんじゃー

日本語でやりたいんじゃー

洋ゲー(どちらかというとマイナーな奴)の日本語化や訳。カテゴリでの並び順が現在優先的に日本語化やっているタイトルの順になっています。

 

Thea: The Awakening UI部分の日本語化への挑戦 解決編

ここまで結構、壁があってdllのテキスト編集も絶対大変だろうと思ってたら、
簡単にやりかた見つかってしまいました。
dllのファイル名で検索したらすぐにツール見つかります。

オープニングとか一部の英文はビットマップフォント表示じゃないので、フォント組み込まなくても
テキスト変えるだけで日本語表示できました。
現在は1種類しかフォント入れ替えてないんですが、
オリジナルは10種類入っています。、文字の太さとか飾り文字とかアウトライン付などかな。
ゲーム内でそのフォントが使われている場面を確認しないと、ちょっと交換しにくいので
とりあえずは、ここまでにしときます。

では、ここまでの成果を。



左の部分がビットマップフォントで右がフォント入れなくても表示できるやつ。
右は改行コード入れないと文字のサイズを勝手に小さくされてしまうので、こまめにコード入れてます。


左下のこういうのとか、ヘルプなんかもビットマップです。


訳は機械翻訳をテキトーに直したやつなのでご了承を。

今迄日本語化作業されていた方、UIの日本語化出来ることは確認できました。
もし、UIの日本語化にも引き続き挑戦する気があって、
わからないこと等がございましたらご気軽にご連絡ください。
 
 

Thea: The Awakening UI部分の日本語化への挑戦 テキスト編

テキストを探すときはgrep検索すれば、だいたい何かしらはヒットするはずなんだけど、
このゲームの場合反応ゼロ。

あと考えられるのは英字で検索してるので、何かしらの実行系ファイルに入っていて
2バイト文字対応のところに1バイト文字入れてるために1バイト空きが出てるとかか?
たとえばNew Gameの場合、N e w G a m e みたいに格納されている。
このゲームの場合ロシア語に対応しているので、2バイト文字の
Новая играで検索してみる。
これも何も引っかからず。

うーん、こうなったら検索諦めてファイルの大きさから目星つけてみる。
6カ国語対応なので結構大きいファイルで3,000kbぐらいはあるはず。
どうもResources内にはなさそう。
となると後はdllが一杯詰まったここか。大きいファイルあるなー。
これをバイナリで大きい順に見ていく。
そうしたらさっき書いた2バイト配置の英語やその他の文字列いっぱい発見。
怪しい、かなり怪しい。しかしキリル文字は見当たらない。

ここでふと気づく。
あっそうか、dll内をUTF8で見てるのがダメなんじゃないかと。
(UTF8は3バイト文字になる)
そう思いUTF16にして見てみた。
そしたらキリル文字列発見。
このファイルで、まずビンゴです。

あとは、テキスト編集方法を探さなくては。
つづく
 
 

Thea: The Awakening UI部分の日本語化への挑戦 フォント編

Phoenix PointではテキストのUnpackの為の解析を勉強し、
The Bard's Tale Trilogyでは日本語フォント組み込みに挑戦。
しかし優れたツールのおかげでワンタッチでポン、勉強するまでにはいたらなかった。
なら次はこのツールで対応しているエンジン製にも関わらず
簡単には出来ないゲームを解析して勉強しようという趣旨。

ということで選んだタイトルは、Thea: The Awakening。
先人たちのおかげで、イベント部分の日本語化には成功しているものの
UI部分が出来なくて、中途半端な日本語化でここまで終わっているという
なんとも実にもったいないゲーム。
かなり時間が経っているのでどうなっているかわかりませんが、
フォントの知識のある方を募集とも某所に書いてあるので、
少しでもお役に立てるようがんばってみます。
まあ、知識があるわけじゃなくて素人なんですけど、
勉強しながら実践していけば、なんとかなるんじゃないかなと。

詳しく丁寧に書くと凄く大変なので
UnityEXの使い方とか浮動小数点の計算とかの
細かいところは省略で、表面だけさらっと書きます。

まずはバーズテールでも大活躍したお~るげーむず(仮)さんの
日本語フォント作ってくれるツールに
フォントの設定ファイルを読ませてみる。
うーん、パラメータに入る値の数が足りない。
これは、このゲームでは省略しているパラの値があるということと説明に書いてある。
なのでフォントのパラを勉強しつつバイナリを解析していく。

頭のほうのデータは省略
004C-005F Gentium Plus Compact フォント名第2

0060 00 00 08 43 1.36e+2   フォントサイズ
0064 00 00 80 3F 1.0e+0
0068 7F 04 00 00 1151      文字数
006C 00 C0 18 43 1.5275e+2  LineHeight
0070 00 00 00 00          Baseline

0074 00 60 E8 42  1.161875e+2  まずはここの間で4バイト分の値が足りない
0078 00 00 12 C2 -3.65e+1    Descender 

007C 00 00 00 00           CenterLine   
0080 00 60 E8 42 1.161875e+2 SuperscriptOffset
0084 00 60 9F C1 -1.9921875e+1 SubscriptOffset
0088 00 00 00 3F 5.0e-1      SubSize
008C 00 60 9F C1 -1.9921875e+1 -がついているのでたぶんUnderline

0090 00 80 D4 40 6.640625e+0  この2つがよくわからない
0094 00 B0 95 43 2.99375e+2

0098 00 00 00 00            Padding 
009C 00 00 00 45 2048       AtlasWidth  
00A0 00 00 80 45 4096       AtlasHeight
00A4 00 00 00 00
00A8 53 0A 00 00 2643
00AC 00 00 00 00
00B0 7F 04 00 00 1151       文字数

こういう時に正常にいったバーズテイルのデータが役に立つ。
それの値と見比べてパラの名前を推測していく。
上に書いた名称はすべて推測です。
BaselineとCenterLineはバーズデイルも値が0.00で、どうもいっしょぽい。
その間に挟まれた-の値の奴がたぶんDescender。
なので、AscenderかCapHeightのどっちかが省略されているっぽい。
それでどっちか1つを読み込まなくさせるように、ツールのセッティングiniをまず作る。

それでもまだ値が2つ足りない。
このツールの他のiniにもあるのだが、PoE2は
Strikethrough とStrikethroughThicknessのパラが省略されているらしい。
これはどうも取り消し線の縦方向オフセットと線の太さみたい。
それを読み込まなくさせると、見た目それっぽくなる。
となると299.38の値のやつはTabWidth。
これでiniを作り名前もTheaにして保存する。

これでフォントを作りゲームに組み込み起動させてみる。
すみません、色々かなり端折ってます。
変えたフォントが表示されるであろう所に行くとゲームが真っ暗画面にw
さすが先人たちが突破できなかっただけのことはある。
そう簡単にはいかない。
何回か色々変えて試すもダメ。

ここで考える。今まで一生懸命設定していたのは
フォントのサイズとか位置とか行間の広さなとである。
間違っていたとしても、果たしてフリーズするほどのことなのかと。
フォントがおかしく表示されるだけで動くのではないかと。

ということでフォントの座標データ等の部分も調べてみることにする。
そしたらここにも大きな違いがありました。
バーズデイルでは36バイト分でループしてた座標データが、
このゲームでは32バイトしかない。
つまり頭の文字フォント読んだ後は、全部4バイトずつずれていくw
そりゃフリーズもしますよ。
余計な4バイトを確定して、バイナリで全部整形する。

さぁ今度こそ…。やりました、動きました。フォントも変わってます。
こうなると、はやく日本語表示させてみたい。
次はテキストデータ探さなくちゃ。
しかし、なんかUIのテキストデータなくない?
さすが先人を悩ませただけのことはあったのであります。
つづく。

 
<-   05 2021  ->
SUN MON TUE WED THU FRI SAT
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 - - - - -
プロフィール

機械仕掛けの翻訳人

Author:機械仕掛けの翻訳人
機械翻訳をベースに校正するスタイルで訳してます。
なので誤訳等は結構あるかと。

翻訳者に代わって開発等に日本語化の交渉などをするシステムを築き上げるのが夢。

ゲーム日本語化の実績は、世に出したのが某マイナーRPGなど2~3本です。
自分で使う用は色々なしがらみがあって公開できないのとか結構たくさんあったり…。

基本1人で英語と闘います。

好きなジャンルはシミュレーションRPGみたいなやつ。
XCOMやX-COM(旧)やDarkest Dungeonなど。

日本語化のやり方
ブロとも申請フォーム
検索フォーム
QRコード
QR

Archive RSS