白黒地帯

ゲームとか色々、Twitterに書ききれないことなど。

【Starbound】midiをabcに変換して演奏!

最近はStarbound/スターバウンドにはまってます!
今回はタイトルの通り、midiファイルをabcファイルに変換してStarbound内で好きな曲を演奏するやり方について書いていこうかと!

ググるとMaestroというソフトを使うやり方が結構出てくるんですが
Starboundで演奏するabcファイルに限っては「Starbound Composer」がかなり完璧にやってくれるのでオススメしたいです!

Starboundの演奏システムについて

Starboundでは「楽器」カテゴリのアイテムを手に持って使うことで演奏を行うことができます。
使うと曲リストが表示され、選択すると演奏開始。

演奏と言っても別にボタン入力が必要なわけではなく自動再生なのですが…
演奏データ(abcファイル)を読み込んでいるので、単に入れた曲が流れるわけではなく、使った楽器の音色で再生されます!
無音部分では楽器の持ち方が変わったりと、なかなか雰囲気出ます。
やったことはないんですが、マルチだと合奏もできるとか…!

せっかくなので(?)演奏サンプル用意してみました。


abcファイルとmidiファイル

Starboundにabcファイル(演奏データ)をインポートさえすれば、好きな曲を演奏できます。
abcファイルは曲のテンポや音符の並び・長さなどを記述したテキストファイルです。
楽譜をそのままファイルにしたようなものですね。
ただ、abcファイルは配布されているサイトなどもありますがあんまり一般的な形式ではありません。
同じ用に音符の並びや長さを記述したファイルとしてはmidiファイルが一般的です。
なので好きな曲を演奏しようと思ったらmidiファイルを探したり作ったりして用意し、abcファイルに変換してStarboundにインポート…が一番実現しやすい流れかと思います。
今回はまさにそのやり方を書いていこうと思います。

midiファイルをabcファイルに変換してStarboundで演奏まで

midiファイルを用意

演奏したい曲のmidiファイルを用意しましょう!
ここは自分で作ったりググって探したり各自よしなに。

自分は音楽関係のスキルはからきしなので、他の人が作成したmidiを使わせてもらいます。
今回はこちらを使わせていただこうと思います。
maoudamashii.jokersounds.com
魔王魂さんは他にもmidi素材が豊富です。
midi」でサイト内検索するといい感じです。

ちなみにJ-POPのmidiYAMAHAさんで買えたりします。
ヤマハミュージックデータショップ(YAMAHA MUSIC DATA SHOP)
安心のクオリティで200円ちょっととかです。
Starboundには関係ないですがカラオケデータとかコード進行データとか入ってるっぽいのに200円ちょっとしかしないの安いのでは!?
今の所検証したのは1曲だけですが、この後の手順で無事Starboundにインポートできてなかなかいい感じに演奏できました。
個人利用なら問題ないと思いますが実況とかで流したときは厳密には権利がアレな気がするのでそこは各自上手くやってください(?)

abcファイルへ変換

midiをabcファイルに変換するのに、冒頭で言ったとおり「Starbound Composer」を使っていきます。
こちら↓からダウンロードしてzip解凍して中のexeを起動してください。
www.starboundcomposer.com

起動したらmidiファイルを開きます。
ドラッグ&ドロップでOKです。

パート選定

midiファイルはパートごとに分かれた演奏データを持っていますがabcファイルにするにあたり1つのパートにしなければいけないです。
また、Starbound内では1種類の楽器で演奏するのでパーカッションも含めた全部のパートを含めるとだいたいうるさくなってしまいます。
なのでStarbound Composer上で出力するパートを絞る作業をしていきます。

f:id:Spoonail_Iroiro:20190923104733p:plain

パートごとの演奏データ表示の左端にある音量アイコンをクリックするとそのパートをミュートできます。
画面上部の再生ボタンで現在ミュートになっていないパートだけで試聴できるので、試聴を繰り返しつつ出力するパートを決めていきます。

オススメのやり方は、最初にCtrl+aですべてのパートを選択して「(Un)mute Selected」ボタンで全部ミュートし、曲を進めながら必要なパートだけミュートを解除していく方法です。
ちなみに全選択解除はCtrl+Shift+aです。

オクターブ調整

ここは好みになりますが、パートの左側の鉛筆マークをクリックしてパートの音の高さなどの調整ができます。
f:id:Spoonail_Iroiro:20190923110721p:plain

編集画面が開いたらTransform>Transposeで半音ずつパートの音階を変更することができます。
+12で1オクターブ上、-12で1オクターブ下になるので実際演奏してみたら高すぎ!低すぎ!って時に調整するといい感じです。

f:id:Spoonail_Iroiro:20190923110951p:plain

f:id:Spoonail_Iroiro:20190923111003p:plain

出力

出力するパートを決めたら、まずは出力しないパートを削除します。
パートの左側のチェックボックスをクリックして選択し、「Remove Selected」で一括削除できます。

f:id:Spoonail_Iroiro:20190923110259p:plain

次にCtrl+aで全選択、「Merge Selected」で各パートを合成した1つのパートを作ります。
ボタンを押すと一番下に合成したパートが追加されます。

f:id:Spoonail_Iroiro:20190923110425p:plain

そのまま「Remove Selected」を押し、合成に使った各パートも削除して合成パートだけ残るようにします。
そして左上の「Save All」でabcファイルを保存すれば完了です!

f:id:Spoonail_Iroiro:20190923110525p:plain

所定フォルダへの配置

abcファイルをStarboundのabcファイル置き場に配置します。
場所はStarboundのインストールフォルダからassets>user>songsのフォルダです。
私の場合

C:\Program Files (x86)\Steam\steamapps\common\Starbound\assets\user\songs

でした。
(環境によってStarboundのインストールフォルダが違う可能性があります。)
すでにゲームに最初から入っているabcファイルが配置されているのでフォルダを開くとすぐわかると思います。
Steamでプレイしてる人はライブラリからStarboundのプロパティを開き、「ローカルフォルダを開く」を選ぶと早いと思います。
f:id:Spoonail_Iroiro:20190922195113p:plain

f:id:Spoonail_Iroiro:20190922200116p:plain

ゲーム内で演奏

あとはStarbound内で楽器(Musical Instrument)カテゴリになっているアイテムを使って演奏するだけです!

f:id:Spoonail_Iroiro:20190923115517p:plain

曲リストに配置したabcファイルの名前があるので、それを選択すると演奏開始です。

もし配置したはずの曲が出てこない!というときは配置フォルダが間違っていないか確認してください。
また、配置フォルダから曲リストを作るのはStarbound起動時に行われるようなので、Starboundを起動したままabcファイルを配置してもリストには出てきません。
その場合は一度再起動してください。

ややこしいのですが、曲リストは起動時に作られますが曲のデータは演奏時に読み込まれるので
すでにリストにある曲のabcファイルを更新するのはStarboundの再起動なしでできます。
細かくゲーム内で試聴しながら調整したい場合などは、test.abc等の名前で曲を配置しておき、上書きで更新して試聴を繰り返すとやりやすいかと思います。

まとめ

演奏楽しいよ!
意外とStarboundはRPなプレイヤー向けかもしれないですね。

Maestroでabcファイル出力するやり方をみっちり書いてたらStarbound Composerが優秀すぎて全ボツになったけど泣かない(