HPMPウィンドウに職業の略称が出るのはDQ9を除いてDQ3とFC版DQ4くらいなものなのですが(多分)、DQ3では固定長データ「職業」の武闘家の職業略称が「ぞ」になっています。なぜそうなっているのかあまり気にかけていなかったのですが、職業略称として濁音を使用する必要がでてきたので調べてみました。まず、職業略称で使用されている「ぶ」の文字はステータスウィンドウで使用されている「ぶ」とは若干字自体の画像が異なります(あまり意識していなかったので最近まで気づかず)。
(上が通常描画、下が特別描画の「ぶ」)
この「ぶ」の文字データがどこにあるのか知るために、大文字フォントグラフィックデータをデコードするプログラムを書いて画像イメージでチェックしてみましたが、見事に大文字しか定義されていませんでした。他にないかと探していたところ、バンク$01の文字をデコードしたりしている近辺に「濁音、半濁音の文字コードから静音の文字コードに変換する」というSRや、対応表があったりするので、通常は静音の文字グラフィックの右上に『゛』や『゜』を座標をずらして描画している、というのがおぼろげに想像できます。まさかSNESにデフォルトでフォントが用意されているのでは、と思ったのですが、yy-chrで画像フォーマットを「2BPP GB」にしてROM内を見ていったところ、該当する部分を見つけました。#$055181-$56180($561F0?)が小フォントグラフィックに相当するようです。これを見ると、「ぞ」に相当する文字コード#$D2の部分に8×8に収まる「ぶ」がセットされていることがわかります。
これをふまえて、どうすればいいかということになります。まず足りないなら拡張すればいい、ということに考えが向きますが、小フォントデータはVRAM上の$6000-7FFFにSNES4BPPに変換されてセットされているようで、さらに直後の$8000-にもなにやらデータがセットされているようなので拡張は難しそうです。となると、既存領域で使えそうな部分を使うしかないわけですが、空き領域っぽいのは#$FC-FFの4つくらいです(実際全て使用できるかは不明)。試しに#FE, #FFを使用してみましたが、パッと見問題はなさそうですが、通しでプレイしてないので問題があるかもしれません。適用後、職業略称を小フォント文字コード#$FFに相当する「J」にしておきます。
(追加職業略称として「じ」を追加)
画像はyy-chr旧バージョンのものですが、実際に編集する際は、画面に表示される開始アドレスを指定できるyy-chr.netを使用したほうがいいかもしれません(開始アドレスの最下位バイトが0ではなく1からなので)。というわけで実際に適用した場合の画像がこちら。
(一番右のキャラクターの職業略称を見てください)
コメント