Try   HackMD
tags:2022

えびです - .BMSONのザックリとした作り方

2024/11/29追記 : この記事は情報が古いです!こっちの方が参考になります!☞ BMSON経由でかんたんBMS製作 - ネビュラ今子

えびです。
この記事は2022/10/01に書かれたものです。

手を動かしながらだと多分1時間くらいで読み切れると思います。

何か間違ってたりヤバいこと書いてたら
Twitter@ebideath にDMかリプライください…🙇‍♂️よろしくお願いします。

サンプルデータあります

ダウンロードして使ってください。

0. そもそも.bmsではなく.BMSONで作るメリットって?

メリット:

  • 音切りが爆速になる ヤバい
    • MIDIを使わない場合、.bmsと比べて音切りの手順が単純
  • 定義数が実質無限
  • ステムデータ(とMIDI)だけ用意すればいいのでDAWを介さず準備が楽
    • 第三者が音切りを助けてあげられやすい
  • ファイル数が少ないので容量が軽いし、遊ぶときに読み込みが早い
  • JSONをもとに作られたフォーマットなのでJSONが扱える人はいじりやすい

デメリット:

  • 新しい音切りの手順を覚えるのがだるい
  • まだ人気がないのでツールが出そろってない、不安定
  • Q&AがBMSに比べて圧倒的に少ない、調べても情報が少ない
  • LR2では遊べない!そのためbeatoraja導入不可避
    • 遊べる人が減るためBMSイベントではBMSONファイルのみの登録だとインプレが少なくなりがち
  • 差分譜面を作る人にとってはBMSファイルの方がやりやすいらしい

間違ってたらgomen

1. BmsONEをダウンロードして使い方を読む

https://github.com/excln/BmsONE/releases/tag/beta_021

(20240122追記)
現在、BmsONEが公式サイトからダウンロードできない状態みたいなので、取り急ぎ僕の持ってるバージョンのものを二次配布します。
免責事項に従って内容は一切変更してません。

BmsONE_win64_b021_20170923.zip
https://drive.google.com/file/d/1BSa60vBxb2-lpvVHyGROi05D-UshMeVT/view

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

ダウンロードして起動

https://excln.github.io/bmsone.html

↑ここの2.2、2.3を読んでBmsONEを触りましょう、BmsONEの使い方がザックリわかるはずです
ページ最上部にあるサンプルデータ使いながら見ると良いかもです

BmsONEの使い方がわかったら次へ

2. 必要なもの用意する

↓全部そろえるとこんな感じ

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

2.1 曲のステムデータ(wav)について

(サンプルデータはこの工程は済んでいます)

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

各トラックを書き出してステムデータを用意するときは、

01_xxx.wav
02_yyy.wav
03_zzz.wav
と、分かりやすいように↓のような名前を付けておきましょう

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

この時、ドラムパートはキック、スネア、ハイハットなど叩きたい音ごとに分けておきましょう

2.2 ステムのMIDIデータ

(サンプルデータはこの工程は済んでいます)

↓これはMIDI出力前のプロジェクトファイル
これらをイイ感じのMIDIに調整して出力します

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

WAVのループ素材(水色のトラック)は切りたいリズムに合わせて、↓のようにMIDIトラック(赤色のトラック)を用意しておきます

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

メロディーなど上下するMIDIは1直線に直しておきましょう

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

↑これを

↓これにする

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

CUBASEだと MIDI > 移調設定 > 範囲外のピッチを整理 > C4-C4
で1発でMIDIを1直線にできます

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

他のDAWでも同じ機能があるかは知りません

また、アルペジオなどもループ素材と同様、切りたいリズムに合わせて、
MIDIトラックを用意しておきます

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

↑これを

↓これにする

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

で、全てのMIDIが一直線になったところで、

1つ目のMIDI(01_xxxトラックのMIDI)をすべてC4に、
2つ目のMIDI(02_yyyトラックのMIDI)をすべてC#4に、
3つ目のMIDI(03_zzzトラックのMIDI)をすべてD4します。

全文同時に表示するとこんな感じ。

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

各トラックのMIDIをまとめて書き出します。
ここではstem.midとしておきます

CUBASEのMIDI書き出し方法はこちら↓
https://sleepfreaks-dtm.com/for-advance-cubase/smf-3/

余計な情報はオフにして、ロケーター範囲で書き出しましょう

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

書き出したMIDIは一度CUBASEに読み込んで、正しく書き出せているか確認した方がいいです
サンプルデータの.midを参考にしてください

3. DOMINO

DOMINOを起動して、stem.midをドラッグアンドドロップします。

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

MIDIデータを解析してコントロールマクロを復元しますか?
と聞かれるので、はいを選択

読み込めたら、トラックのプロパティを押します

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

編集対象から各トラックを選択し、数字とチャンネル番号が同じになるよう変更させます

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

↓これは数字とチャンネル番号がズレてるのでダメです

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

チャンネル番号が調整できたらOKを押し、
SMF書き出しからmidファイルを書き出します

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

ステムデータと同じフォルダにstem.midとして書き出してください

4. MID2BMSON

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

MIDIに合わせてBMSONファイルを出力するソフトです

ここではザックリ説明しますが、困ったら付属のreadme.txtを読んでください。

zipをダウンロード、解凍した中に、in_json_template.json があるのでテキストエディタで開きます。(わからなかったらメモ帳でOK)

開いたらこんな感じ。
この↓緑色のとこだけ書き換えます。

midi_fileの部分は先ほど書き出したstem.mid

bmson_fileはoutput.bmsonに(なんでもいいです)

wav_filesは用意したステムデータの名前を入れます。「,」の数に注意

オレンジ枠の中身はコピペでwavの個数に合わせて数字をコピペ、keys_offset_inはすべて0にしてください。

🦀

in_json_template.json が編集できたら、ステムとMIDIがあるフォルダに保存してください

↓こんな感じ

この状態で、in_json_template.jsonmid2bmson.exeにドラッグアンドドロップします。

↓のようなウィンドウが出てきて、音切りに成功したら
output.bmsonが生成されているはずです。

エラーが出たらin_json_template.json に記述ミスがあります。
wavの名前が間違えてるとか、midファイルがないとか…
エラーとread.meをよく読んでみてください。

5. BmsONE

BMSONファイルが生成できたら、BmsONEを起動してBMSONファイルをドラッグアンドドロップで読み込みましょう

こういう画面になってたらおおむね音切りは成功です。

あとは微調整です。たぶんこれはMID2BMSONかBmsONEのバグなんですが、
wavの読み込み位置がズレてる場合があります。。

その時は ↓のgifのように、BmsONEの左上のペンマークをONにし、
Shiftを押しながら、wavの読み込み位置がズレてる音を最初に合わせてあげます。

あとは、ズレてるwavの一番最初のノートをいったん消してもう一度クリックでおいてあげると波形が正しく読み込まれます(説明が難しい)

あとたまに正しく音切りの位置がMIDIに沿って読み込まれてない場合があるので、
その時は、
https://excln.github.io/bmsone.html
ここの2.3の要領で音切りの位置をマウスでぽちぽち追加してあげればOKです。

おわり

ざっくり以上の作業で仮置きはできました。
あとは譜面を作ったり、たぶんプレイモードが24keyになってるので7Keyにしたり、タイトルや難易度を打ち込めば完成です。

様子

なお、紹介した手順だと一度に最大16トラックまでしか音切りできないため、
16トラックを超える場合は分割して生成して手動で(テキストエディタとか使って)BMSONを合体させるしかないっぽいです。

頑張って16トラックに収めるか、テキストエディタとにらめっこするか・・

https://twitter.com/Ogu3rd/status/1574901713214984192

あと、現状BmsONEだとBGAの設定ができないみたいなので、BMSONファイルを直接テキストエディタで開いて設定してやる必要があります
↓の方法を参考にしてください。
https://twitter.com/ebideath/status/1577120500253270017

BmsONEは7keyに設定すると7key以上の音を表示しないので、わざわざ14keyで開いて最後に7keyに戻す、みたいな手間が要りますね…
あと24keyと7keyはキーの順番がすこし違うみたいなので注意です

それと、BMSONプレイヤーはfbmsonplayというものを使えばuBMPlayで再生できるらしいのですが、僕の環境ではuBMPlayの起動にエラーが出まくるのでまだ試せてません。。。
https://w.atwiki.jp/laser_bm/pages/110.html

この記事がきっかけで少しでもBMSONが普及したら幸いですわー