ツール公開

複数のwavファイルの音量を一括して変更するツールを公開してみました。
ついでに雑な両端無音削除も可能。

今後作るゲームであると便利そうなので作ったものです。
別に他の音声編集ソフト(SoundEngineとか)を使えばいい話ではありますが、D&Dでファイルを指定したかったとか何とか。

GUIの表示にかなり骨が折れたので、やや中途半端な形で見切り発車として公開しました。
作るのに掛かった時間の内訳としてはGUI:24ビット読み込み:その他=8.5:1:0.5くらい。
自分用なら見た目は適当でいいので、公開用にしっかり作ろうとすると手間が大幅に増えてしまいますね。

一往8/16/24/32ビットのwav読み込みに対応していますが、しっかり確認していないので不具合はあるかと思います。特に24ビットの読み込み。
24ビットに関してだけはデータ構造が0xZZYYXXの3バイトで一組になっているので読み込みがやや面倒でした。使う機会があまりないのはそう。
他の環境での動作確認も行っていないので、ランタイムが足りないとかもあると思います。

見切り発車のため、近いうちに更新します。多分。

サイトに公開したもののうちで前回公開した「Fine:Fector」の更新日を確認したところ2012年。作りかけて放置しているものは幾つか増えている一方、5年ほど何も公開するものがなかったわけですねー。
しかも今回はゲームではなくてツールなので、ページの作りも変える必要がありそうです。
取り敢えずトップページのみ「GAMES/TOOLS」に変更して、GAMESページの方は後ほど修正しておきます。

SSL対応

現在このサイトはロリポップのサーバーを使用しています。
先日そのロリポップが無料のSSL通信に対応したということで、早速このサイトでも設定してみました。https://soach-box.com。

詳しいことは知りませんが、Let’s Encryptが導入されているようです。HTTP2を使えるようになるので通信速度も上がるとか何とか。

ロリポップと言えば昔からトップページにいたロリポおじさん。先日のデザインがリニューアルされた際に溶鉱炉に沈められたというニュースがあったものの、今回の件でHTTP/2の説明ページを見てみたらそれらしい人物が居ますね。ウェルカムガール(デフォルトの404ページにいる人)に助けられたんでしょうか。

音楽ゲームと判定と

最近の音楽ゲームはノスタルジアをよくプレイしています。
ピアノを演奏するゲームなので、他の音楽ゲームと比べてクラシック曲が多めである点が特徴の一つとなっており、ピアノソロのクラシック曲が多い故にテンポの揺れが多く、それらの曲ではGood判定(最良のタイミングから少しずれた判定)が出やすくなっています。

ピアノ曲は本来、その時の感情を表現するためにテンポが大きく揺れることがあるものではありますが、音楽ゲームの場合はそのテンポの揺れがゲーム側で指定されているため、自分が演奏したいテンポではなく作曲者(または譜面作成者)が表現したいテンポにプレイヤーが合わせる必要が出てきます。
演奏中の譜面の設定と自分の気分がかっちり合った場合は気持ちよく演奏できますが、そうでない場合はちゃんと演奏しているはずなのにいい判定が出ないか、場合によっては全く音が鳴らないという事態に陥るという難点は多くのゲームで起こりうる問題です。代表曲はbeatmaniaIIDXのop.31叙情。

そもそもbeatmaniaは壊れたリズムマシンを人力で演奏するゲームであるようなので、オートで流れるバックトラックに合わせてプレイヤーが演奏する限りは全く問題はありません。テンポが揺れることがないか揺れてはいけない打ち込み曲では、プレイヤーはバックトラックに合わせて演奏する形が正しそうです。問題となるのは生演奏の曲で、ソロ演奏かプレイヤーがリズムを牽引するパートを演奏する場合です。

この場合、バックトラックはプレイヤーの演奏にテンポを合わせて、テンポが不自然に変化するような演奏を行なった場合は悪い判定を出すようなシステムが合いそうに思います。
で、考えてみたシステムは以下の通り。

・基準となる曲のテンポは演奏開始時からしばらくのプレイヤーの演奏から決定する。早弾きもできるがスコアに影響はない
・バックトラックはプレイヤーの演奏するテンポに合わせて再生される
・「曲のテンポをキープすべき区間」と「曲のテンポは自由でよい区間」がある。前者でテンポが乱れる演奏をするとミス、後者はよほどよことがない限りタイミングぴったり扱い
・想定されるタイミングより早くボタンを押し続けるなりすると入力に合わせてテンポが早くなり、逆はテンポが遅くなる。あまりテンポがブレすぎるとミス
・「想定タイミングより早いタイミングの入力」と「想定タイミングより遅いタイミングの入力」が混在する場合(例:トリル中の所謂あんみつ入力)は演奏上よろしくないのでミスとなる

……要するに曲側が自動でプレイヤーの演奏に合わせてくれる機能が実現できるかどうか、という感じですね。できないことはなさそうですがハードルが高そう。
従来のゲームにおいて、全体的に入力が早いだけでスコアが出ないようなプレイを評価するようにして、逆にあんみつを多用してところどころ曲が成立していないプレイは評価しないような感じにできるといいですね。