『カタログIP』コラボ 利用マニュアル
大事なお約束
カタログIPコラボは、バンダイナムコエンターテインメント様のカタログIPオープン化プロジェクト参加コンテンツです。このため、公開作品にはカタログIPオープン化プロジェクトの参加ルールが適用されます。プチコン3号での参加ルールは、おおざっぱに言って次の通りです。ルールを守らない公開作品は公開停止対象となりますので、注意して下さい。
- プログラム先頭でDLCOPEN命令を使用し、カタログIPコラボ作品である事を表明して下さい。
- オリジナルと全く同じ内容のゲームは作成できません。
- DLCOPENで使用を宣言したコンテンツと異なるコンテンツの使用はできません。
(逆に言うと、これらのルールを守ってさえいれば、後は自由です。DLCで提供する素材に不満のある方はオリジナル素材を使用しても構いません)
カタログIPコラボ利用規約ファイル構成
DLCは、プチコン3号のプロジェクトとして扱います。 プロジェクト名の先頭に$をつけると、そのプロジェクトはDLCを参照する事になります。 例えばギャラクシアンのDLCを参照したい場合は、$GALAXIANをプロジェクト名として使用します。
各DLCプロジェクト内のファイル構成は次のようになっています。DLC毎に存在しないファイルもあるので注意して下さい。例えばギャラクシアンはBGが存在しないので、BGに関係するファイルはありません。
DEFS,00SAMPLE,00VIEWER,00VIEWER_LISTはどのDLCでも必ず存在します。
*00SAMPLE | DEFSを使用した簡単なサンプル |
---|---|
*00VIEWER | コンテンツリソースビューワ |
*00VIEWER_LIST | VIEWER用のデータ |
*DEFS | コンテンツを簡単に利用するための命令定義 |
*ANIMS | プリセットアニメーション定義 |
SP.GRP | スプライト画像 |
BG.GRP | BG画像 |
FONT.GRP | フォント画像 |
その他データファイル | スクリーンデータ、波形データ等 |
DLCプロジェクトはSYSプロジェクトと同様に、プロジェクトをまたいだロードが可能です。
またLOADは可能ですが、SAVE,RENAME,DELETEはできません。ここもSYSと同様の扱いとなります。
簡単な使い方
DLC内の素材を簡単に使うために、専用命令を用意しています。専用命令を使うには、最初にDEFSプログラムをスロット1〜3のいずれかにロードしEXECして下さい。
DEFSプログラムを実行すると、次の命令と関数が使えるようになります。
(各命令先頭の'DLC名'という部分は、それぞれ使いたいDLCの名前に置き換えて下さい)
DLC名_SPLOAD ロード座標X, ロード座標Y
スプライト用画像を現在のスプライト用グラフィックページにロードします。
ロードの際、読み込みの左上座標を指定可能です。
DLC名_SPGRPHEIGHT()
スプライト用画像の高さを取得します。スプライト用画像の幅は常に512ピクセル固定です。
DLC名_SPDEF スプライト定義開始番号
指定した定義番号を先頭に、スプライトのプリセット定義を行います。
この命令を使用する前に必ず DLC名_SPLOAD で画像を読み込んでおいて下さい。
(読み込み位置を定義情報の一部として使用しています)
DLC名_SPDEFCNT()
スプライト定義データの個数を返します。DLC名_SPDEF呼び出し後に使用して下さい。
DLC名_BGLOAD OFSX, OFSY
BG用画像を現在のBG用グラフィックページにロードします。ロードの際、読み込みの左上座標を指定可能です。
DLC名_BGGRPHEIGHT()
BG用画像の高さを取得します。BG用画像の幅は常に512ピクセル固定です。
DLC名_FONTLOAD
フォント画像をGRPFにロードします。
DLC名_FONTGRPHEIGHT()
フォント用画像の高さを取得します。フォント用画像の幅は常に512ピクセル固定です。
DLC名_SNDDEF 先頭BGM番号,先頭楽器番号
サウンドデータを定義します。
内部でBGMSETとWAVSETを行いますので、先頭BGM番号と先頭楽器番号には、それぞれBGMSETとWAVSETで使用可能な番号(複数DLCを併用しないのであれば、通常は128,224)を設定して下さい。
DLC名_BGNCNT()
BGMデータの個数を返します。DLC名_SNDDEF呼び出し後に使用して下さい。
DLC名_WAVCNT()
波形データの個数を返します。DLC名_SNDDEF呼び出し後に使用して下さい。
簡単な使い方(アニメーション)
アニメーションを簡単に使用するための専用命令が ANIMS プログラムで定義されています。DEFSと同様にスロット1〜3のいずれかにロードしEXECして下さい。
(DEFS内の命令でロードや定義が終わった後であれば、同じスロットにANIMSをロードしても構いません。)
・DLC名_ANMINIT スプライト定義開始番号
アニメーション定義情報を初期化し、後述する DLC名_ANMSETを使用できるようにします。 スプライト定義開始番号には、DLC名_SPDEFで指定したのと同じ値を指定して下さい。
・DLC名_ANMSET スプライト番号,アニメーション番号,ループ回数
指定スプライトの定義番号アニメーションを設定します。ループ回数はSPANIMの最終引数に指定する値となります。
使用例
パックマンで、DEFSとANIMSを使用した場合の簡単な例です。($PACMAN/00SAMPLEから抜粋)
'--- パックマンそざいよみこみ
'まずこのプログラムをどこかのスロットにロードしてEXECします
'そうするとかんたんにそざいをりようかのうにするめいれいがつかえるようになります
EXEC "PRG3:$PACMAN/DEFS"
'フォントよみこみ
PACMAN_FONTLOAD
'スプライトがぞうよみこみ
PACMAN_SPLOAD 0,0
'スプライトていぎ
VAR SPDEFTOP=2048
PACMAN_SPDEF SPDEFTOP
'BGがぞうよみこみ
PACMAN_BGLOAD 0,0
'サウンドていぎ
PACMAN_SNDDEF 128,224
'アニメーションていぎ
'アニメーションていぎはDEFとはべつプログラムになっています。
'このじてんですべてのそざいじゅんびがおわっているならば、
'DEFといれかえてしようしてもかまいません。
EXEC "PRG3:$PACMAN/ANIMS"
PACMAN_ANMINIT SPDEFTOP
画像の著作権保護について
カタログIPコラボ内の画像の著作権保護画像ファイルでは次の事をしようとするとエラーが発生します。
- スプライトとBG画像を読み込んだグラフィックページから、GSPOIT,GSAVE,SAVEを用いたデータ読み出し
- スプライトとBG画像を読み込んだグラフィックページから、保護対象ではないグラフィックページへのGCOPY
- 保護画像をGRPFにロードして、保護対象ではないグラフィックページへGPUTCHR
- DAT形式を用いた保護画像ファイルから配列へのLOAD
保護画像を読み込んだグラフィックページへの上書き描画は可能です。 保護状態をリセットするには、ACLSを実行して下さい。GCLSでは保護状態はリセットされないので注意して下さい。 GRPFに保護画像をロードした場合は引数なしのFONTDEFでも保護状態がリセットされます。
高度な使い方
結局のところ、DEFSやANIMSはDLC素材を比較的簡単に使用するためのプログラムを提供しているだけで、生データを直接扱っても、もちろん問題ありません。ここでは、DEFSやANIMSを使用しない場合の素材の取り扱いについて解説します。
1.画像素材について
ファイル名の末尾に.GRPとついているファイルが画像ファイルとなります。これらをGRPにロードする事で、通常のグラフィックリソースと同様に取り扱う事ができます。
ただし、DLCの画像データにはコピープロテクトがかかっている事に注意して下さい。DLC内の画像をグラフィックページにロードすると、該当ページは保護状態となり、一切の読み出し(GSPOIT,GLOAD,GCOPY,SAVE等)が禁止されます。(ただしGCOPYは保護ページ間でのコピーは可能) 表示及び該当ページへの書き込みは可能です。
スプライトの定義情報については、DEFS内の @DEF_DLC名 以降に定義データがありますので、そちらが参考になると思います。
BG画像は、ほとんどの場合キャラクタサイズが8x8として格納されています。
スプライトとBGの画像は、横幅512ピクセルで、縦はタイトル毎に変動します。複数タイトルを併用する場合、読み込み位置を縦にずらす事である程度の数のタイトルデータ が併用できるはずです。DEFS内の命令もこのような使い方を想定しています。画像の縦サイズは DLC名_SPGRPHEIGHT, DLC名_BGGRPHEIGHT, DLC名_FONTGRPHEIGHT で取得可能です。
2.サウンド素材について
サウンドデータは、短い波形データとMMLがDEFS内にありますのでそちらを参照して下さい。 また長い波形データはそれぞれ.WVで終わるファイルとして格納されています。