2017年1月7日土曜日

日本語フォント追加手順について(バー会話部分)

※現在、一番メインのダイアログを変更する所まで記載済みです
1.2.1.0以降ではフォントナンバーが変わっています。
※GameMaker Studio2発売に伴い、前バージョンの配布は終了しました。
現在、前バージョンを所有していない場合、フォントを作成する事が出来ません。

※尚、簡易テスト版でdata.winに差分を適用する事でフォントの埋め込みは可能です。
簡易テスト版の公開は終了致しました。

※以下記載の手順には、2016/12/18版UndertaleToolsが必要です。
2017/8/29版UndertaleToolsではファイルを展開出来ません。



以下のURLの記事を参考にさせていただいております。
Undertale 非公式日本語化パッチの当て方
fjay69/UndertaleTools
GameMakerStudioで日本語フォントを表示する方法

TAMANIさんが日本語フォントの埋め込み方法について記載されていたのでお尋ねした所、追加方法についてお教え頂き、情報についても記載許可を頂いております。

・必要なファイル
UndertaleTools(data.winの解凍、圧縮)使用には.Net Framework4.5以上が必要です
GameMaker Studio(フォントの作成。無料版でもフォントは作れます無料版の配布は終了したようです 

その他、アルファチャネルを扱えるグラフィックツール(URLは一例。広告付き無償)
ファイアアルパカ
これで(恐らく)全て日本語化可能です。

GameMakerStudioで日本語フォントを表示する方法
日本語フォントの作成には上記URLの
文字一覧(第1水準漢字を含む)
から、moji_list.txtの入手をお勧めします。以下の作業例でも使用します。

・事前に必要な事
ファイルのバックアップが必要です。
Steamでは、デフォルトでは以下のフォルダにあるファイル
C:\Program Files (x86)\Steam\steamapps\common\VA-11 HALL-A
data.win
scriptsフォルダ
上記二つのバックアップを取る必要があります。
GOG版、itch版でも同様のファイルとフォルダのバックアップが必要です。
(GOG版)VA-11 Hall-A - Cyberpunk Bartender Action

※また、可能性としてSteamの実績が取れなくなる可能性があります。

・コマンドプロンプトについて下に追加致しました(2017/01/24)

・解凍
UndertaleTools-master.zipを解凍します。
以下、例ではC:\UndertaleTools-Masterに解凍したと仮定して説明します。
エクスプローラーを開きます。
Windowsのコマンドプロンプトを開きます。
解凍した先のフォルダを移動します。
cd c:\UndertaleTools-master
先ほど開いたエクスプローラーでテキストファイルを作成します。
ここではextract.txtとして作成します。(どのようなファイル名でも構いません)

WinExtractはGameMaker Studioのデータファイルを展開するツールです。
書式はWinExtract <元ファイル> <出力先フォルダ>です。

ファイルの中に以下の文章を記述します。
WinExtract.exe "C:\Program Files (x86)\Steam\steamapps\common\VA-11 HALL-A\data.win" extract
テキストを保存します。

拡張子をtxtからbatに変更します。
コマンドプロンプトで行うのであれば、
ren extract.txt extract.bat
と実行します。

では展開を行います。
コマンドプロンプトで以下のコマンドを実行します。
extract
コマンドプロンプトが再び現れたら解凍完了です。
出来上がったフォルダをエクスプローラーで開きます。
このような感じで出来ていれば展開が成功しているはずです。
※重要(バージョン1.2.1.3以降では必要無くなりました)
ここでAUDOという名前のフォルダを新規に作成します。
中身は空で問題ありません。

・フォント作成
GameMaker Studioではビットマップのフォントしか使えません
そのため、フォントを作成する必要があります。

GameMaker Studioを起動して、Makeをクリックします。
新しいプロジェクトを作成するため、Newをクリックします。
プロジェクト名を入力します。ここでは説明のため、VAJP_FONTで作成します。
プロジェクト名はどのような名前でも問題ありません。
名前を付ける際に表示されるパスが後で必要になります。
メモ帳等に張り付けておきましょう。
C:\Users\(ユーザ名)\Documents\GameMaker\Projects
大体、このようなパスになっているはずです。
入力後、Createをクリックします。
メイン画面が開いたら、左にあるFontsを右クリックして、Create Fontをクリックします。
フォントのプロパティが開きます。
以下の内容で設定します。
Name dialogJP 
Font MS UI Gothic
Anti-Aliasing OFF
Size 11
High-Quality チェックを外す
名前とフォントは自由に選んで構いません。
アンチエリアシング、高品質については使わない方が望ましいです。
使用した場合、ボケたような表示になります。
フォントサイズについては大きい方が見やすいですが、12以上を選んだ場合、縦の文字同士が重なる可能性があります。
入力が終わったら、入力した場所の左下にある±をクリックします。
From Fileをクリックします。
ファイル選択を求められますので、既に入手済みのmoji_list.txtを選択します。
以下のように表示されるはずです。表示確認後、OKをクリックします。
次のウィンドウでOKをクリックします。
メイン画面のFontsの下にdialogJPが表示されているはずです。
プロジェクトのセーブを行います。Fileをクリックして、開いたメニューのSaveをクリックします。
先ほどメモ張に張り付けたフォルダを見てみましょう。
プロジェクトの中にfontsフォルダがあるはずです。
中にdialogJP.pngというPNGファイルがあるはずです。
ダブルクリックで開いてみましょう。
こんな感じで日本語フォントが表示されていれば成功です。

・圧縮
フォントの準備が終わりましたので、解凍したdata.winを再びdata.winにまとめ直します。
fontsフォルダ内の以下のファイルをコピーします。
dialogJP.font.gmx
dialogJP.png

コピー先は以下のフォルダになります。
c:\UndertaleTools-master\extract\FONT_new
ファイルコピー後、patch.txtをダブルクリックで開きます。
以下の文字列を入力します。(バージョンで違います。ご注意下さい

~バージョン1.1.0.4まで
5;dialogJP.font.gmx

バージョン1.2.1.0以降
20;dialogJP.font.gmx
テキストの保存は念のため、UTF-8で行ってください。
名前を付けて保存からエンコードでUTF-8が選べるはずです。

解凍の時にBATファイルを作成したフォルダに移動します。




ここではpack.txtとして作成します。(どのようなファイル名でも構いません)

WinExtractはGameMaker Studioのデータファイルを展開するツールです。
書式はWinExtract <元ファイル> <出力先フォルダ>です。

ファイルの中に以下の文章を記述します。
WinPack.exe "C:\UndertaleTools-master\extract" "C:\Program Files (x86)\Steam\steamapps\common\VA-11 HALL-A\data.win"
テキストを保存します。

拡張子をtxtからbatに変更します。
コマンドプロンプトで行うのであれば、
ren pack.txt pack.bat
と実行します。

では展開を行います。
コマンドプロンプトで以下のコマンドを実行します。
pack
以下の様にエラーが出ていなければ成功です。
ここで一度ゲームが起動可能か確認しましょう。
正常な起動を確認できたら終了します。

エクスプローラーで、以下のフォルダを開きます。

バージョン1.1.0.4まで
Program Files (x86)>Steam>steamapps>common>VA-11 HALL-A>scripts

バージョン1.2.1.0以降
Program Files (x86)>Steam>steamapps>common>VA-11 HALL-A>scripts>eng

フォルダ内にあるtutorial.txtをダブルクリックで開きます。
2行目にある「G'evening.」を「こんばんは。」と書き換えます。

テキストの保存は必ずUTF-8で行ってください。
名前を付けて保存からエンコードでUTF-8が選べるはずです。

もう一度ゲームを起動して、New Gameで始め、アンナとの会話を終えて、「Go to work→」をクリックします。
このように表示されましたら、成功です。おめでとうございます。

・注意点
[]で囲まれた部分はゲーム用のスクリプトです。破壊しないようにしてください。
行数を減らしたり、増やしたりしないようにしてください。
ゲームの進行に支障をきたす可能性があります。
文章は自動的に改行が行われません。
スクリプト内で改行を行うには、「#」を書き込みます。
最大3行まで表示可能です。恐らく3行以上でも表示可能ですが、3行にとどめて置いた方が良いでしょう。
今回の手順で日本語化可能なのは、このゲームで一番ボリュームがある、バーでの会話部分です。

・次回予定
会話部分以外の日本語化手順。
翻訳メモリについて。
何か不明点がありましたら、聞いてください。可能な限りお答えします。

・(参考)コマンドプロンプトの開き方、ディレクトリの移動方法

簡単にディレクトリの使い方について説明いたします。
更に詳しく知りたい場合は、もっと専門的な解説をご参考にされてください。


コマンドプロンプトの開き方を説明します。(Windows10)
他の方法でも開けますが、今回はこの開き方のみ説明します。
画面左下(枠内)をクリックしてください。
(Windows7の場合は、スタートを押した後に上に入力ウィンドウが開きます)
cmd
とタイプします。
ポップアップウィンドウにコマンドプロンプトが表示されます。

コマンドプロンプトが開きました。
C:\Users\(現在使用中のユーザ名)>

C:
ドライブ(ここではCドライブ)文字を指します。
\
セパレータ(各要素を分ける記号のようなもの)。
>
コマンドプロンプト(入力開始場所を表す記号)。
Users
ディレクトリ名(ここではユーザフォルダ)を指します。
(現在使用中のユーザ名)
現在使用しているユーザ名です。PCにより、名称は異なります。
貴方がfoobarという名前でPCを使用していれば、
C:\Users\foobar>
このように表示されます。

この場合、Cドライブの下にあるUsersディレクトリの下にあるfoobarというディレクトリに現在居るという事になります。

イメージ
C:
→Users
→→foobar

ここで、
cd ..
cdの後にスペースを入れてから、コロンを二つ入力して下さい。入力後、Enterキーを押します。..はディレクトリを上に移動するという意味です。

C:\Users>
こうなります。

CDとはChange Directoryの略で、ディレクトリの移動を行うコマンドです。

CD 移動したい先

このような形で理解してください。

先ほどのfoobarフォルダから、一つ上にあるUsersフォルダに移動したという事です。
では、foobarフォルダに戻って見ましょう。
>の後に、foobar(貴方のPCのユーザ名に合わせて変更してください)と入力し、Enterキーを押します。

C:\Users\foobar>

元に戻りました。
毎回foobarと入力するのは面倒なので、最初の文字を入力してから、Tabキーを押してみましょう。
foobarと表示されます。
但し、fと付く名前が複数ある場合、一番最初のが出てきます。その場合、Backspaceキーを押してから、次の文字を入力して候補を減らしてから、もう一度Tabキーを押します。
必要に合わせて、長さを調整してください。

17 件のコメント:

  1. packの展開でWinPackが動作を停止してしまう…

    返信削除
  2. 1.Extractは上手くいって、Pack時に止まるという認識で合ってますか?
    2. Pack時に止まる時は同じ場所で止まりますか?
    3. 止まる場所でコマンドプロンプトにエラー等表示されていますか?
    止まる箇所についてもう少し詳しくお教え頂けますか。

    私が経験した例としては、Extract成功後にAUDOフォルダの作成を忘れた場合
    Extractフォルダに余計なファイルが入っていた場合等があります。

    返信削除
    返信
    1. 返信ありがとうございます
      Extractは上手くいくのですが、Packの展開を実行すると同じタイミングで『WinPackの動作が停止しました』と出ます
      コマンドプロンプトには最初の行にdialogJP.font.gmxが見つからないと出ていました
      AUDOフォルダはExtractフォルダに作成していました

      削除
    2. 既に確認済みの箇所もあると思いますが、以下確認願えますか。
      1. FONT_newフォルダに、
      dialogJP.font.gmx
      dialogJP.png
      の二つのファイルがありますか?
      2. dialogJP.pngを開くと正常に漢字が並んでいるのが見えますか?
      3. patch.txtはUTF-8で保存されていますか?
      20;dialogJP.font.gmx(改行)
      こんな感じになっていますでしょうか?

      削除
    3. 確認しましたが問題ありませんでした
      エラー時はこのようになります
      http://imgur.com/a/92IZg

      削除
    4. 原因は不明ですが、何らかの原因でWinPackからdialogJP.font.gmxが見えていないようです。
      GMSで新たにフォントを作成して、Pack.bat、patch.txt等を変更しても同じエラーが出ますでしょうか?
      私の経験を思い出すと、GMSで作成したファイルをリネームして使った際にそのエラーが出た記憶がありますが、今回の件に該当するかはわからないですね…リネームはされていないでしょうし。

      後は、FONT_newに、空のPatch.txtのみの場合でも同じエラーが出るでしょうか?その状態でもエラーが出るのであれば、フォントの問題では無いかも知れません。エラーが出なくなるようであれば、フォントに関連したトラブルだと考えられます。

      削除
    5. 申し訳ありません 単純なミスでした
      GMSでdialogJPと入力したときに_dialogJP_という風にアンダーバーが付け足されてしまっており認識しなくなっていたようです
      修正したところ無事翻訳することが出来ました
      お手数をおかけしてすみませんでした

      削除
    6. 無事動いたとの事で何よりです。
      最初の一回目はハードルが高いと思います。私は相当苦労しましたので。
      また、不明点等ありましたら、お知らせください。

      削除
  3. 参考にさせていただきながら作業中です。
    packまでは出来るのですが文字が表示されないためpngを確認したところ、画像が黒字にしろ文字となっておらず、真っ白でした。
    お手数ですが改善方法をご存じないでしょうか?

    返信削除
    返信
    1.  すみません、あわて表現が誤っていました。
      誤> 画像が黒字にしろ文字となっておらず、真っ白でした。
      正> 画像が黒背景色に白文字となっておらず、真っ白でした。

      削除
    2. 何度も申し訳ありません。
      出力したファイルが壊れていただけらしく、再度始めからやり直した結果問題なく表示されるようになりました。
      他、「黒の背景色」に見えなかったのは当方の画像ビューワが背景色を白で表示していただけで画像加工ツールで確認すると問題なく透明色でした。
      コメント欄汚しをしてしまいたい変質礼いたしました。

      削除
    3. 自己解決されたとの事。作成に成功されたようで何よりです。私のテストでも、フォントによってはアスキー文字以外作成されない物がありました。GMS内で作成時は正常に表示されるものの、PNGを見ると…というパターンが多かったですね。
      また、不明点等ありましたら、お知らせください。

      削除
  4. 参考にさせて頂いています。
    質問ですが、リンク先のUndertaleToolsでコマンドプロンプトを管理者権限で使用し、1.2.1.3のVA-11 Hall-Aのdata.winの展開を試みた所、以下の画像の状態になり不完全な展開になってしまいます。
    https://i.imgur.com/9wxaVmN.jpg
    OutOfMemoryException.はメモリ不足の時に表示される文章みたいですが3GBスイッチを有効にしても駄目でした。
    何か他の原因があると思うのですが宜しければ思い当たる事等を教えて下さるとありがたいです。
    win7、メモリ16GB(空き12GB)です。

    返信削除
    返信
    1. http://www.mediafire.com/file/934yj5i5qd3330b/UndertaleTools-master_%283%29.zip
      UndertaleToolsのバージョンが上がっているので、上記URLのバージョンでは可能かも知れません。(MediaFireのが不安であれば、2016/12/18バージョンを入手して下さい。)
      メモリは16Gあれば問題無いはずです。

      削除
    2. 2017/08/29バージョンにてOutOfMemoryExceptionの表示を確認致しました。
      また、2016/12/18バージョンにて、正常に解凍できるのを確認しました。
      226ファイル5フォルダ出来ていれば正常に解凍出来ているはずです。

      削除
  5. 上記URLのUndertaleToolsで無事、226ファイル5フォルダ作成できました。
    返信&ご教授ありがとうございました。

    返信削除
    返信
    1. 無事解凍できたのであれば何よりです。
      ご連絡ありがとうございました。

      削除