BMS-3 Command List Version 2.50
基本的には大文字小文字の区別はないと思います。
BM−A4の拡張命令はほとんど確認していないので実際対応しているかは不明。
なんでBMS−3かというと初期BMS、拡張BMS(&BME等)、その他の曲ファイルの3つをまとめた物を指す。
 
03/07/07: ver2.50 :名無しプレイヤー0.3から色々追加
03/01/13: ver2.43 :FP2ndは#COMMENTには非対応ではなかった(誤り)
02/11/13: ver2.42 :FP2ndは#COMMENTには非対応
02/10/14: ver2.41 :FP2nd対応追加
02/10/06: ver2.40 :#SETRANDOM/TEXT追加(FP2nd)
02/05/13: ver2.32 :#LNOBJ追加(Rhythm-it1.61)
02/03/20: ver2.31 :GDA・G2D拡張命令追加(GDACPより)
02/03/13: ver2.30 :抜けていたPMS拡張命令追加、KMS/DTX/DMS/GDA・G2D拡張命令追加
02/02/28: ver2.23 :Rhythm-it(ver1.61)が#backbmpに対応
02/02/04: ver2.22 :DWI書式追加(MSDのとこに)
02/01/08: ver2.21 :DDR Version 0.50β2&2.1書式追加(#STOP)
01/12/14: ver2.20 :MSDと幻となったBMEX(BMX)書式追加
01/12/03: ver2.11 :Rhythm-it拡張命令追加
01/11/26: ver2.10 :BM98K Version 3.xx DRINK EDITON/DDR Version 0.50β1の命令追加
01/10/23: ver2.04 :DrumMIDIver1.92拡張命令追加
01/07/16: ver2.03 :bemaniaDX 0.9x系拡張命令追加
01/07/11: ver2.02 :DDRV形式(1.0,1.5,2.5,3.0)追加、BMM修正&追加、誤字修正
01/07/09: ver2.01 :EMS追加(Angelic Pianizm)、誤字修正
01/07/07: ver2.00 :1年半ぶりに Ver2 として復活

↓赤色になっているのがBM98k3.31(y3.18/k3.30r4.2)準拠命令
BMS拡張命令(BMS、BME、BAS、EMS、PMS(FP))
#ANIMESPEED **アニメーションマクロの表示速度(ミリ秒)
#ARTIST ***作者名
#AVI** ***.avi動画指定(01〜ZZ)
#BACKBMP ***.bmpDDRモード時の背景画像(640x480限定)
ver0.23以降対応(DDR)、ver1.41t1以降対応(FP)
#BANNER 画像ファイル名、曲セレクト画面で
300*80の画像を表示します。
#BARRESO **小節の解像度を変える
#BASEBPM **BPMのオフセット値。整数あるいは小数で指定します
#BGA**一枚の画像のピクセル範囲を指定する
00〜ZZまで記述できる?
#BGMDELAY ***EMS再生をBGM(MIDI&CD-DA)と同期をさせる為、
ウェイトをかけます。AngelicPianizm(EMS)拡張
#BMP** ***.bmpBMP、JPG等の画像指定(BMP00はミス画像)
ソフトによってRLE、OS/2のBMPが非対応な物もある
#BMPRECT ***.bmp矩形BGA張り付け
#BPD
テキストver0.63に記載
#BPM ***通常テンポ数(ソフトによって小数点対応もある)
基本上限が256以上対応している物もある
#BPM** ***途中変更用BPM定義(小数点対応)
ver0.72以降対応
#CDDA *CD再生。トラック番号を指定
ただし現在の所微妙にずれるのは仕様です
#CDSTART **#CDDAで指定されたトラックをスタートする
小節番号を指定
#CHECK ***ゲージによって変化(GUAGE/GREAT/GOOD/BAD・・・)
#CHACKFILE ***.chpファイル名によるキャラクター指定
ぽみゅキャラを指定します。ver1.00b1以降対応
#COMMENT ***曲選択時のその曲のコメント(長い文は自動的に縮小)
ver1.50t3以降対応
#DELETEMIDIDRUM#MIDIFILEで指定されたMIDIファイルから
ドラムを抽出して消去(無音に)
#DIFF *GOOD判定ランク(Digi-rock向け)
%EMAL ***Eメール記載
#ETITLE ***曲再生中の時の下のスクロールの文字指定
半角英単語のみ対応。全角は文字化けします
#EXBPM** ***BMSCのバグ対策。#BPMxx yyyと同義
#EXTCHR「Project 2DX」のためのBM98を7ライン化する命令
DDRでは疑似対応
#GENRE ***ジャンル名(BMSA、J-POP、ANIME SONG・・・)
#INSTRUMENT* ***.datオブジェクトの無い場所でキーを叩いた場合の音色
セットファイルを読みこみます。AngelicPianizm(EMS)拡張
#LNOBJ **ロングノート指定
#LNTYPE *ロングノート指定
#MAKER ***製作者名定義等(表示の都合上長文は非奨励)
#MIDIFILE ***.midMIDI再生
ソフトによって再生タイミングが違うので注意
#NOUSEOBJECT#WAVxxで指定されたオブジェクトをすべて
バックコーラスとして扱います
#PLAYER *1P、2P、DP指定
#PLAYLEVEL *レベル表示(EASY:3、NORMAL:2、HARD:1、VERY HARD:0)
#POORANIME{on|OFF}poorをマクロ的にアニメーションさせるスイッチフラグ
#POORBGA *
#RANK *レベル数値、ソフトによって「?」の対応もある
#RANDOM *#if,#endif指定によるランダム設定
#ELSE#IFと#ENDIFの間に指定できます(ランダム専用)
#IFの条件に合わなかった場合に実行されます
#SWITCH乱数を発生させる(ランダム専用)
#SETSWITCH乱数を発生させる(ランダム専用)
#CASE合致するところを実行します(ランダム専用)
#ENDSW?(ランダム専用)
#SKIP?(ランダム専用)
#DEF?(ランダム専用)
#CASE?(ランダム専用)
#RECCOLORB ******ラベルの色(R/G/B)16進(WEB等のfontタグと同じ)
#RECCOLORC ******文字の色(R/G/B)
#SETRANDOM *ランダム指定項目
FP2nd以降で対応
#SNDRESO **音の解像度を固定(例:#BMP01 A.bmp,**)
#STAGEFILE ***.bmpステージ画像指定(640x480以下でも可能)
ソフトによってはJPG、GIF、PNG等対応
#STP ***.*** ****時間停止命令(小節/小節内位置/停止時間(1/1000秒))
ver0.92以降対応
#STOP** ***シーケンスを指定した時間だけ停止する命令
192分音符単位で指定、ver0.50β2以降対応
#TEXT**流れる文字指定
FP2nd以降で対応
#TEXT00ミスしたときに表示
#TITLE ***タイトル名
#TOTAL ***ゲージ上昇値指定
#TYPEDEF ***タイプ定義(仮)
%URL ***URL記載
#USEMIDIDRUM#MIDIFILEで指定されたMIDIファイルから
ドラムを抽出してオブジェクトに変換
#VIDEO**#AVIxx(ファイル名)と同義
#VIDEOCOLORS **ムービーのカラーパレット定義
#VIDEODLY ***何フレームからスタートするかが設定可能
ver0.92以降対応
#VIDEOf/s **ムービーのフレームレート定義
#VIDEOFILE ***.aviムービーファイル定義(TypeAceではMPG(MPEG-1)可)
ver0.69以降対応(bemaniaDX)
#VIDEORECT *動画のクリップ
#VISUAL**:noteアニメーションのマクロ定義
#VOL**#WAVxxで指定した音声ファイルそれぞれについて
ボリュームを設定
#VOLWAV ***音量値(typemaniaでは一音目に繁栄)
#WAV** ***.wavWAV、MP3の音指定(MP3の音をWAVと指定しても作動)
ADPCM,GSM等の圧縮WAVもある
#WORDS ***.dat歌詞表示の為の歌詞ファイルを読みこみます
AngelicPianizm(EMS)拡張
タイプマニア拡張命令(BMM)
ARTIST=***作曲者名
BMPFILE=***.bmpBMPの画像指定
OS/2のBMPは非対応
CREATEBY=***作者名
GENRE=***ジャンル名(BMSA、J-POP、ANIME SONG・・・)
ID=*リストデータ専用です
オリジナルデータでは指定しないように
LEVEL=*「RANK」と同じ
LIST=*リストデータ専用です
オリジナルデータでは指定しないように
MIDIFILE=***.midMIDI再生
typemaniaではBPM変更でMIDIのテンポも変化
PLAYMODE=*single/doubleかのモード選択。「PLAYER」と同じ
REV=*リストデータ専用です
オリジナルデータでは指定しないように
TEMPO=***曲のテンポ。「BPM」と同じ
WAVEFILE=***.wavWAV指定
WAVVOL=***WAVファイルの再生音量を指定。「VOLWAV」とほぼ同じ
ドレミマニア拡張命令(PMS)
#artist ***製作者、半角63文字以内
#blank *譜面データが流れ始めるまでの間の時間
単位は1ms
#bpm ***曲開始時のBPM
#comment ***コメント、半角127文字以内
#end最後尾に記述
#gap *songfileと譜面データとの差
単位は1ms
#genre ***ジャンル、半角63文字以内
#goodrank *GOODの判定の厳しさ
#greatrank *GREATの判定の厳しさ
#playlevel *ゲーム選択時に出てくる顔
#songfile ***.***曲中にならすMIDI/WAVファイル
#start何かを指定
#title ***タイトル、半角63文字以内
#total ***ゲージ上昇値指定
#version ***PMS-MML自身のバージョン
DDRVでーた(DDR(1.0/1.5/2.5/3.0))
#1.0初代DDRのステップデータ
#anotherAnotherのステップ
#basic2ndMix以降のNormalもしくはHard
#date **:**:**年:月:日
更新時刻(保存時に自動更新)
#doubleDoubleモード
#comment ***コメント
#Converted ***作った人
#hardIRVのHard版
#height *DDRV表示時の高さ
#Helper:***助力人
#Level難易度(足マークの数)
#maniacManiacのステップ
#msd ***作者名
#MSDStyle形式変更(テンキースタイル)
#normalIRVのNormal版
#Producer ***ステップファイルの作者
#Reformed ***設計者
#Special Thanks:***スペシャルサンクス
#Tempo ***曲のテンポ
#title ***タイトル名
#twoplayCoupleモード
#unisonDDR 3rd のユニゾンモード用データ
#width *DDRV表示時の幅
MSD拡張命令+DWI拡張命令
#GAP **ギャップの指定
#FILE ***.wav音声指定
#TITLE ***タイトル名
#ARTIST ***アーティスト名
#MSD ***作者名?
#BPM ***テンポ
#SINGLE
#COUPLE
#DOUBLE
脚譜部分個々指定
#CDTITLE:***.pngタイトル画像
#CHANGEBPM:***=***;
#FREEZE:***=***;
DTX拡張命令(DTXMania)
#ARTIST ***アーティスト(対応してるか不明)
#GENRE ***ジャンル(対応してるか不明)
#PLAYER *プレイヤー指定(対応してるか不明)
#BPM ***テンポ指定
#TITLE ***タイトル指定
#WAV** ***.***WAV/MP3指定
KMS拡張命令(KeyMani)
#MID** ***MIDI一括割り当て命令
例:#MID91 EF(DD)-6F
#BPM ***テンポ指定
DMS拡張命令(NDS)
/BPX ***
/TRACK ***
/DELAY ***
/BAR ***
/CD ***某CD等指定
*BASIC譜指定
GDA/G2D拡張命令(全部対応しているかは不明(おい))
#ARTIST 制作者名 制作者名
#BASEBPMベースBPM
#BGABGAファイル定義
#BLEVELギター2レベル
#BPMBPM
#DLEVELドラムレベル
#ECHO直接出力命令
#GENREジャンル
#GLEVELギター1レベル
#LEVELnn番目の難易度(n=1〜3)
#MESC曲中小節長変更
#PATHWAVファイルのフルパス
#PREプレビュー
#PATHGDA Viewerとの連携専用・WAVEファイルのパス
(xxxxx=絶対パス)
#PBPM再生時のBPM
#PBASEBPM再生時のベースBPM
#PWAV再生時のWAVファイル定義
#PBGA再生時のBGAファイル定義
#PTMPC再生時の曲中テンポ変更
#PMESC再生時の曲中小節長変更
#TITLE曲名
#TMPC曲中テンポ変更
#WALL壁紙
#WAVWAVファイル定義
@WAVsnn xxxWAVセット2以降のWAVファイル定義
(s=セット番号-1、nn=WAV番号、xxxxx=ファイル名)
CWAVsnn xxxWAVセット2以降のコメント
(s=セット番号-1、nn=WAV番号、xxxxx=コメント)
SET xxx全小節のWAVセットの設定状況
(1文字=1小節、左が0小節目、文字にはセット番号-1が入る)
BMEX(BMX)拡張命令(拡張分のみ)
#PAN** **パン設定
0、設定無し、1:最左〜80:中央〜FF:最右
#VOL** **ボリューム設定
0:設定無し、1:ミュート〜FF:原音
#WAV** ***.wav
:P=**:V=**
#PAN,#VOL設定の代替法
#WAVAL** **WAV02は実際に演奏する場合にはWAV01を再生する
ものとして定義。インデックスのエイリアス登録
#WAVEFFECT**
ECHO=**
:DIST=**,**
:LENGTH=*.*
:KEY=-*
WAV01にエフェクトをかける。ECHO=** エコーを**
かける。DIST=** ディストーションを**,**かける
LENGTH=*,* 音の長さを設定にする。音程が変わら
ないようにKEY=-* 音を半音二つ分下げる(-2の場合)
ファイル:MAIN.BMX
#INCLUDE HEADER.XH
MAIN.BMXからHeader.xhと言うファイルを
参照し、ヘッダ情報を参照
#BGASIZE ***,***BGAサイズの指定、拡大縮小などの処理も考慮
#BMPEFFECT**
TRUEPOS=**,**
:TRUECOLOR=******
:RGB=**,**,**
:NEGATIVE:MONO
:SIZE=***,***
TRUEPOS=**,** 透過色にしたい色のあるピクセル座標
TRUECOLOR=****** 透過色をRGB256階調指定
RGB=**,**,** ビットマップのRGB値個別の明度を
それぞれ**%,**%,**%に調整
NEGATIVE ビットマップの色を反転
MONO ビットマップをグレースケールに変更
SIZE=***,*** ビットマップのサイズを***x***に変更
#CCODE **言語コード設定(jpなら日本)
#GRTITLE ***グローバルタイトル(言語に依存しないタイトル)
#SUBTITLE ***曲のサブタイトル
#CREATEBY ***本当の作者名
→記述が無い場合はARTIST記述からコピー
#VER ***バージョン。エディタ等で入力が無かった場合は
日付と時刻から自動で数値を作成
#EMAIL ***@***制作者へのメールアドレス
#WEBPAGE ***制作者のホームページ
#PLAYTYPE1 BM7
#PLAYNAME1 BM Part
#PLAYTYPE2 DDR4
#PLAYNAME2 DDR Part
プレイトラック数を増やし、任意に選んで
プレイできるようにする
#TEXT**テキスト(字幕の様な処理)