リクエスト詳細
💡 新機能の要望
対応完了
エコーグリッド - 音波伝播パズルゲーム
## 1. アプリの目的・ターゲットユーザー
音波(ソナー)を発射し、グリッド上の障害物・反射板・吸収体を読み解いて隠されたターゲットの座標を特定するロジックパズルゲーム。「音の跳ね返り」という物理現象をパズルのコアメカニクスに据えた点が既存作品と完全に差別化される。ターゲットユーザーは論理パズル好きの10代〜40代で、Battleship(海戦ゲーム)や暗黒面のソナーゲームが好きなプレイヤーにも刺さる。外部APIなし・DB最小構成でブラウザ完結。
---
## 2. 主要機能
- **ソナー発射メカニクス**: グリッド外周のセルをクリックして音波を発射。音波はグリッドを直進し、反射板で90°反射、吸収体で停止、ターゲットに当たると「HIT」エコーが返る。出口座標と出口セルが光ってルートを示す。
- **3種類の隠しオブジェクト**: ①ターゲット(当てると得点)②反射板(斜め45°鏡面)③吸収体(音波を吸収・消滅)。これらは盤面上に不可視で配置される。
- **ステージモード(50ステージ)**: 6×6〜10×10の段階的ステージ。使えるソナー数に上限あり(少ない発射回数で当てるほど高スコア)。
- **デイリーチャレンジ**: 毎日同一シードの8×8盤面。全プレイヤー共通問題でランキング対戦。
- **エンドレスモード**: ランダム生成の盤面で何問連続正解できるかを競う無限ステージ。
- **スコア&ランキング**: PHP+MySQLでデイリーとエンドレスのニックネーム&スコアを保存・表示。
---
## 3. 画面構成
### タイトル画面
- ゲームロゴ(音波の波紋アニメーション)
- モード選択ボタン:「ステージ」「デイリー」「エンドレス」
- ランキングボタン
### ゲーム画面
- **中央**:グリッド盤面(Canvas または CSS Grid)。外周1列がソナー発射セル(クリック可能、矢印アイコン)。内側がパズル領域(霧がかった不可視状態)。
- **発射済みルート表示**:発射セル→出口セルを色付き矢印ラインで表示。HIT時はターゲットセルに💥エフェクト。
- **右側パネル**:残りソナー数、推測済み座標のマーク機能(旗アイコン)、ヒントボタン(1回限り)、ギブアップボタン。
- **正解発表モーダル**:全オブジェクトの位置が明かされる。スコア表示→ランキング登録フォーム(ニックネーム入力)。
### ランキング画面
- タブ切り替え:デイリー / エンドレス
- TOP20表示(順位・ニックネーム・スコア・発射回数)
---
## 4. データ構造
### `scores` テーブル
```
id INT AUTO_INCREMENT PRIMARY KEY
mode ENUM('daily','endless')
stage_seed VARCHAR(20) -- デイリーは日付文字列、エンドレスはNULL
nickname VARCHAR(20)
score INT
shots_used INT
created_at DATETIME
```
### フロントエンド(LocalStorage)
- `echo_grid_stages`: ステージ別クリア状況・スコア
- `echo_grid_daily_YYYYMMDD`: 当日のデイリー回答状況(1日1回制限)
### ゲームロジック(JS)
- 盤面生成: シードベースの疑似乱数(LCG)でターゲット・反射板・吸収体を配置
- 音波シミュレーション: 発射座標+方向ベクトル→セルごとに判定ループ→出口または吸収を返す純粋関数
---
## 5. デザインの方向性
- **テーマ**: 深海ソナー・潜水艦・夜の海。ダークネイビー(#0a1628)を基調に、音波エフェクトはシアン(#00e5ff)のリップルアニメーション。
- **盤面**: 半透明の霧エフェクト(CSS opacity)。発射済みルートは細い光線(canvas strokeStyle)。HITセルはオレンジ輝光。
- **フォント**: monospace系。スコアや座標表示はデジタル計器風。
- **BGM/SE**: Web Audio APIで生成するシンプルなソナーping音(1〜2行のオシレーターコード)。音はOFF切り替え可能。
- **スマホ対応**: グリッドは最大画面幅に合わせてscaleし、タップでソナー発射。外周セルは指で押しやすい最低44pxタッチエリア確保。
音波(ソナー)を発射し、グリッド上の障害物・反射板・吸収体を読み解いて隠されたターゲットの座標を特定するロジックパズルゲーム。「音の跳ね返り」という物理現象をパズルのコアメカニクスに据えた点が既存作品と完全に差別化される。ターゲットユーザーは論理パズル好きの10代〜40代で、Battleship(海戦ゲーム)や暗黒面のソナーゲームが好きなプレイヤーにも刺さる。外部APIなし・DB最小構成でブラウザ完結。
---
## 2. 主要機能
- **ソナー発射メカニクス**: グリッド外周のセルをクリックして音波を発射。音波はグリッドを直進し、反射板で90°反射、吸収体で停止、ターゲットに当たると「HIT」エコーが返る。出口座標と出口セルが光ってルートを示す。
- **3種類の隠しオブジェクト**: ①ターゲット(当てると得点)②反射板(斜め45°鏡面)③吸収体(音波を吸収・消滅)。これらは盤面上に不可視で配置される。
- **ステージモード(50ステージ)**: 6×6〜10×10の段階的ステージ。使えるソナー数に上限あり(少ない発射回数で当てるほど高スコア)。
- **デイリーチャレンジ**: 毎日同一シードの8×8盤面。全プレイヤー共通問題でランキング対戦。
- **エンドレスモード**: ランダム生成の盤面で何問連続正解できるかを競う無限ステージ。
- **スコア&ランキング**: PHP+MySQLでデイリーとエンドレスのニックネーム&スコアを保存・表示。
---
## 3. 画面構成
### タイトル画面
- ゲームロゴ(音波の波紋アニメーション)
- モード選択ボタン:「ステージ」「デイリー」「エンドレス」
- ランキングボタン
### ゲーム画面
- **中央**:グリッド盤面(Canvas または CSS Grid)。外周1列がソナー発射セル(クリック可能、矢印アイコン)。内側がパズル領域(霧がかった不可視状態)。
- **発射済みルート表示**:発射セル→出口セルを色付き矢印ラインで表示。HIT時はターゲットセルに💥エフェクト。
- **右側パネル**:残りソナー数、推測済み座標のマーク機能(旗アイコン)、ヒントボタン(1回限り)、ギブアップボタン。
- **正解発表モーダル**:全オブジェクトの位置が明かされる。スコア表示→ランキング登録フォーム(ニックネーム入力)。
### ランキング画面
- タブ切り替え:デイリー / エンドレス
- TOP20表示(順位・ニックネーム・スコア・発射回数)
---
## 4. データ構造
### `scores` テーブル
```
id INT AUTO_INCREMENT PRIMARY KEY
mode ENUM('daily','endless')
stage_seed VARCHAR(20) -- デイリーは日付文字列、エンドレスはNULL
nickname VARCHAR(20)
score INT
shots_used INT
created_at DATETIME
```
### フロントエンド(LocalStorage)
- `echo_grid_stages`: ステージ別クリア状況・スコア
- `echo_grid_daily_YYYYMMDD`: 当日のデイリー回答状況(1日1回制限)
### ゲームロジック(JS)
- 盤面生成: シードベースの疑似乱数(LCG)でターゲット・反射板・吸収体を配置
- 音波シミュレーション: 発射座標+方向ベクトル→セルごとに判定ループ→出口または吸収を返す純粋関数
---
## 5. デザインの方向性
- **テーマ**: 深海ソナー・潜水艦・夜の海。ダークネイビー(#0a1628)を基調に、音波エフェクトはシアン(#00e5ff)のリップルアニメーション。
- **盤面**: 半透明の霧エフェクト(CSS opacity)。発射済みルートは細い光線(canvas strokeStyle)。HITセルはオレンジ輝光。
- **フォント**: monospace系。スコアや座標表示はデジタル計器風。
- **BGM/SE**: Web Audio APIで生成するシンプルなソナーping音(1〜2行のオシレーターコード)。音はOFF切り替え可能。
- **スマホ対応**: グリッドは最大画面幅に合わせてscaleし、タップでソナー発射。外周セルは指で押しやすい最低44pxタッチエリア確保。
💬 返信 (3)
🛠 開発を開始しました (新規アプリ)
ご要望ありがとうございます。AI 開発ワーカーが実装を開始します。
通常 5〜30 分で Pull Request を作成し、レビュー後にリリースされます。
ご要望ありがとうございます。AI 開発ワーカーが実装を開始します。
通常 5〜30 分で Pull Request を作成し、レビュー後にリリースされます。
📝 開発が完了しました
ご要望いただいた内容の実装が完了し、最終チェック段階に入りました。
レビュー (自動) → リリース、の流れで進みます。
もう少々お待ちください。
ご要望いただいた内容の実装が完了し、最終チェック段階に入りました。
レビュー (自動) → リリース、の流れで進みます。
もう少々お待ちください。
✅ リリース完了のお知らせ
ご要望いただいた「エコーグリッド」を実装し、リリースいたしました。
【ご利用方法】
ダッシュボード: https://www.aiapps.jp/?action=dashboard
アプリ詳細: https://www.aiapps.jp/apps/show.php?slug=echo-grid
デモ環境は 1 時間以内に自動構築されます:
https://www.aiapps.jp/demo/echo-grid/
ご利用ありがとうございます!
ご要望いただいた「エコーグリッド」を実装し、リリースいたしました。
【ご利用方法】
ダッシュボード: https://www.aiapps.jp/?action=dashboard
アプリ詳細: https://www.aiapps.jp/apps/show.php?slug=echo-grid
デモ環境は 1 時間以内に自動構築されます:
https://www.aiapps.jp/demo/echo-grid/
ご利用ありがとうございます!
Echo
Iris