この頁でやること
- Visual Basic 6.0 SP6 ランタイムのバージョン確認と導入
- BMSE を展開して適当な場所に置く
- 必要ならツールバーを修正 (bmse.ini の
Resolution
キーをTrue
に) - 必要ならヘルプ導入 (bmse.ini の
Help
キーに相対パスを指定) - 必要なら DirectShow フィルタ導入 (BMSE 上で *.ogg を鳴らせるように)
Visual Basic 6.0 SP6 ランタイム のバージョン確認と導入
- 【スタート → コントロールパネル → プログラムの追加と削除】を左クリックします。
- Visual Basic 6.0 Service Pack 6 以前のバージョンの Visual Basic ランタイムパッケージが既に導入されていたら、それらをすべてアンインストールしてください。
- VB6 SP6 ランタイムの最新バージョンのみをインストールしてください
。もし最新版導入済みであれば「BMSE のインストール」に進みます。
- バージョンや内容が異なる Visual Basic ランタイムを複数導入すると、競合して不具合が発生する場合があります (DLL Hell
)。必要なものだけを導入してください。
BMSE のインストール
BMSE 自体にはインストーラはありません。レジストリも使いません。
http:// から bmse_138.zip をダウンロードして、任意の場所に展開すればインストール完了です。
bmse フォルダ内の BMSE.exe を左ダブルクリックすると、
【Options → Select Language → 】 から、使用する言語を選択できます。
- 何もかも初めてという方におすすめする設定:
-
- 【Options】 → 【Select Language】 → 【Japanese】 を選択
- 【設定】 → 【オブジェの移動はグリッドにあわせる】 を無効にする
- 【表示】 → 【ダイレクト入力枠】 を無効にする
- 【表示幅】 → 【 … 】 から 【
0.8
】 と入力する
-
「Windows 10 April 2018 Update (バージョン 1803)」またはそれ以降のバージョンの Windows 環境で、使用する BMSE の言語を 【English】 以外に変更すると、文字化けする場合があります。
その場合、デスクトップ左下隅の Windows マークを左クリックし、スタートメニューの 【設定 (歯車マーク)】 から、以下を確認してください。
【時刻と言語】 → 【地域と言語】 → 【管理用の言語の設定】 → 【システム ロケールの変更】
【ワールドワイド言語サポートで Unicode UTF-8 を使用】 がチェックされていた場合は、この項目のチェックを外してから 【OK】 を左クリックしてください。 Windows 再起動後に文字化けが解消されるはずです。
この方法でも文字化けが解消されない場合は、 BMSE を再度ダウンロードし、language フォルダの中身を新品のもので上書きしてみてください。
そこまでやっても文字化けが直らない場合、またはシステムロケールを UTF-8 のまま運用したい場合は、 BMSE の言語を 【English】 のまま変更せずに使用してください。
システムロケールが UTF-8 のとき、英数字以外の文字は BMSE を経由するとほぼ確実に文字化けします。 BMS ファイルから参照される音声や映像などのファイル名には非英数字を使わず、タイトルなどに非英数字文字が必要な譜面は UTF-8 対応テキストエディタで編集するのが無難です。
初期ファイル構成
bmse
-
lang
-
english
.ini - 言語設定ファイル (英語)
japanese
.ini - 言語設定ファイル (日本語)
korean
.ini - 言語設定ファイル (韓国語)
theme
-
default
.ini - 外観設定ファイル (bms)
default
_oct .ini - 外観設定ファイル (otc
/fp) default
_pms .ini - 外観設定ファイル (pms)
BMSE
.exe - 実行ファイル
readme
.txt - BMSE 説明書
[註 1] bmse
- BMSE 本体の設定を初期化する場合は、
bmse .ini を削除してください。 - 外部ビューワの設定を初期化する場合は、
bmse _viewer .ini を削除してください。
[註 2] error
必要なら VScroll ドロップダウンリストの表示位置を修正
おもに Microsoft Office 関連製品が導入されている環境で、
これはランタイムの脆弱性が修正済みである証拠なので、ご心配には及びません。この状態ではツールバーの行頭側アイコンをクリックできず不便ですから、以下の手順で VScroll の表示位置を修正してください。
- BMSE が起動中なら閉じてください。
- bmse フォルダ内に生成されているであろう bmse.ini を、メモ帳などのテキストエディタで開いてください。開き方はヘルプのインストールを参照してください。
-
[Toolbar]
セクション内に “Gird
”、“ Size
”、および “ Resolution
” キーを探し、これら 3 つの値をTrue
に変更してください。→
- bmse.ini を上書き保存して、メモ帳を閉じてください。
ツールバー崩壊現象に関する詳細
この現象は [CVE-2012-0158] に対する [MS12-027] (2012年4月11日) のセキュリティフィックスに起因するもので、
bmse.ini の [Toolbar]
セクション内 “Grid
”、Size
”、Resolution
” キーの値が False
のとき、本来なら非表示にされるべきこれらのドロップダウンリストはツールバーの行頭に重なって表示されます。これらのキーの値をすべて True
に変更すれば、問題は解決されます。
BMSE を使用していながら、この現象を手元で再現できない環境は、脆弱性を放置している可能性があります。この脆弱性は「過去10年間最も悪用例の多い『Microsoft Office』のバグ」と呼ばれることもあり、
。
BMSE のアンインストール
bmse フォルダを中身ごと削除すればアンインストール完了です。
サードパーティ製の Visual Basic ランタイムパッケージをインストールしていた場合、ものによっては【プログラムの追加と削除】からランタイムパッケージを削除することもできます。
ただし、 や nazobmplay
や WAview
は BMSE と同様に Visual Basic ランタイムを必要とするので、通常はランタイムパッケージまでわざわざアンインストールする必要はないでしょう。
ヘルプのインストール
ヘルプが必要な場合は任意で導入できます。導入しなくても構いません。
BMSE が起動中であればいったん閉じたうえで、ヘルプとして BMSE から呼び出したいファイルを、
次に bmse.ini を、メモ帳などのテキストエディタで開きます。
-
【スタート → すべてのプログラム → アクセサリ → メモ帳】を左クリックし、開かれたメモ帳のウィンドウに bmse.ini アイコンをドラッグ・アンド・ドロップします。
-
または、
bmse.ini を左ダブルクリック (もしくは 右クリックして『プログラムから開く』を左クリック) し、 【一覧からプログラムを選択 → Notepad を選択】します。 -
Windows 10
/8.1 /8 /7 /Vista /XP /2000 /ME /98 /95 なら、 bmse.ini を左ダブルクリックした時点で、普通にメモ帳で開かれるかもしれません。
11 行目あたりの Help=""
という箇所の引用符の間に、移動させたファイルの名前を記述します。
Help キーを書き換えたら bmse.ini を保存して、
メニューの【ヘルプ】 か [F1] キーから、指定したファイルを開くことができます。
呼んでも何も起こらない場合はファイル名の記述の正誤を確認してください。
bmse.ini の Help キー補足
BMSE.exe からのパス (経路) を指定できます。
例 1) BMSE.exe の下位に置いた BMSC オフラインマニュアル
を呼ぶ例:
前述のディレクトリ構成なら、
Help="help \bmscreator_help_8 \help.html"
経由するフォルダの名前を『 \
』で区切って記述してください。
階層の分離符バックスラッシュ『
』は、日本語版 Windows 上などで『 』に置き換えて表示される場合があります。しかしこれは表示上そのように見えているだけであり、
」や「全角の円記号 “¥” (U+FFE5)
」とは明白に異なる文字です。自分の環境で表示される区切り文字を使用してください。
- 日本語 Windows 上で、
106 /109 日本語キーボードを用いている場合: -
_ ろ 右手側 Shift キーの左隣にあるキーを、半角英数モードで入力すれば、その文字がパス区切り文字です。
- 英語 Windows 上で、
106 /109 日本語キーボードを用いている場合: -
} 」 ] む 右手側 Shift キーの左上にあるキーを入力すれば、その文字がおそらくはパス区切り文字です。
-
分離符をスラッシュ『
/
』で代用すると正常に動作しない場合があります。- スラッシュ区切りが原因で正常に動作しない可能性がある例:
-
Help="help
/bmscreator_help_8 /help.html"
BMSC ヘルプを正常に呼べなかったこの例は、たしか Windows XP SP3 + Firefox 3 での結果だったような記憶があります。
2017年に 64-bit Windows 10 + Firefox 50 で試したところ、スラッシュ区切りでも問題なく Firefox が起動しました。
Microsoft EdgeHTML 14 を既定のブラウザにした場合も同様に、スラッシュ区切りが通用しました。
例 2) BMSE.exe の上位を辿ってナナシグルーヴマニュアル
を呼ぶ例:
このディレクトリ構成のとき、
Help=".. \.. \player \nanasi \nanasi_manual.chm"
『 ..
』 (ピリオド 2 個) は「1 階層上位のディレクトリ」を意味します。
ファイル参照ダイアログでの「1 つ上のフォルダへ」クリックと同義です。
- BMSE の readme.txt には、
“bmse.exe と同位、もしくは下位のディレクトリに置かないと正常に実行できません” と明記されています。上位ディレクトリを経由するヘルプのパス指定は正常に動作しない可能性があることを、あらかじめご了承ください。 (関連項目) -
『
.
』 (ピリオド 1 個) は「同位のディレクトリ」を意味します。Help=
"bmse_help.chm" Help=
".\bmse_help.chm" どちらも「BMSE.exe と同じフォルダにある bmse_help.chm」を参照します。
『 ..
』 (ピリオド 2 個) と間違わないようご注意ください。 -
"
D:
"\bms \player \nanasi \nanasi _manual .chm のような、コンピュータの最上位階層からの完全なパス名は
Help
キーには指定できません。必ず BMSE.exe からのパス を指定してください。
パスについて補足:
Help
キーに指定するパスが適切であれば、どんなファイルでも呼び出せます。ショートカットを経由すればコマンドライン引数も渡せます。
- BMSE で F1 キーを押すと、
uBMplay が特定の譜面を再生する例:
- uBMplay のショートカットを作り、そのプロパティを開く
- “リンク先” のパス末尾から、半角スペース区切りで任意の引数を設定する
-
そのショートカットを任意の場所に置き、
Help
キーから参照する(ショートカットは
Help="ubm_nspr.lnk"
のような指定も可)
つまり Help
キーは外部ツール枠のひとつとしても利用できるという話でした。
DirectShow フィルタのインストール
BMSE には音声プレビューという便利な機能があります。オブジェクトに WAV ファイルが定義されていれば ( #WAV** example.wav
)、そのオブジェクトをメインパネルや定義リストから選択した時に音を鳴らすことができます。
ここで鳴らせる音声形式は、
BMSE の readme.txt には “サポート対象外” と明記されていますので、以下は自己責任でお試しください。
Ogg Vorbis を BMSE 上で鳴らせるようにする
-
もし古いバージョンの RadLight Ogg Media DirectShow filter
、
Open Codecs (Ogg Codecs) 、
OggDS 、あるいはそれらに類する Ogg DirectShow フィルタが既に導入されていた場合、それらをすべてアンインストールします。
-
RadLight Ogg Media DirectShow filter 1.0.0.2
をダウンロードします。
(公式サイト 消滅につき、二次配布サイトを参照しています。二次配布先も消えている場合は、DuckDuckGo
などから各自検索してください。)
-
Windows Media Player や BMSE、その他 DirectShow フィルタを利用するアプリケーションをいったんすべて閉じます。
-
ダウンロードしたアーカイブを展開し、インストーラを実行します。
-
BMSE 上で Ogg Vorbis を鳴らすには、
#WAV** example.ogg
と定義します。拡張子が異なると音を鳴らせません。
鳴らせるようになるかどうかは環境にもよります。古いバージョンの OggDS や Open Codecs (Ogg Codecs) ではエラーが出たもあります。
筆者環境 (64-bit Windows 10) では、 で問題なく Ogg を再生できており、
動画やその他の codec との相性もあります。たとえば 0 は VP6 と競合し、
を入れ直すか、または以下の手順で解消します。
- 【スタート → すべてのプログラム → アクセサリ → コマンドプロンプト】を右クリック → “管理者として実行”
-
- 32-bit Windows なら、以下のコマンドを実行:
-
regsvr32 /u vp6dec.ax
- 64-bit Windows なら、以下のコマンドを実行:
-
cd C:\Windows\SysWOW64
regsvr32 /u vp6dec.ax
- コマンドプロンプトを閉じる
BMSE 上で ogg を鳴らせなくてもデメリットはほとんどないので、いろいろ試してもだめなら潔く諦めることをおすすめします。
RadLight Ogg Media DirectShow filters や Open Codecs (Ogg Codecs)
のアンインストールは、
OggDS のアンインストールは、
C:
】 もしくは 【C:
】あたりにある OggDSUninst.exe を実行します。
その他の形式を BMSE 上で鳴らせるようにする
Windows 98 以降の場合、#WAV** example.mp3
” のように定義します。
Direct Show Filterについて [ FINALSTREAM ] あたりも参考にどうぞ。
注意点は以下の通りです。
-
DirectShow フィルタはむやみに入れると環境を破壊する恐れがあります。対象形式に対して必要な一種類だけを導入してください。
うまく鳴らない場合、動画方面と競合している可能性もありえます。行儀が悪いソフトもあるし、コーデックパックなど下手に導入していると、不具合の原因切り分けが困難になります (アンインストールすると余計ひどくなるなんて話もあるくらい)。余計な導入は極力控えるべきです。
- BMSE 上で鳴らせたとしても、
BMS 再生ソフト側がその音声形式に対応しているとは限りません。全ソフトで鳴らせる形式は WAV のみです。 -
比較的新しい BMS 再生ソフトの場合、定義名とファイル名で拡張子部分が異なっていても、名前部分が同じであればそれを自動的に読み込んでくれます。たとえば “
#WAVxx Eg.wav
” という定義があったとき、実際のファイルは Eg.mp3 や Eg.ogg であっても構わないわけです。しかし BMSE にその機能は無いため、
「定義名と同名かつ別拡張子」のファイルは単音プレビューを行いません。譜面作成時にそれをやられても逆に困る気もしますし、素直に諦めてください。
「譜面には *.wav
として定義されているが、対応する同名ファイル群の拡張子は *.ogg となっており、かつそれが実際に Ogg Vorbis 形式の音声ファイル」である場合、以下のいずれかの方法で BMSE 上でも鳴らせるようになります。
-
譜面をテキストエディタで開き、
.wav
を.ogg
にすべて置換する。(手早く解決しますが、元々の譜面ファイルを改竄するため IR などで不都合が生じます。置換する前に元譜面をバックアップしておきましょう。)
-
もしくは、
ogg ファイルをすべて wav 形式に変換 (デコード)する。 (uLilith
や oggdropXPd
などに ogg を全部放り込むなり、
LR2 の変換機能や oggdec
を利用するなり。)
古い形式や珍しい形式でエンコードされた音源は、
DirectShow フィルタは必ずしも万能ではないため、テキスト置換よりは直接 WAV 化したほうが確実です。ただしもちろん、相応に容量は嵩みます。
oggdec について補足
最近の BMS シーンでは、 を同梱する例も見かけます。これはバッチファイル経由で ogg → wav の変換を実行するものです。たとえば以下の内容のテキストファイルを用意し、拡張子を *.txt から *.bat に変更したとします。慣例名は _decode.bat です。
oggdec *.ogg
EXIT
この *.bat と oggdec.exe を共に対象作品フォルダに置いたうえで、
デコード完了後に変換後の wav ファイルだけを残したい場合は、
oggdec *.ogg
del *.ogg
EXIT
バッチファイルは書き方次第では悪意ある内容も実行させることができてしまうので、ユーザ側は実行前に中身を一応確認するべきです。
- Windows 95
/98 /ME では、古い oggdec しか動作しません。期待通りに動作する保証もありません。