リクエスト詳細
✨ 既存アプリの改善
対応完了
対象アプリ: 星座神話スゴロク - 夜空を旅する天体すごろくゲーム
「今日の星座おみくじ」機能の追加
## 1. 目的
ゲームを起動するたびに「今日の星座おみくじ」を表示し、毎日アプリを開く習慣づけ(リテンション向上)を図る。外部APIや追加ライブラリは不要で、既存の星座図鑑データ・神話ストーリーデータを流用して実装できる。
---
## 2. 具体的な仕様
### 2-1. 表示タイミング・場所
- ゲームのトップ画面(タイトル画面)に「⭐ 今日の星座おみくじ」ボタンを追加(既存の「ゲームスタート」「星座図鑑」ボタンの下に配置)。
- ボタンをタップすると全画面モーダルが開く。
- **1日1回**のみおみくじを「引く」演出が発生し、同日2回目以降はすでに引いた結果を即座に表示する(localStorageに `omikuji_date`(YYYY-MM-DD)と `omikuji_result`(JSON)を保存して判定)。
### 2-2. おみくじ抽選ロジック(クライアントサイドのみ、PHP不要)
- 抽選は `(new Date()).toISOString().slice(0,10)` の日付文字列を簡易ハッシュ(文字コード合計)してシードとし、既存の25星座データ配列からインデックスを決定する。これにより**全ユーザーが同じ日に同じ星座**を引く「今日の星座」方式とする。
- 運勢ランク(大吉・中吉・小吉・吉・末吉・凶)は日付ハッシュ % 6 で決定。
- ラッキー数字は日付ハッシュ % 88 + 1(1〜88、88星座にちなむ)。
- ラッキーカラーは固定配列(「星空ブルー」「オーロラグリーン」「彗星シルバー」「流星ゴールド」「宇宙パープル」)から日付ハッシュ % 5 で選択。
### 2-3. モーダルの表示内容
```
┌─────────────────────────────┐
│ ⭐ 今日の星座おみくじ │
│ 2025年◯月◯日 │
│ │
│ 🌟 今日の星座:【オリオン座】 │
│ (星座カードサムネイル風イラスト │
│ = Canvas で星を3〜5個描く) │
│ │
│ 運勢:【大吉】 │
│ 一言:「オリオンのように力強く、 │
│ 今日の挑戦を恐れずに進もう。」 │
│ (星座ごとの固定メッセージ25種) │
│ │
│ 🎲 ラッキー数字:42 │
│ 🎨 ラッキーカラー:星空ブルー │
│ │
│ 【今日の星座でゲームをはじめる】 │
│ (→ ソロ/対戦選択画面へ遷移) │
│ [閉じる] │
└─────────────────────────────┘
```
### 2-4. アニメーション演出
- モーダルを開いた直後、星座名が隠れた状態でくるくる回るルーレット風テキストアニメーション(CSSの `@keyframes` で文字をフェードイン/アウト)を1.5秒間再生し、最後に今日の星座名がスローで浮かび上がる。
- 既存の WebAudio 効果音「ワープ」音を流用してモーダルオープン時に再生(サウンドオン時のみ)。
- `prefers-reduced-motion` が設定されている場合はアニメーションをスキップし即時表示。
### 2-5. 「今日の星座でゲームをはじめる」ボタン
- タップするとモーダルを閉じ、そのままソロ/対戦人数選択画面へ遷移する(既存フロー)。
- ゲーム開始後、今日の星座に対応するマスに駒が止まったとき(既存の神話ストーリーマスと一致する場合)、「✨ 今日の星座!」バッジをポップアップに追加表示するだけの小演出を入れる(既存ストーリーポップアップのHTML内に条件分岐でバッジ追加)。
---
## 3. 既存機能との整合(壊さない点)
- すべての抽選ロジックはクライアントサイド JS のみ。既存の PHP・MySQL・ランキング機能には一切触れない。
- 星座データは既存の図鑑モード用 JS 配列(25星座)をそのまま参照し、データの二重管理は行わない。
- 新ボタンはトップ画面の既存ボタン群の末尾に追加するだけで、既存のゲームフロー・ボードCanvas・クイズ・ランキングには変更なし。
- localStorageのキーは `hoshiza_omikuji_date` / `hoshiza_omikuji_result` と命名し、既存キーと衝突しないようにする。
- CSSは既存のデザイントークン(深夜ブルー系カラー変数・Noto Serif JP)を継承し、新規クラスはプレフィックス `.omikuji-` で統一して既存スタイルを汚染しない。
ゲームを起動するたびに「今日の星座おみくじ」を表示し、毎日アプリを開く習慣づけ(リテンション向上)を図る。外部APIや追加ライブラリは不要で、既存の星座図鑑データ・神話ストーリーデータを流用して実装できる。
---
## 2. 具体的な仕様
### 2-1. 表示タイミング・場所
- ゲームのトップ画面(タイトル画面)に「⭐ 今日の星座おみくじ」ボタンを追加(既存の「ゲームスタート」「星座図鑑」ボタンの下に配置)。
- ボタンをタップすると全画面モーダルが開く。
- **1日1回**のみおみくじを「引く」演出が発生し、同日2回目以降はすでに引いた結果を即座に表示する(localStorageに `omikuji_date`(YYYY-MM-DD)と `omikuji_result`(JSON)を保存して判定)。
### 2-2. おみくじ抽選ロジック(クライアントサイドのみ、PHP不要)
- 抽選は `(new Date()).toISOString().slice(0,10)` の日付文字列を簡易ハッシュ(文字コード合計)してシードとし、既存の25星座データ配列からインデックスを決定する。これにより**全ユーザーが同じ日に同じ星座**を引く「今日の星座」方式とする。
- 運勢ランク(大吉・中吉・小吉・吉・末吉・凶)は日付ハッシュ % 6 で決定。
- ラッキー数字は日付ハッシュ % 88 + 1(1〜88、88星座にちなむ)。
- ラッキーカラーは固定配列(「星空ブルー」「オーロラグリーン」「彗星シルバー」「流星ゴールド」「宇宙パープル」)から日付ハッシュ % 5 で選択。
### 2-3. モーダルの表示内容
```
┌─────────────────────────────┐
│ ⭐ 今日の星座おみくじ │
│ 2025年◯月◯日 │
│ │
│ 🌟 今日の星座:【オリオン座】 │
│ (星座カードサムネイル風イラスト │
│ = Canvas で星を3〜5個描く) │
│ │
│ 運勢:【大吉】 │
│ 一言:「オリオンのように力強く、 │
│ 今日の挑戦を恐れずに進もう。」 │
│ (星座ごとの固定メッセージ25種) │
│ │
│ 🎲 ラッキー数字:42 │
│ 🎨 ラッキーカラー:星空ブルー │
│ │
│ 【今日の星座でゲームをはじめる】 │
│ (→ ソロ/対戦選択画面へ遷移) │
│ [閉じる] │
└─────────────────────────────┘
```
### 2-4. アニメーション演出
- モーダルを開いた直後、星座名が隠れた状態でくるくる回るルーレット風テキストアニメーション(CSSの `@keyframes` で文字をフェードイン/アウト)を1.5秒間再生し、最後に今日の星座名がスローで浮かび上がる。
- 既存の WebAudio 効果音「ワープ」音を流用してモーダルオープン時に再生(サウンドオン時のみ)。
- `prefers-reduced-motion` が設定されている場合はアニメーションをスキップし即時表示。
### 2-5. 「今日の星座でゲームをはじめる」ボタン
- タップするとモーダルを閉じ、そのままソロ/対戦人数選択画面へ遷移する(既存フロー)。
- ゲーム開始後、今日の星座に対応するマスに駒が止まったとき(既存の神話ストーリーマスと一致する場合)、「✨ 今日の星座!」バッジをポップアップに追加表示するだけの小演出を入れる(既存ストーリーポップアップのHTML内に条件分岐でバッジ追加)。
---
## 3. 既存機能との整合(壊さない点)
- すべての抽選ロジックはクライアントサイド JS のみ。既存の PHP・MySQL・ランキング機能には一切触れない。
- 星座データは既存の図鑑モード用 JS 配列(25星座)をそのまま参照し、データの二重管理は行わない。
- 新ボタンはトップ画面の既存ボタン群の末尾に追加するだけで、既存のゲームフロー・ボードCanvas・クイズ・ランキングには変更なし。
- localStorageのキーは `hoshiza_omikuji_date` / `hoshiza_omikuji_result` と命名し、既存キーと衝突しないようにする。
- CSSは既存のデザイントークン(深夜ブルー系カラー変数・Noto Serif JP)を継承し、新規クラスはプレフィックス `.omikuji-` で統一して既存スタイルを汚染しない。
💬 返信 (3)
🛠 開発を開始しました (機能追加 (seiza-sugoroku))
ご要望ありがとうございます。AI 開発ワーカーが実装を開始します。
通常 5〜30 分で Pull Request を作成し、レビュー後にリリースされます。
ご要望ありがとうございます。AI 開発ワーカーが実装を開始します。
通常 5〜30 分で Pull Request を作成し、レビュー後にリリースされます。
📝 開発が完了しました
ご要望いただいた内容の実装が完了し、最終チェック段階に入りました。
レビュー (自動) → リリース、の流れで進みます。
もう少々お待ちください。
ご要望いただいた内容の実装が完了し、最終チェック段階に入りました。
レビュー (自動) → リリース、の流れで進みます。
もう少々お待ちください。
✅ リリース完了のお知らせ
ご要望いただいた「星座神話スゴロク - 夜空を旅する天体すごろくゲーム」を実装し、リリースいたしました。
【ご利用方法】
ダッシュボード: https://www.aiapps.jp/?action=dashboard
アプリ詳細: https://www.aiapps.jp/apps/show.php?slug=seiza-sugoroku
デモ環境は 1 時間以内に自動構築されます:
https://www.aiapps.jp/demo/seiza-sugoroku/
ご利用ありがとうございます!
ご要望いただいた「星座神話スゴロク - 夜空を旅する天体すごろくゲーム」を実装し、リリースいたしました。
【ご利用方法】
ダッシュボード: https://www.aiapps.jp/?action=dashboard
アプリ詳細: https://www.aiapps.jp/apps/show.php?slug=seiza-sugoroku
デモ環境は 1 時間以内に自動構築されます:
https://www.aiapps.jp/demo/seiza-sugoroku/
ご利用ありがとうございます!
Echo
Iris