Webカメラに映した手の形が、そのまま魔法の詠唱になるアクションゲーム。
Webカメラの前で実際に手印(ムドラー)を組むと、その手の形がそのまま術の詠唱になるアクションゲーム。コントローラーのボタンではなく、自分の手そのものが入力デバイスになる。
NARUTO や呪術廻戦で描かれる「指を組み合わせて技を発動する」あの瞬間への憧れが出発点。タイトルの「MUDRA」は、それらの文化的ルーツであるサンスクリット語で「手印」を意味する言葉そのもの。単なるオマージュではなく、その本質をゲームプレイとして体験させることを目指している。
詠唱と敵の行動は並行して進む。ターン制ではないため「攻撃を受けながら詠唱を押し通すか、手を止めてガードするか」というリアルタイムの判断が常に発生する。
詠唱印(片手・5種)
| 印名 | 手の形 | 属性 |
|---|---|---|
| 壱印「開」 | パー(全指を開く) | 風 |
| 弐印「握」 | グー(全指を閉じる) | 地 |
| 参印「指」 | 人差し指のみ伸ばす | 雷 |
| 肆印「刃」 | チョキ | 水 |
| 伍印「掌」 | 親指だけ折る | 火 |
特殊印(片手・3種)
| 印名 | 役割 |
|---|---|
| 発動印「射」 | 詠唱したシーケンスを術として放つ |
| 解除印「散」 | 詠唱中のシーケンスを能動的にキャンセルする |
| 防御印「守」 | 敵の攻撃に合わせて構え、ダメージを軽減する |
両手印(1種)
| 印名 | 手の形 | 属性 |
|---|---|---|
| 陸印「合」 | 両手を合わせる(合掌) | 光 |
術の入力例:
【火炎弾】 伍印「掌」→ 壱印「開」→ 発動印「射」
【雷連撃】 参印「指」→ 参印「指」→ 壱印「開」→ 発動印「射」
印の数が多いほど術は高威力になるが、そのぶん詠唱に時間がかかり被弾リスクも上がる。制限時間内に素早く組み切れば威力にボーナスがつき、間違ったまま発動印を組むと暴発して自分がダメージを受ける。
属性相性だけで組むと「弱点属性の術を連打するゲーム」になってしまう。そのため術には属性のほかに、ヒット数・発生速度・副次効果(スタン / 継続ダメージ / スロウ)・詠唱コストといった個性軸を持たせ、敵の行動パターンによって最適解が変わるよう設計している。
ステージは「道中セクション → ボス戦」という構成で、セクションをまたいで HP は引き継がれる。目先の1戦だけでなく、ステージ全体を通したリソース管理が要求される。
実装より先に仕様書を書き、それを拠り所にコードを書く仕様駆動開発で進めている。実装中に仕様との齟齬が出た場合はコードを仕様に合わせるのではなく、仕様書のほうを更新して生きたドキュメントとして運用する。
開発はプロトタイプ → α版 → β版とマイルストーンで区切り、各マイルストーンの終了時に開発ログを残している。ログには実装ファイル一覧だけでなく、採用しなかった案とその判断根拠、そして意図的に先送りした技術的負債を明記している。「なぜその設計にしたか」を後から追跡できる状態を保つことを重視している。
Pull Request には CodeRabbit による自動レビューを導入し、Unity 向けの path_filters と path_instructions を設定してアーキテクチャ違反を検知できるようにしている。
✅ Prototype MediaPipe接続 / 手印判定 / 1術発動の最小デモ
✅ α版 バトル成立(術発動・ダメージ計算・敵AI・ガード)
🔄 β版 全ステージ実装まで完了。演出強化・ゲームフロー・
チュートリアル・サウンド・バランス調整を継続中
IHandLandmarkProvider インターフェースを挟んでいるため、将来 ONNX + Unity Inference Engine に差し替える場合もアーキテクチャの変更なしに移行できるSwitchToMainThread() を挟んで Unity API との境界を安全に処理