LoginSignup
0
0

More than 5 years have passed since last update.

BMS定義紹介~#TITLE編~

Posted at

この記事は、BMS制作についてAdvent Calendar 2日目の記事です。

BMSの定義について書いていきたいと思います。

TITLEの定義

#TITLE bmsTitle
 string bmsTitle

 曲のタイトルを定義します。bmsTitleがいくつかの半角スペースから始まるとき、これをインデントとみなして半角スペースを無視します。例えば、半角スペースを□で可視化した時に、定義が#TITLE□□□□exampleであるとき、これは#TITLE□exampleと全く同じであるということです。

 規格に書かれてはいませんが、副題として以下のフォーマットが認められています。しかし、これらが複数用いられる場合や、#SUBTITLEの定義がある場合は無視されます。 よって、この方法での副題の定義は推奨されません。

Expression Remark
#TITLE main-sub- 半角ハイフン
#TITLE main~sub~ 全角チルダ
#TITLE main(sub) 半角丸括弧
#TITLE main[sub] 半角ブラケット/角括弧
#TITLE main<sub> 半角不等号/山括弧
#TITLE main"sub" ダブルクォーテーション

LR2における動作とバグ

bmsTitleにShiftJISの2Byte文字において、ASCII文字コード上で、-,(,),[,],<,>,"と同じコードが含まれる場合、パースエラーによって譜面が認識されなくなるバグが確認されています。

例えば、にゃ [あにゃざー]をbmsTitleとして指定した場合、のShiftJISコードが0x815bであるために、これをLR2が[を正しく解釈できずに譜面がLR2上に表示されないバグがあるようです。

ほかにも、にも同じようにASCIIコードを含んでいるために、パースエラーとなります。

【参考】

ちなみにこれは別のバグなのですが、一度パースエラーを起こしたファイルは、bmsTitleを正しく編集しても、ファイル名を変えないと認識されないようです。注意して下さい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0