🎸

Unity で音ゲーを作る

2023/06/19に公開

この記事について

音ゲーを作りたい。
でもやる気が出ないので、アイデア記事を日記がわりにしながら作成していこうと思う。
素人が手探りで開発するため大したナレッジにはならないかも知れないが、
作成する過程を記事に残しながら作成していきたいので、アプリ制作の参考になれば嬉しい。

どんなアプリにしたいか考える

アプリ名は「BPM 100」にする。
BPM100が好きだからだ。
BPM(Beats Per Minute)とは音楽のテンポの速さを図る指標で、100で大体小走りする時の心拍数くらいである。誰もが簡単にノレるテンポということだ。

BPM100の音楽に合わせて音符を奏でて、誰でも簡単にセッションバトルを楽しめる。
そんな環境を提供できるようなアプリを作りたい。

「誰でも簡単に」を考えるとハードとしてはスマートフォンとする。
とりあえずIphoneで動くものを目指す。

コンセプトを具体的に決める

作成していく中で優先すべき価値観、目標、グランドイメージだ。
なんとなくこういうの建てた方がそれっぽい。のではじめに決める。

  • 誰でも気持ちよくなれる音ゲー、リズムゲー
  • 気軽に対戦でき操作も簡単
  • それなりに競技性があり練習しがいがある

あまりにも普通だがとりあえず暫定でこれにする。
印刷してトイレとかに貼ろう。

音ゲーについて考える

とりあえず思いつくことを今度はマインドマップにしてみる。
これもそれっぽいからやるのであって特に展望があるわけではない。

ナンダこれ見ずらい!
市場調査と称しスマホでダウンロードしたゲームをめちゃめちゃやったが、
やはり音楽に合わせてノーツを消していくようなゲームが音ゲーと呼べるだろう。
ミューズダッシュおもれ〜。
あくまで市場調査だ。
決して脳が破壊されてなどいない。
ミューズダッシュおもれ〜。

昨今の音ゲーはプレイする気持ちよさはもちろんのこと、
収録されている楽曲や登場するキャラクター、ストーリーまでとても充実している。
この市場で戦うには面白いゲームであることは前提としてコンテンツ全体としての価値が問われる。
個人制作の都合上似た形状のゲームを作るとそのコンテンツ力は月とすっぽんぽんだ。
うまいこと誤魔化しながら開発することが成功の近道となる。たいしたアイデアはないけど。

ゲームを軽く設計する

設計は最も重要な工程だ。
コンテンツ力で大きく劣る個人開発において、最も個性を発揮できる部分だと思う。

ゲームのメインは対戦パートだ。
自分の入力した音符が相手に伝わり、相手はそれを消していく。
あくまでセッションバトルがしたいため、自分の演奏したフレーズを相手と楽しむゲームである。
既存の曲を課題として使う音ゲーと比較しても差別化できるし、低いコンテンツ力もカバーできるだろう。

全体のバトルの流れはこうだ。

セッションの特性上、先攻後攻が発生する。
だが悠長にフローを回しては音楽のテンポが通信要件に左右されてしまうだろう。
そこで編み出したフローである。

常に自分が先攻となり演奏をし、その情報を送信する。
それと同時に相手も先攻となり演奏しこちらに情報を送信する。
実時間では自分と相手は同時に演奏するが、画面上では自分→相手→自分と演奏することとなる。

このようにすることで擬似先攻後攻セッションが完成するのだ。
頭良い!

相手の演奏を受信してから画面に表示するまで1小節は余裕が生まれる。
通信要件としても都合がよさそうだ。

バトル画面を考える

とりあえずざっくり絵に描いてみた。

ピカソのようだ。いわゆる芸術だ。

打鍵した音符が画面中央下の音符ゾーンに出力される。
古い譜面は小節が進むにつれて奥にずれていく。

画面中央にキャラクターを配置してダンスする感じにしたい。
キャラクターごとにいろんなダンスをしたりサックス演奏したりさせたいが、これも頑張り次第だ。

ボタンを配置するか迷うところではある。
マインドマップの時に思ったが昨今の音ゲーは多様化し、タッチという特性をなるべく活かせる方がよさそうだ。
そのためボタンは用意せず画面全体のタッチやスワイプによるコマンドで操作する形としたい。

バトルのルールを考える

勝ち負けの判定は単純。
画面上のスコアを相手と競って、高い方が勝ちだ。
事前に用意したフレーズを演奏し、演奏できたフレーズの得点を競う。
そして自分が演奏したフレーズは相手の画面に課題として出現しオジャマをするのだ。
フレーズに属性や特殊効果を設けてもいいかもしれない。

フレーズは大量に用意しようと思うが、試合で使用できるのは10個まで。
自分のデッキ内で演奏し、相手のデッキにも対応できないと得点は伸ばせない。
前述したキャラクターごとに得意なフレーズもあり、対戦相手によって戦い方が変わるようにもしたい。
フレーズの練習量がそのまま実力となるようにしたいが、もちろん運や不確定要素も発生させ、その場の対応力も勝敗に関係するようにもしたい。

なかなかおくが深そうでよさそうなルールだ。
フレーズやキャラ性能の設計がめんどくさそうなのでどこまでできるかは頑張り次第だ。

諸々考える

やることを先に洗い出すと今後楽になる。
やることリスト、ToDoを作ろう。

  • キャラクターデザイン、コンセプトの作成。
  • フレーズ作成、キャラクター性能設計
  • ゲームのロジックの実装、画面表示
  • 各種エフェクト作成
  • キャラクターアニメーション作成
  • ゲーム内の報酬の設定
  • その他ゲーム全体の画面作成

やることいっぱいだね❤️
、、、ToDoを作成するとよりやる気が出なくなるのは私だけだろうか。
ざっくり書いたが作っていくうちにやることはいっぱい増えていくだろう。

最後

とりあえず今回はここまで。
最後まで読んでくれた人がいたらありがとう。
不定期で更新しようと思う。
作成する中で他でも応用が効く内容があればTech記事で公開しよう。

記事のこと、ゲームのこと、開発のこと、Unityのこと、応援メッセージなどなど
何か思うことがあればなんでも気軽にコメント頂けるととても助かる。

Discussion