「牧場物語 ふたごの村」のメッセージを解析する・前編

今回もまた「その他」カテゴリの記事です。

先日、「ポポロクロイス牧場物語」が発売されまして、当方も届くのを楽しみにしているわけですが、それまでの間、せっかくなので過去作を遊び倒そうかなぁと思って作成した記事です。
まあ遊び倒すといっても、実際に遊ぶわけではなく、ゲームのROMからあれやこれや抽出して遊ぶ方です。
よって、以降の内容はデータ解析の内容になります。その手の話題が苦手な方は申し訳ありませんが、ブラウザバックお願いします。

あ、ちなみに今回(解析で)遊ぶゲームは「牧場物語 ふたごの村」です。DS版の最終作で、発売が遅れに遅れた作品でしたね。




さて、まずデータ抽出といえば個人的にはBGM抽出なのですが、このへんのWikiを見ればできてしまうので省略です。
もっと面倒なら某動画サイト漁ればBGM集出てくると思います(宣伝)。


他にデータ抽出といえば、グラフィック抽出もありそうです。しかし、私は画像抽出についての知識が皆無に等しく、それ用のツールすら使いこなせない有様で、今回は省略です。


さて、「じゃあ何を抽出するのさ?」ということになるのですが、今回はゲームROMに収録されているメッセージを抽出してみようと思います。

まずは、こちらのサイトにてGCCODEをダウンロードし、同サイトの解説を参考にしながらテキストのコードをどうにかして抽出。

画像

とりあえず、適当に思いついた、ゲーム中の料理大会でのピエールの台詞、
「紹介にあずかりましたピエールデス。」
この中の「あずかりました」の部分を検索した結果です。
そして、この部分をフィルタリング出力機能を用いて出力します。

画像

一応それらしいメッセージが読み取れます。

さて、ここからフォントデータの解析をしてもよいのですが、このソフトのメッセージは一部漢字を含んでいます。
そして、いくつ漢字を含んでいるかも分からないので、これから漢字を抽出するのは至難の業になるでしょう。

そこで、今回は少し別の方向からアプローチしました。
最初に苦手といった「画像の抽出」をしなければならないといけないのですが・・・

大体のゲームは内部に「フォントデータ」を内蔵しています。中身は画像データなのでどうにかして抽出できれば、そこから文字コードの並びの推測もできます。

詳細な手順は省略しますが、各種ツールを駆使してどうにかしてフォントデータの抽出に成功しました。
フォントデータはこんな感じになっています。

画像

これを14枚分、約1500文字分のフォントデータを抽出しました。

次に、このフォントデータからテキストを起こします。ハートのようにS-JISで表現できない文字はとりあえず放置して、csvファイルに文字コード・文字の対応表を書き出しました。
画像


さて、これを用いてプログラムを作成します。
いわゆるメッセージコンバータの作成です。

とりあえず、現状はROMファイルから直読みしているので、メッセージファイルを抽出します。
mes_data.bin
event_mes_data.bin
の2ファイルを抽出しました。

あとは中身のファイル構造を解析しながらメッセージを変換するようプログラムを記述すればよいです。

・・・が。




変換しているといろいろ欲が沸いてくるものです。
案の定
・可変データを読めるようにしたい
・実際のメッセージっぽく表示したい
・発言者や立ち位置、表情も解析したい
・↑にあわせてキャラグラフィック(=立ち絵)を表示したい

などなど・・・

そんなこんなで実現しようとプログラムを書いていくと大体時間泥棒に化します。
数日がかりで作成した結果がこちら。エラー処理もしっかりしていないのでミスると即刻エラーですが気にしない。

画像


いろいろ見れます。見たことないやつ、見飽きたやつ、そもそもゲームに出たか怪しいor出てないやつ・・・

どんなメッセージが抽出できたかは次の記事にて。
一旦区切ります。

後編は抽出データから未使用データを紹介。

次へ


ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 1

面白い

この記事へのコメント

この記事へのトラックバック