音ブロ製作キットができました!(バグがいっぱい!触る時は気をつけて!)

音ブロック回路製作キットを作りました。
といっても素人作なのであしからず。
デバッグも少ししかしていないのでバグがあるかもしれませんが、許してください。なにかあれば報告してくれれば対応します(twitter:@minecraftRS1)
dominoというよりUI的にはsynthesiaに近いので、意外と慣れないかも。
WEは必須級なので先に導入を済ませることをおすすめします。
使用は自己責任でお願いします。

導入

以下からzipファイルをダウンロードし、展開したもの(MIDI_sequencerというファイル)を導入したいディレクトリのsavesフォルダの中にいれてください。
動作確認は1.14.4, 1.16.5でのみしていますので、基本的には1.14.4~1.17で動作するはずですが、ほかのバージョンで使うときには注意してください。
また動作確認済みバージョンでもmodやほかのdatapackを導入している場合はそれと競合する場合があります。競合した場合は一度それらを無効にしてからお試しください。

ワールドにはじめて入るときに1.14.4以外では警告がでてきます。読み込むことはできますが、念のためバックアップを取ることをおすすめします。

ワールド紹介

まずはワールドを紹介します。さっさと作りたいという方はかなり長いので作り方まで飛ばしてください。ただし単語などはここですべて書いているのですこしわかりづらいかも?

全体

このワールドはベースシークバーピアノロールLRボリューム、そして小節目安で構成されています。
小節目安は左右にあり、そのほかはそれぞれひとつずつです。

全体

下段にあるのがベース、上段は左から小節目安、シークバー、ピアノロール、LRボリューム、そして小節目安となっています。
上段は1280+16ブロック続いています。
うち1280ブロックは実際に製作できる長さ、16ブロックは余白となっていて、ここで製作をしても反映されませんので注意してください。

プルパァブロック
レッドストーンブロック

プルパァブロックは製作範囲上限の位置で、レッドストーンブロックは製作範囲上限の64ブロック前の位置に置かれています。

色的に逆ではないのかと思いました。

編集中の俺

またメインモジュールによってviewer modeに切り替えることもできます。
このモードは再生に特化していて、シークバーと大きめ(6オクターブ)のピアノロール、小節目安(左)のみを表示します。
詳細はピアノロールの紹介にて。

viewer mode 採譜済み

ベース

ベースはほぼすべてのUIがあるところです。

トラック情報
ドラムのトラック(1.3にて削除予定)

このUIはトラック情報を表示する場所です。合計32トラック+ドラム5トラック(1.3にて削除予定)を扱うことができます。dominoで言えば左のトラック情報のところにあたります。
ここでは現在表示されているトラックをボタンを押すことでそのトラックに変更することができます。
またレバーによって再生時にそのトラックを再生するか否かを変更することもできます。
さらに今草ブロック(grass_block)やバリアブロックがあるところをほかの音源のブロックに変更することでそのトラックの音源を変更することができます。

手動でバリアブロックを壊しておきなおす必要があります。

使用できる楽器

その隣には使うことのできる楽器を表示しています。これ以外は使うことができませんが、いまのところ実装されたすべての楽器を使用することができるのであまり困ることはないかと思います。
また、今後私がやる気になればほかの効果音等を随時追加していきます。

このモジュールは説明の都合上、あとにまわさせていただきます。

小節目安

小節目安は読んで字の如く小節の目安を示しています。

上が小節目安

緑は8ブロック、ピンクは12ブロック、青は16ブロックごとに置かれています。

シークバー

中央が見づらいですがシークバーです。

シークバー

シークバーは再生時に非常に重要です。というのもこのシークバー、実際のものとは少し違っていて、再生する場所、つまり曲の終わりを設定する場所でもあります。
再生位置を指定するには薄灰色のコンクリート(light_gray_concrete)と薄灰色のガラス(light_gray_stained_glass)を使います。再生開始位置は常に原点からなので終了位置を任意で設定するわけですが、終了位置はシークバーに薄灰色のガラスを置くことで設定できます。そしてその間を薄灰色のコンクリートで埋めることで設定を完了することができます。
薄灰色ガラスがあったことを検知して再生を終了するので、それまでに薄灰色ガラスが一切ないようにしてください。
またこのように再生中は再生したところが赤色になり、現在位置がposとして表示されます。(赤色になるのはブロック単位です)

ピアノロール

ピアノロールは言うまでもなくピアノロールです(?)。

editor mode
viewer mode 採譜済み

マイクラの音ブロックに合わせて2オクターブ+1音を表示、編集することができます。実際のピアノよろしく左が低音です。つまりこのワールドはz軸が時間軸なので、dominoよりもsynthesiaに近いピアノロールをしています。
また音域の変更はできません、音ブロックの音域そのままです。
そのためすこし不便に感じるところもあるかもしれませんが、リソースパックなどで対応することができます。
当然ですが同じ音源であれば複数音を同時にならすことも可能です。
しかしviewer modeではベースのランプが光っているトラックすべてを表示するので2オクターブでは重なるところも多く見づらいため、ベースの書見台を使って-1~+5(オクターブ)の間で表示する音階を設定し表示できます(実際の音は変わりません)。

見易さを優先したためこの状態で編集はできません。編集する場合は一度viewer modeをオフにしてからトラックを選択して編集しましょう。
また、viewer modeはドラムを表示しません。将来的にドラムを表示させるようにします。

LRボリューム

これも読んで字の如くボリュームを操作するモジュールです。
横むきに見ているため上側がLで下がRですが、実際は左にL、右にRで、赤色が一番音量が大きく白色が一番小さいです。
立体音響をかじっている人ならわかるかと思いますが、赤がプレイヤーと同じ座標、白が45ブロックはなれた座標から発音されます。
またLRで分けていることからもわかるように、左右で音量をそろえる必要はありません。たとえば右を赤に、左を白にしたときはほとんど右からなっているように聞こえます。
つまりこれによってパンを作ることができます。ただし仕様上音ごとに音量を設定するわけではなくトラックごとなので和音の音ごとに音量を変えるといったことはできません。

メインモジュール

このモジュールは今までのモジュール全体に関与します。
金ブロックの上にあるボタンは再生ボタンです。
ダイヤモンドブロックの上にあるボタンは選択しているトラックに保存、
鉄ブロックの上にあるボタンは読み込みをすることができます。
読み込みも現在のチャンネルのため、実質やりなおしボタン(undoではない)ですね。
エメラルドブロックの上にあるボタンはviewer modeの切り替えレバーです。
ラピスラズリはリフレッシュです。あまり使わないとは思いますが。
これらのインプットは入力したときにスペックによっては多少重くなることがあります。
また中央の書見台でBPMを変えることができます。BPMガイドもついているので活用してみてください。

使い方

いよいよ使い方です。
使い方はいたって簡単、といっても私がdominoに慣れてるからなだけかも知れませんが…。

準備

メインモジュールの後ろにある灰色のコンクリートのボタンを起動しましょう。
そうすると"book player"という本と音ブロック、そしてそのほかがもらえると思います。

book playerの中身

この本、重要なので捨てないでください。これで準備は終わりです。意外と簡単でしょ?

採譜

採譜、といってもdominoに打ち込むように鳴らしたい音、時間に特定のブロックをおいていくだけです。その特定のブロックがさっきわたされた音ブロックなわけです(画像は横向きのため上下が反転しています)。

ピアノロールに音ブロックを置いたら次はボリュームです。ボリュームは変化していなくてもピアノロールに音が配置されている場合はおいてください。場合によっては音が聞こえなくなる可能性もあります。

採譜が一番時間がかかるかと思いますが、音ブロックをクリックしまくるよりは少ない労力ですむと思います…。

保存と読み込み

せっかく作ったのにsaveしないで別のトラックをloadしてしまってはまさに水の泡です。ということで保存したい場所の最後のところまで行きましょう。z座標が最後の場所であればxとyはどこでも大丈夫です。それでは手元の本を開いて、〈 coordinate 〉をクリックしましょう。するとピアノロールの左上、(+x,+z)の位置にcoordinateという表示が出るかと思います。

この操作は座標が変わらなければ今後はしなくて大丈夫です。そうしたら今度は本を開いてsave、もしくはメインモジュールにもどってsaveのボタンを押しましょう。

再生

再生するにはまずシークバーの設定をしましょう。これももちろん簡単です。シークバーの再生位置まで薄灰色のコンクリート(light_gray_concrete)を置く、ただそれだけです。
これは手置きでもいいのですがworld editをつかったほうがいいと思います。そして再生終了の位置に薄灰色のガラスを置けば再生の事前準備は終わりです。

その次にsaveをして更新を反映させましょう。saveしなくては作っても再生はできないのです。

最後にBPMを調整します。メインモジュールの書見台を開いてBPMを調整することができます。

ただしページ10以降のBPM(例:♩=4blockのときBPM=150より上)はスピード的に再生に不都合が生じることが予想されるので実装することはないと思います。
これも対処法がみつかり、可能であればアップデートにて対応します。

てかアプデ案件多くない?

編集中の主

それが終わればはれて再生できるようになります。
書見台の手前のボタンを押すと上空にtpされ、すぐに再生がはじまります。ほんとにすぐ(1gt後)なのでちょっと慣れないかも…。

現在は複数の曲を保存することはできません。これもできたらアプデで対応したいところ…。

発展

  • ボリュームを左右で同期させずにコントロールをすることで立体音響を作ることができます。このdatapackの性質上精度は低いですが。

  • ピアノロールとボリュームの下には元データが格納されています。これを全部選択してコピーをすることで複数の曲を同じワールドに保存することができます。

  • 初音ミクの消失の冒頭など三連符の多い箇所は別のmodを導入、コマンドブロックでコマンドを実行することで作りやすくすることができます。

免責事項

自作発言をしなければ自由に使ってもらって大丈夫です。インターネット上に公開するときはできればこのnoteのリンクと作成者のリンク(twitter:@minecraftRS1)をどこかに貼ってくれるとうれしいな。

アップデート予定

やる気があれば以下(重要度順)を順次実装していきます。やる気さえあれば。

  • リソースパックの配布

  • 軽量化

  • 操作の実行ログの表示

  • BPMの範囲拡大

  • 曲全体の別の場所への保存、読み込み

  • ほかの音源の使用(実装予定:entity.experience_orb.pickup,block.glass.break)

  • コマンドによる高度な操作

あとがき

こんなもの作っておいて、これだけのことを書いておいて言うのはなんですが、手で一個一個音ブロックを置いていったほうが明らかにいいですし、これで慣れないほうが以降の音ブロライフを豊かにできます。これはあくまで補助的なものに過ぎません。が、これで少しでも音ブロックの沼に足を踏み入れてくれる人がいることを願っています。
いや、そもそもこんなやつ使う人なんているんでしょうか。
できるだけ音ブロ製作がやりやすいようにつくりはしたのですが、私の力量不足ゆえ使いづらいところもあるかと思います。許してください。こが限界なんです。

宣伝

youtubeに不定期で動画を出しています。

ほかの動画は概要欄、またはチャンネルから。
twitterでもたまに、たまーに音ブロック関連のツイートをしています。

この記事が気に入ったらサポートをしてみませんか?