# GAME-DESIGN.md ホシザクラ暮らしシミュレーション v1 設計仕様書 よりみち研究部 内製ゲーム第1弾 --- ## 01. 位置付け - 「ホシザクラ × 1ヶ月版」プロトタイプ - ヴァレアナ大陸 → ホシザクラへ移住した1ヶ月の暮らしを擬似体験 - 「正解はありません」を明示し、選んだ結果が3軸スコアと文体に変換される - noindex / nofollow(架空世界の遊び場として、検索結果に拾わせない) - FICTION バナーで現実世界と切り離す - 公開URL: https://shiro39.com/yorimichi/game.html - 設計起点: 観測〜記録〜還元のサークル運用と独立した、住人=来訪者の側に立てる入口装置 ## 02. ファイル構成 | ファイル | 役割 | |---|---| | `game.html` | 単一HTML完結(CSS・JS埋め込み・外部API呼び出しなし) | | `GAME-DESIGN.md` | 本ファイル(設計記録) | | `members.json` | 不参照(ゲームは独立データセット) | 依存:Google Fonts(Zen Kaku Gothic New / Zen Old Mincho)のみ。 ## 03. デザイン系統 | 項目 | 値 | |---|---| | カラー軸 | hoshi `#e85480` / hoshi-light `#fce4ec` / hoshi-dark `#c2185b` | | 紙地 | cream `#fdf8f2` | | 文字 | ink `#2a2622` / ink-soft `#635b52` / ink-mute `#9c9288` | | 罫線 | rule `#f0e6d8` | | 角丸 | カード20px・ボタン12px | | 影 | `0 2px 4px rgba(70,40,20,.04), 0 12px 32px -8px rgba(70,40,20,.10)` | | フォント | 本文 Zen Kaku Gothic New 400/500/700 / 見出し Zen Old Mincho 400/700 | ホシザクラの国ページ(hoshi.html)と同系のピンク基調を継承。違いはカード中心・余白多めのモバイル単独画面前提。 ## 04. 画面構成(4画面・single-page遷移) ``` [start] → [scene × 5] → [review] → [result] ``` | 画面 | id | 主要要素 | |---|---|---| | start | `screen-start` | タイトル・サブ・移住者名入力・開始ボタン | | scene | `screen-scene` | 進捗ドット・3軸スコアバー・状況・選択肢3択・エピソード・次へ | | review | `screen-review` | 5シーンを通しの読み物として再表示 | | result | `screen-result` | エンディング型・3軸バー・シェアテキスト・再プレイ | `.screen { display: none; } .screen.active { display: block; }` で切り替え。`showScreen(id)` で `.active` を1画面だけ付け替える。 ## 05. シナリオデータ構造 ```js SCENES = [ { situation: "状況テキスト", choices: [ { text: "選択肢ラベル", effect: { money: -2, conn: 15, heart: 5 }, episode: "選んだ結果のエピソード" }, // 3択固定 ] }, // 5シーン固定 ] ``` シナリオ設計ルール: - 5シーン × 3択 = 15エピソード - 各シーンで money / conn / heart の3軸が動く(±や0) - 「正解」を作らない:どの選択肢にも肯定的なエピソードを返す - 効果値の合計幅:合計+10〜+45 程度に収め、極端に勝ち負けが付かないようにする - 1ヶ月の時間軸:移住初日 → 週末 → 平日夕方 → 雨の休日 → 月末の夜 シーン1〜5の役割: | # | テーマ | 出会い | 試される軸 | |---|---|---|---| | 1 | 来訪 | 隣のおばあさん | conn / heart | | 2 | 交流 | 古民家カフェの会 | money / conn | | 3 | 偶発 | 川沿いの先輩移住者 | conn / heart | | 4 | 内向 | 雨の日の自由時間 | heart | | 5 | 統合 | 月末の夜 | money / conn / heart の最終配分 | ## 06. スコアと判定 ```js state.scores = { money: 50, conn: 0, heart: 0 } // 初期値 ``` - money は初期 50 から減算しても 0 で下げ止め(`Math.max(0, …)`) - conn / heart は加算のみ(実装上は負も許容するがシナリオで現状は正のみ) エンディング判定(先勝・上から評価): | id | 条件 | mark | 名前 | |---|---|---|---| | `blend` | max - min ≤ 30(バランス型) | 🌸 | ホシザクラにとけこんだタイプ | | `face` | conn ≥ heart かつ conn ≥ money | 🤝 | ホシザクラの顔役タイプ | | `root` | フォールバック(必ず該当) | 🌿 | 静かな根っこタイプ | 設計意図: - 3エンディングはどれも「ホシザクラに合う」結末。失敗エンディングは作らない - バランス型を最初に評価することで、極端でない人にも明確な居場所を与える - 残りは「人ベクタ vs 自分ベクタ」で2分する最小構造 ## 07. シェア仕様 シェアテキスト(コピー&ペースト想定・X/Threads/LINE貼り付け): ``` 【ホシザクラ暮らしシミュレーション】 {playerName}さんは「{タイプ名}」でした。 💰{money} 🤝{conn} 🌿{heart} {タイプ説明の冒頭40字}…… https://shiro39.com/yorimichi/game.html ``` - 結果画面で `
` に表示し「コピーしてシェア」ボタンで `navigator.clipboard.writeText()` を呼ぶ - API/サーバー連携なし・OGP画像生成も現状なし ## 08. アクセシビリティ/セーフティ - `noindex, nofollow`(meta robots)で検索除外。架空世界として外に拡散させない - `FICTION · よりみち研究部 架空世界 · ヴァレアナ大陸` バナーをstart/result両方に表示 - 個人情報入力は「移住者名」のみで20文字制限、外部送信なし(localStorageも未使用) - 子供が遊んでも安心な水準:費用発生・課金導線・第三者通信ゼロ - 入力空のときはボタン無効化+枠を hoshi 色に光らせるだけで、エラーメッセージは出さない ## 09. 拡張ポイント(v2以降の候補) | 案 | 概要 | 優先度 | |---|---|---| | 5カ国版 | mist / azure / schnei / laak のシナリオ追加 | 高 | | 3ヶ月版 | 5シーン × 3章(=15シーン)に拡張、季節変化を入れる | 中 | | 結果保存 | localStorageで「過去のあなた」一覧表示 | 中 | | OGP画像 | 結果テキストを画像化してSNSに | 低 | | 住人連動 | 国研員のひとことを結果ページに混ぜる(jakeなら……など) | 中 | | ヴェルニェ版 | 異界1日版・物理が違うため選択肢の意味も反転する | 低(将来) | 優先順位の根拠:5カ国版が一番ROIが高い(既存サイトの5カ国コンテンツと結ばれる)。3ヶ月版は1ヶ月版の好評を確認してから拡張。 ## 10. 実装上の地雷メモ - `noindex` を外さないこと(archive 化したい場合は別パスへコピー) - フィクションバナーを消さないこと(外で誤読されるリスクを下げる第一線) - `state` を `let` で定義してモジュール外から触れる構造のため、再プレイ時は `resetGame()` で初期化必須 - スコアバー幅は `Math.min(100, 値) + '%'` などにせず、現状は値のままパーセント代入。値の上限を超えるシナリオを足すならクランプ追加 - 3エンディングの条件式の順番を変えるとフォールバックが崩れるので、必ず先勝で `blend → face → root` の順 - フォントの読み込みに失敗してもレイアウトが破綻しないよう `font-family` フォールバックは sans-serif / serif を担保 ## 11. デザインMDインデックスへの掲載 `designs.html` のデザインMD一覧に追加: - ファイル名:`GAME-DESIGN.md` - 表記:「ゲーム — ホシザクラ暮らしシミュレーション v1」 - 紐付くページ:`game.html` - 紐付くロゴ:なし(マーク絵文字 🌸 のみ) ## 12. バージョン履歴 | ver | 日付 | 変更 | |---|---|---| | v1 | 2026-04-26 | 初版・5シーン1ヶ月版・3エンディング・シェア機能搭載で公開 |