ゲーム創作系サイト

PC-98版ツクールシリーズ仕様MML変換器 ver.0.5.0

スクリプトの説明

今回のスクリプトは、昔のツクールの MUSIC.COM 用に作成されたMMLデータを比較的メジャーな音源ドライバ用に移植しよう、と思って作成したものです。

MMLとは Music Macro Language の略で、テキストベースで音楽を記述するデータ記述言語のことです。

1980~90年代頃、PC-98時代のRPGツクールはFM音源と MUSIC.COMミュージックドットコム という音源ドライバソフトによってBGMが演奏されていました。 この MUSIC.COM に独自のMMLの文法で記述した音楽ファイルを渡すと、 その記述の通りに MUSIC.COM が演奏してくれるというものでした。

さてこのMML、音源ドライバ毎に文法が異なります。
当時の他のゲーム会社もそれぞれFM音源でBGMを演奏するために「FMP」「PMD」「MUCOM88」等色々な音源ドライバを開発されていたのですが、 それぞれMMLの文法はバラバラです。 つまり同じ曲を演奏するにも使用する音源ドライバによって異なる文法で記述したMMLデータが必要となります。
MUSIC.COM用だったMMLデータを他の音源ドライバのMMLにいわば翻訳するのが、このスクリプトです。
完璧には程遠い出来ですが…

基本的には自分用に作ったもので、当時のMMLデータをまだ持っている人向けのスクリプトとなります。 一応PC-98時代のMMLデータなんて持ってない人でも楽しめるよう、変換で遊ぶためのサンプルとして かつてソフコンに収録されていた曲データの数々をアップロード……というわけにもいかないので、 代わりに大昔に作成した私のへっぽこな曲データをいくつか用意しました。 (当時のものから変換用に多少修正しています)

変換元


結果


  
  • うまく変換できなかったり本来と違う音になる場合もありますので、あまり期待しないでください。
  • {(数字)}となった箇所はポルタメント指定です。 (数字)は64分音符単位の長さとなっていますので、各MMLの文法に従って手入力で修正してください。
  • PSGのソフトウェアエンベロープはMMLの仕様が違う為、完全再現はできません。
  • MUCOM88 windowsでは極端に長い行があるとアプリが落ちるのを確認しています。適当なところで行を分割すれば通ると思うので、これも手入力で対応してください。
  • デチューンやビブラートは数値の基準がよくわからないので同じ音ではない可能性が高いです。
  • 何かご意見等ありましたらX(@spellyon)へどうぞ

リンク