Nintendo MessageStudio ヘルプ

プロジェクトバイナリフォーマット

ここでは、プロジェクトバイナリファイル(*.msbp)のフォーマットを解説します。 ブロックフォーマットに基づいて構成されるので、その解説も合わせてご覧ください。 プロジェクトバイナリファイルは、1つのプロジェクトに対して1つのバイナリが出力されます。 全ての言語で共通のプロジェクトバイナリファイルを使用します。

通常、このページに書かれている内容を気にする必要はありませんが、libmsを利用する上での理解の助けとなります。 バイナリフォーマットへアクセスする場合はlibmsのAPIを利用することで簡単に取得することが可能です。

プロジェクトバイナリファイルに含まれる情報は他のバイナリファイルに比べて多いので、項目別にページを分けて解説します。

カラー情報

カラー情報の詳細についてはこちら

メッセージにカラータグを埋め込むときにカラーをインデックス番号で指定していた場合、メッセージにはカラーのインデックス情報が入っています。しかし、実際にカラーを適用する場合はそのカラーインデックス番号から実際のカラーデータ(RGBA)が取得できなければなりません。プロジェクトバイナリのカラー情報はこの場合のカラーリソースとして利用することができます。
また、カラーインデックス番号とカラーの名前を関連付けることも可能です。

コンテンツ情報

コンテンツ情報の詳細についてはこちら

コンテンツのインデックス番号と、そのパスを関連付けることが可能な情報です。通常、この情報を直接使用する機会は少ないと思いますが、フローチャートでジャンプノードを扱う場合には必要な情報となります。

属性情報

属性情報の詳細についてはこちら

メッセージバイナリには属性ブロック(ATR1)として属性データ出力することが可能ですが、これだけではどのようなサイズの属性がどのような順序で配置されているかはわかりません。通常、このような情報を構造体としてヘッダファイル(*.h)に出力し、この構造体を用いて属性データにアクセスしますが、この場合は属性設定が変更されるたびにプログラムをコンパイルし直す必要があります。
プロジェクトバイナリに出力可能な属性情報は、属性のサイズと配置を格納しており、この情報を経由することでプログラムをコンパイルすることなく属性設定の変化に対応することが可能となります。
また、属性がリスト型であった場合は、その属性に含まれる項目のインデックス番号と項目名を関連付けることも可能です。

タグ情報

タグ情報の詳細についてはこちら

タググループやタグの番号と、それぞれの名前を関連付けることが可能な情報です。

スタイル情報

スタイル情報の詳細についてはこちら

スタイルに設定されている表示領域幅、表示可能行数、設定されているフォントのインデックス番号を取得することが可能な情報です。レンダリング方式に固有の情報についてはサポートしていません。