Record original-alignment implementation and traceability checkpoint

Capture current source, content data, tests, asset licenses, and original-specification traceability. Original implementation remains incomplete. The accepted matching UI generation passed 154 suites and 12,253 checks, with eight rendered staff-contract screens reviewed. Latest native Windows and full-original acceptance remain outstanding.
This commit is contained in:
Takeshi
2026-09-30 23:52:24 +09:00
parent 6077e02ebe
commit 5dde0c5ec2
490 changed files with 54051 additions and 809 deletions
+258
View File
@@ -0,0 +1,258 @@
# 1. プロジェクト基本定義書 (Project Basic Definitions)
## 1.1 基本情報 (General Information)
* **プロジェクトコード:** Project Yggdrasil
* **タイトル(仮):** The Tree
* **ジャンル:** ファンタジー世界樹経営シミュレーション / タワービルディング / 成人向け (R18)
* **プラットフォーム:** PC (Windows)
* **想定プレイ時間:**
* メインストーリークリア: 20時間 ~ 30時間
* 完全クリア(全エンド・全ヒロイン攻略・図鑑コンプ): 50時間以上
* **視点:** 2Dサイドビュー(断面図)形式
## 1.2 ゲームコンセプト (Game Concept)
* **「聖域」と「魔窟」の二面性経営:** プレイヤーは巨大な「世界樹」を舞台に、地上へ伸びる「表(聖域・秩序)」**と、地下へ潜る**「裏(魔窟・混沌)」という、相反する性質を持つ二つの領域を同時に管理・拡張する。
* **覗き見る支配者:** プレイヤーは神の視点(管理者)として、客や従業員の自律的な行動を観察し、時にそのプライベートを覗き見(Peeping)し、干渉することで運命を操作する。
* **欲望のタワービルディング:** フロアを積み重ねることで世界樹自体が成長する。高さを求めるほど「権威(表)」が増し、深さを求めるほど「富(裏)」が増す構造。
## 1.3 コアゲームループ (Core Game Loop)
1. **建設 (Build):** マップに施設(客室、食堂、風俗店など)と動線(通路、エレベーター)を配置。表層と裏層を切り替え効率的な構造を設計する。
2. **集客 (Attract):** 多様な客が来店。客のAIは「睡眠」「食欲」「性欲」「娯楽」の欲求に従い自動行動する。
3. **サービスと搾取 (Service & Exploit):**
* **表:** 健全なサービス(宿泊・食事・治療)で「信頼(信仰値)」と「クリーンな資金」を得る。
* **裏:** アングラなサービス(賭博・性風俗・闇取引)で「依存度」と「莫大な裏金」を得る。
4. **管理と介入 (Manage & Intervene):** 従業員のシフト管理、バックヤード動線確保。VIP客の覗き見、脅迫、人身売買。
5. **拡張と防衛 (Expand & Defend):** 世界樹ランクを上げ、より高度な施設を解禁。外敵を防衛力で撃退する。
## 1.4 コアメカニクス定義 (Core Mechanics Definition)
* **デュアルレイヤー・システム:** マップ情報を2層で管理しUIで瞬時に切り替える。「表層 (Front Layer)」は客が目にする演出された空間。「裏層 (Back Layer)」は従業員のみが知る機能的空間・覗き部屋。
* **自律AIと動線パズル:** 全てのキャラクターは自律AI。エレベーター配置が不適切だと「渋滞」発生。施設ごとのシフト配置管理が必要。
* **信仰と依存:** 「信仰 (Faith)」は表の経営で得られストーリー進行に関わる。「依存 (Addiction)」は裏で客に植え付け、全財産を吐き出させるステータス。
## 1.5 世界観・ナラティブ定義 (World & Narrative Definition)
* **舞台:** 旧魔王城跡地に生えた「世界樹」。
* **主人公:** かつて勇者として使い捨てられた男。宿屋の主として再起し真の王への即位を目指す。
* **ヒロイン:** 「純愛」「NTR」「快楽堕ち」の3つの運命を持つ7名のメインキャラクター。
## 1.6 成人向け要素の定義 (Adult Content Definition)
* **区分:** R18(成人向け)
* **表現の方向性:** 純愛(合意の上での性愛)、NTR(ライバルに奪われる背徳感)、堕落(快楽・金による尊厳破壊)。
* **経営的搾取:** 覗き(マジックミラー越しの監視)、脅迫、人身売買。
# 2. マップ構造とデュアルレイヤーシステム詳細仕様書
## 2.1 マップ基本構造 (Map Basic Structure)
* **視点:** 2Dサイドビュー(断面図)。1ブロック単位のグリッドで管理。
* **領域区分:** 地上エリア(幹・枝 / Y > 0)、地下エリア(根 / Y < 0)、地面(境界線 / Y = 0)。
* **建築制限:** 「地面」または「他の施設・幹」に隣接必須。進行に伴い建築可能領域が拡張。
## 2.2 デュアルレイヤーシステム (Dual Layer System)
マップ上の全てのグリッド座標に、Z軸方向の深さとして2つのスロットが存在する。
1. **表層 (Front Layer / Z-1):** 客ユニット、接客中の従業員。客からはこの層しか見えない。
2. **裏層 (Back Layer / Z-2):** 待機・移動中の従業員、警備員、運搬物資、覗き見中のプレイヤー。客からは認識できない。
* **表示切替:** 表層モード時は裏層が半透明、裏層モード時は表層がワイヤーフレームになる。
## 2.3 表層:客エリア詳細 (Front Layer Specifications)
* **施設:** 客室、商業、客用通路・エレベーター。
* **環境ステータス:** 景観度 (Beauty)、清潔度 (Cleanliness)、騒音度 (Noise) が計算され客の満足度に影響する。
## 2.4 裏層:バックヤード詳細 (Back Layer Specifications)
* **施設:** 待機室、従業員寮、倉庫、裏通路、業務用エレベーター、リネンシュート、**覗き部屋**、隠し扉。
* **接続ルール:** 表層の施設奥に設置された「従業員用ドア」を通じて 表層 ⇔ 裏層 を移動する。客は通過不可。
## 2.5 覗き・脅迫ギミック (Peeping Mechanics)
* **建設条件:** 表層のターゲット施設(VIPルーム、風俗個室、脱衣所)の裏層に建設。覗き部屋を建設したグリッドは裏通路として使えなくなるジレンマあり。
* **機能:** マジックミラー視点での鑑賞(通常マップとは違うアングル)。記録係を配置し「脅迫ネタ」を収集。
## 2.6 エリアゾーニング詳細 (Zoning)
* **地上(聖域):** 採光・マナ濃度ボーナス。一般市民・貴族・聖職者向け。
* **地下(魔窟):** 遮音・隠蔽ボーナス。犯罪者・魔物・依存症患者向け。
# 3. 時間進行とゲームサイクル詳細仕様書
## 3.1 基本時間ロジック (Basic Time Logic)
* **スケール:** 現実時間 10秒 = ゲーム内 1時間。
* **操作:** 再生速度変更(Pause/x1/x2/x3)。Pause中も建設・指示可能(アクティブポーズ)。
## 3.2 24時間サイクルとフェーズ (24-Hour Cycle)
* **朝 (06:00-10:00):** 「下りラッシュ」。チェックアウト、朝食。昼番出勤・清掃時間。
* **昼 (10:00-16:00):** 新規来店、施設回遊。経営が安定し建設に適する。
* **夕 (16:00-20:00):** 「上りラッシュ」。帰還した冒険者が大浴場・食堂へ殺到。18:00に夜番へシフト交代(バックヤード大混雑)。
* **夜 (20:00-06:00):** 健全客は睡眠、依存客は地下へ。性欲解消・NTRイベント発生のピーク。
## 3.3 シフト制システム詳細 (Shift System)
* **勤務枠:** 各施設に 昼番 (06:00-18:00) と 夜番 (18:00-06:00) のスロットを設定。
* **体力と気絶:** 勤務で体力減少、休憩で回復。0になると「気絶」し救護搬送が必要。客に見られると評判ダウン。
* **通勤ラッシュ:** 交代時刻の裏層の動線設計が悪いと、従業員が渋滞し業務が滞る。
## 3.4 日次決算 (Daily Settlement)
* **時刻:** 毎日 00:00 に決算レポート表示。
* **処理:** 売上(表裏の収益)から経費(人件費・維持費・借金返済)を引く。赤字決算が3回続くとゲームオーバー。
## 3.5 環境・気象変動 (Environment & Weather)
* **天候:** 雨(客足減・滞在延長)、嵐(新規客ゼロ)、マナの霧(魔法効率UP・興奮度UP)。
* **流行:** 数日おきのニュースで特定の客層・施設の売上がブーストされる。
# 4. 客(冒険者)ユニット行動AIと交通システム詳細仕様書
## 4.1 ユニット内部パラメータ (Internal Parameters)
* **資源:** 所持金 (Budget)、戦利品 (Loot)。
* **四大欲求 (0-100):** 睡眠欲 (客室で解消)、性欲 (地下で解消)、食欲 (食堂で解消)、娯楽欲 (カジノ等で解消)。
* **状態:** 忍耐力 (渋滞等で減少し0で激怒退店)、清潔度 (汚れを歩くと減少・伝播)、依存度 (地下利用で上昇)。
## 4.2 AI行動決定ロジック (AI Decision Logic)
* 現在の「最も高い欲求」を基に目的地を決定。
* **施設選択の重み付け:** 「距離」「行列の短さ」「価格・クラス(所持金に見合うか)」で算出。
## 4.3 交通・移動システム (Traffic & Movement)
* **経路探索:** A*アルゴリズム。エレベーター待ち時間もコストに含む。
* **垂直移動:** 蔓の昇降機(客用・定員あり)、業務用エレベーター(裏層・大容量)、階段(速度遅い)、マナワープ(瞬間移動・コスト大)。
* **渋滞デバフ:** 通路にユニットが重なると移動速度50%低下。
## 4.4 状態変化・特殊ステータス
* **依存症:** Lv3(廃人)になると退店を拒否し装備品を売却して居座る。
* **破産処理:** 所持金0で依存度が高い場合、男性は「暴動」、女性は借金契約を結ばされ「奴隷ユニット」として回収される。
## 4.5 クラス別AI特性
* **貴族:** 金払いは良いが忍耐力が極端に低い。
* **聖職者:** アングラ要素を目撃すると即帰宅&風紀ダウン。
* **エルフ:** 自然物を好む。
* **魔族/亜人:** 地下耐性が高く満足度が下がらない。
# 5. 従業員ユニット・モブキャラクター詳細仕様書
## 5.1 ユニット分類と基本定義
* **一般従業員:** ギルド雇用。日給発生。ストレスが溜まりやすく解雇自由。
* **奴隷:** 市場購入や借金客拘束で獲得。食費のみ。ストレス耐性が高く「人身売買」で売却可能。
## 5.2 パラメータ詳細
* **基礎:** 体力 (Stamina / 0で気絶)、ストレス (Stress)、忠誠度 (Loyalty)。
* **業務適正:** 運営技術 (料理・清掃)、奉仕技術 (接客・性処理)、戦闘力 (警備)。
* **特性 (Traits):** 生成時にランダム付与 (例: 力持ち、名器、サボり魔、潔癖症)。
## 5.3 職種と役割 (Jobs & Roles)
* **サービス業(表層):** ウェイター、受付係、バニー。
* **バックヤード業(裏層):** シェフ、清掃員、運搬員、救護班。
* **アングラ・防衛業:** 娼婦、警備員、調教係。
## 5.4 労務管理システム (Labor Management)
* **シフト制:** 昼番・夜番配置。非番時は待機室等で体力回復。
* **気絶回収:** 体力0で倒れた者は、救護班が裏ルートを通って回収しなければならない。
## 5.5 獲得と処分
* **獲得:** 求人募集、奴隷市場、破産客の捕獲。
* **処分:** 解雇(退職金)、人身売買(ステータスにより価格変動。他の従業員の忠誠度低下リスクあり)。
# 6. 従業員ユニット・ユニークキャラクター詳細仕様書
## 6.1 基本定義 (Basic Definition)
* **特性:** 代替不可能、雇用コスト・維持費無料、成長上限が高い、解雇・売却不可。固有スキルを所持。
## 6.2 キャラクターリストと役割
* **アンリ (女将):** [看板娘の微笑] 配置フロアの全施設売上+20%。
* **フィーネ (メイド):** [神速の奉仕] 清掃速度3倍。暗殺確率UP。
* **トマリ (騎士):** [鉄壁の守護] フロアトラブル0%。防衛スコア加算。
* **アメリア (シスター):** [聖なる寄付] 寄付金3倍。回復速度2倍。
* **リズ (狩人):** [エルフの眼] レア素材発見率UP。高級食材消費減。
* **ミミ (商人):** [商魂たくましい] 仕入れ-20%、売却+20%。
* **サツキ (雑用):** [高貴なオーラ] VIP客満足度上昇1.5倍。チップ増。
* **ライバルキャラクター:** ライ、リーゼンバルト、ソウ等(雇用可能だがNTRリスク発生)。
## 6.3 ステータスとパラメータ
* **基礎/業務能力:** 体力、ストレス、運営、奉仕、戦闘、アングラ。
* **レベルと成長:** 業務でEXP蓄積、Lv99まで成長可能。
## 6.4 スキルシステム
* **パッシブスキル:** 配置するだけで自動発動。
* **アクティブスキル:** 防衛戦等で任意発動。
* **ルート変化:** 純愛/堕落などの進行度で習得するスキルが変化する。
## 6.5 運用とライフサイクル
* **シフト:** 警告を無視すれば24時間勤務も可能(ストレス激増)。衣装変更で適正補正変化。
* **離脱:** 原則ロストしないが、防衛戦敗北での一時拉致や、特定バッドエンド確定時にのみ敵や背景オブジェクト化する。
# 7. 恋愛・侵食システム詳細仕様書 【完全版】
## 7.1 概要とコアコンセプト
3つの感情パラメータと防御値「愛の盾」、直接対決「決闘」によってヒロインの運命(純愛・NTR・堕落)をシミュレートする。
## 7.2 感情パラメータと「愛の盾」
* **好感度 (Affection):** 主人公への愛。「愛の盾」の最大耐久値。
* **淫乱度 (Lust):** 快楽への依存。盾の防御力(ダメージ軽減率)を下げる。
* **NTR度 (Netorare):** ライバル依存。盾破壊後に上昇する。
* **『愛の盾』:** NTR攻撃を無効化するバリア。耐久値0でブレイクし、NTR侵食が始まる。
## 7.3 NTR侵食プロセス
1. **盾への攻撃:** ライバルと同配置時、盾耐久値が減少。
2. **ブレイク:** 耐久値0で「心の隙間」発生。
3. **NTR進行:** ライバル接触で直接NTR度が上昇。
4. **陥落確定:** NTR度が閾値越えで盾が消滅。純愛ルート完全消失。
## 7.4 決闘システム (Duel System)
NTR阻止のための直接的解決手段。
* **種類:** 武力決闘、商談決闘、夜の決闘(性技対決)。
* **リターン:** ライバル追放・隷属化、「愛の盾」全回復。
* **リスク:** 敗北時、ヒロインを即座に強奪されNTRルート確定。
## 7.5 ルート攻略とプレイヤーアクション
* **純愛:** デート・会話で盾を回復。ライバルを物理的に隔離、または決闘で排除。
* **NTR:** 意図的に放置・アングラ労働で盾を弱体化させ、覗き部屋から寝取られる過程を鑑賞する。
* **堕落:** 媚薬や地下業務で淫乱度を上げ、盾の耐久値上限を溶かして家畜化させる。
## 7.6 Hステータスと履歴
* **履歴:** 処女喪失相手、経験数、現在のパートナーを記録。
* **妊娠:** 排卵日あり。父親判定、妊婦期の外見・ステータス変化。
* **刻印:** 指輪(純愛)、キスマーク(NTR)、淫紋・首輪・焼印(堕落・家畜)が立ち絵に反映される。
# 8. 施設システム詳細仕様書
## 8.1 施設の基本定義
* **建設ルール:** 地面・完成済み施設に隣接。表層は客用通路、裏層は裏通路にアクセス必須。
* **レベル:** LvMAXまで拡張可能。詳細設定(マイクロマネジメント)が解禁される。
## 8.2 表層施設:客用エリア
* **宿泊:** 一般客室、上級客室、VIPスイート(覗き対応・要高景観)。
* **飲食:** 大衆食堂、レストラン、酒場。裏層の「厨房」とセット運用必須。
* **衛生・娯楽:** 大浴場(覗き対応)、カジノ、闘技場、礼拝堂。
* **アングラ:** 風俗個室(覗き対応)、高級ソープ、SM拷問室、闇市場。
## 8.3 裏層施設:バックヤード
* **従業員管理:** 待機室、従業員寮(夜這い可)、警備員詰所。
* **物流:** 厨房(表層飲食店の裏)、倉庫、清掃員室、医務室。
* **特殊:** 覗き部屋(VIP/浴場/風俗の裏限定・裏通路を寸断)、地下牢、マナ炉。
## 8.4 動線・インフラ設備
* **垂直移動:** 蔓の昇降機(表・客用)、業務用EV(裏・高速)、階段、マナワープ。
* **通路:** 客用通路、裏通路、従業員ドア(表と裏を接続)。
## 8.5 施設マイクロマネジメント
LvUPで価格設定(ぼったくり設定含む)、食材ランク、風呂の混浴設定、風俗のハードプレイ設定、カジノのイカサマ率設定などが解禁される。
# 9. 経済システムと関連する施設詳細仕様書
## 9.1 通貨とリソース
* **資金 (Gold):** 表の金と裏の金。
* **マナ (Mana):** 施設維持エネルギー。枯渇すると全館機能停止。
* **資材 (Materials):** 建設・修理素材。
## 9.2 収益と支出
* **収益 (表):** 宿泊料、飲食売上。
* **収益 (裏):** 性風俗、カジノ、脅迫金、人身売買。
* **支出:** 人件費、維持費、仕入れ原価、闇銀行への借金返済、世界樹ランク税(上納金)。
## 9.3 経済関連施設
* **受付/精算所:** ロビーに設置。処理が遅いと機会損失。
* **金庫室:** 所持金上限解放。盗賊の標的になる。
* **購買部:** 消費自動発注、戦利品買取。
* **闇銀行:** 即時融資。返済滞納で店舗破壊部隊が襲来。
## 9.4 客の経済圏と破産システム
* **予算AI:** 「生存経費」より「娯楽経費(依存)」を優先するようになる。
* **破産:** ツケ払いで信用度を超過すると破産。女性客は「代物弁済」イベントで即座に奴隷化・投獄される。
# 10. 建築可能施設 詳細仕様書
## 10.1 宿泊施設
* 一般客室(2x1,表)、上級客室(4x1,表)、VIPスイート(6x2,表高層,覗き対応)、ドミトリー(4x1,表地下)。
## 10.2 飲食施設
* 大衆食堂(4x2,表)、レストラン(6x2,表)、酒場(4x2,表,騒音発生)、屋台(2x1,表)。
## 10.3 衛生・娯楽施設
* 大浴場(6x2,表,覗き対応)、カジノ(6x3,表地下)、闘技場(8x4,表地下)、礼拝堂(4x3,表)。
## 10.4 アングラ・性風俗施設
* 風俗個室(2x1,表地下,覗き対応)、高級ソープ(4x2,表地下)、SM拷問室(4x2,表地下)、闇市場(4x2,表地下)。
## 10.5 バックヤード施設
* 厨房(4x2,裏)、倉庫(4x2,裏)、待機室(4x2,裏)、従業員寮(2x1,裏)、警備員詰所(2x2,裏)、清掃員室(2x1,裏)、医務室(4x2,裏)。
## 10.6 特殊・ギミック施設
* 覗き部屋(2x1,裏限定)、地下牢(4x2,裏地下)、マナ炉(6x3,裏地下,奴隷消費)。
## 10.7 インフラ・防衛
* 蔓の昇降機(2x2,表)、業務用EV(3x2,裏)、ワープ(2x2,表)、魔法砲台(外壁)。
# 11. UX・ゲームプレイ画面詳細仕様書
## 11.1 メイン画面レイアウト
* **上部:** 資金・マナ・資材リソース、時間・天候、世界樹ランク。
* **下部:** [FRONT / BACK] レイヤー切替巨大トグルスイッチ、建設・管理メニュー。
* **マップエリア:** マウススクロール、ズームインアウト対応の2D断面図。表/裏の視覚的強調・半透明化制御。
## 11.2 インスペクター・詳細ウィンドウ
* **施設:** ポリシー設定、シフト配置(ドラッグ&ドロップ)。
* **ユニット:** 客の欲求バー・AI思考ログ、従業員の感情3軸グラフ・愛の盾耐久値。
## 11.3 覗き・背徳インターフェース
* 裏層の「カメラアイコン」からマジックミラー視界へ移行。
* アングル変更、スクリーンショット(脅迫証拠収集)、介入操作が可能。
## 11.4 建設・通知UX
* **建設:** グリッドスナップ、接続ライン警告表示。
* **通知:** ユニット頭上のフキダシ(Zzz、怒り、ハート)、イベントログ。
* **カットイン:** 「NTR侵食開始」などの重要警告、決闘発生、防衛戦開始演出。
# 12. デザイン基本方針仕様書
## 12.1 アートコンセプト
* **テーマ:** 『二面性 (Duality)』。表(自然・秩序・光)と裏(人工・混沌・闇)のコントラスト。
* **グラフィック:** 高精細ドット絵(マップ・SDキャラ)と、高品質アニメ塗り立ち絵(イベント・会話)。
## 12.2 レイヤー切替演出
* ガシャンという音ではなく、「魔法のレンズを通した」ように波紋が広がり世界が反転するシームレス演出。
## 12.3 キャラクター表現
* **ドット絵:** 呼吸、胸の揺れ、職種別歩行、生々しいHアニメーションループ。
* **立ち絵:** 破損、汚れ、刻印差分。純愛(ソフトフォーカス)とNTR/堕落(強い影・レイプ目)の明確な描き分け。
## 12.4 UI / サウンドデザイン
* **UIスキン:** 表モード(羊皮紙・ファンタジー)と裏モード(黒鉄・モニター風)で動的に変化。
* **BGM:** 表裏で同じ曲のアレンジ違い(裏は重低音ベース強調)をクロスフェード再生。
* **SE:** Hサウンドの水音へのこだわり、環境音(表の小鳥 vs 裏の蒸気管)による空間演出。
# 13. 必要デザインアセットリスト
## 1. 2Dイラストレーション
* メイン・サブキャラ立ち絵(表情・衣装・刻印差分含む)。
* HシーンイベントCG(ルート別・差分あり)、モブ汎用Hスチル。
## 2. ドット絵・アニメーション
* ユニットSDモーション(待機・歩行・作業・気絶・各種Hアニメループ)。
* エフェクト(愛の盾、煙、マナの光)。
## 3. マップ・施設タイルセット
* 施設Lv1〜3の外観・内装(表裏両方)。背景遠景。
## 4. UI/UX素材
* 表裏スキン、感情グラフUI、覗きモード専用オーバーレイ(ビデオカメラ風)。
## 5. サウンドアセット
* 動的変化対応BGM、環境音、UI操作音、H用SE(生音系)、キャラクターボイス。
# 14. ⭐️要修正・開発スケジュール・ロードマップ (大枠)
**対象期間:** 2026年3月 ~ 2027年12月 (マスターアップ)
* **【フェーズ1】プロトタイプ (2026/03-08):** 表裏レイヤー切替、AI移動ロジック、基本素材作成。MVPの完成。
* **【フェーズ2】アルファ版量産 (2026/09-2027/02):** パラメータ管理実装、立ち絵・施設タイルの量産、シナリオ・通常BGM組み込み。
* **【フェーズ3】ベータ版・R18実装 (2027/03-08):** Hシーン実装、覗きモード組み込み、ボイス収録・実装、ゲームバランスの徹底調整。
* **【フェーズ4】ポリッシュ・マスターアップ (2027/09-12):** 進行不能バグ等のデバッグ、UIレスポンス向上、マスタリング、最終完成。
@@ -0,0 +1,51 @@
# 最大欲求優先AIと来客観察UIの実装
2026-09-29。原本 `BASELINE.txt` 81〜83行(B-4.2)を現行のGuestServiceとRuntimeへ反映した。原本そのものは変更していない。
## 挙動の変更
従来は欲求解消・好み・品質・価格等の総合点を先に比較しており、空腹90・睡眠70でも高品質な客室を選び得た。現在は、施設が解消する四大欲求(食欲・睡眠欲・娯楽欲・性欲)の現在値を優先し、同じ欲求優先度の候補間で既存の距離・行列・価格・品質・好み等の点数を比較する。候補側が指定する緊急度で実欲求を上書きしない。
到達不能・休業・所持金不足・最低品質・クラス制約等の既存フィルターは維持する。同点時は既存の安定した施設ID順に決め、候補の投入順に左右されない。主欲求を解消する施設が利用不能、効用が退館閾値未満、予約失敗の場合は次の利用可能な候補へ進む。これは既存の代替施設・退館処理を維持する実装判断で、原本にない閾値や料金を新設していない。
新たな意思決定時に適用する。移動・待機・利用途中の目的地を強制的に変更しない。サービス属性一致の料金加算とは別の選択規則であり、未設定の加算額・不足基準を確定していない。衛生・救護の既存状態と緊急回復経路も保持する。
## ゲーム内の確認方法
上部の「来客」ボタンを押すと、実在する客を選び、四欲求のバー、所持金、忍耐、現在の行動、目的地を確認できる。現在最も高い欲求を文字でも表示する。同値の欲求は併記し、全て0なら「なし」。退館者の選択は残さず、読込後は復元されたGuestServiceから表示を作り直す。
表示は現在値と選択方針の説明。過去の意思決定を記録した思考履歴ではない。B-11.2の四欲求観察部分を進めたが、同要件群全体を完了とはしない。
パネルの更新は表示中のみ0.5秒間隔。経路探索や候補採点を表示のために再実行せず、保存スキーマも追加しない。描画確認ではSimulationDigest不変を検証した。
## 検証
[最終集計](../../../artifacts/guest-ai-2026-09-29/verification-summary.json): 関連 **627項目PASS・失敗0**。今回は関連試験の再実行であり、前回の全83本を新たに全件実行した結果ではない。
| 対象 | 項目数 | 主な確認 |
|---|---:|---|
| GuestService | 137 | 低い欲求の高品質施設より最大欲求を優先、距離・列・価格、到達・所持金、同値、閾値と予約失敗の代替、保存再生 |
| 来客UI | 22 | 実HUDから開く、全行動状態、欲求更新、空一覧、退館、復元、観察による状態不変 |
| Runtime客・職員統合 | 40 | 自律行動とサービス、24時間再生の完全一致 |
| Runtime異常系 | 74 | 行動・経路・保存境界 |
| ダッシュボード | 127 | HUD、操作、複数解像度のレイアウト |
| 営業 | 48 | 料金・受付・待機等 |
| 保存ライフサイクル | 96 | ディスク保存、復元、破損と回復 |
| 通常開業 | 53 | 初期予算から実建設・雇用・宿泊・00:00決算・翌朝、実描画 |
| macOS配布PCK | 15 | ソース非依存の18施設・建設・来客パネル |
| Windows配布PCK | 15 | 同上 |
`make check`、`git diff --check`も成功。Macの配布実行ファイルを起動して正常終了。Windows向け書き出しとPCK検証はMac上で行い、今回のWindows実機操作・性能測定は未実施。
[来客パネルの実画面](../../../artifacts/guest-ai-2026-09-29/observer.png) は、テスト用の実GuestRuntimeの欲求を設定した表示確認。自然来客の営業受入は上記53項目の別シナリオで確認した。
## 配布版
- Mac: `build/macos/TheTree-GuestAI-2026-09-29.app`
- `TheTree-ドット版を起動.command` を上記へ更新(ローカルとDriveの既存起動リンク)。
- Windows: `build/TheTree-Windows-GuestAI-2026-09-29.zip`。展開したEXEとPCKを同じフォルダーに置き、EXEを起動する。
- [ソース・配布物のハッシュ](../../../artifacts/guest-ai-2026-09-29/manifest.json)
## 残件
天候・流行、救護搬送のローカル統合、全施設・経済・進行・クラス特性、思考履歴などは残る。[原本対応表](IMPLEMENTATION_STATUS.md) と `requirements.json` を参照。本変更で原本全体の完成とはしない。
@@ -0,0 +1,89 @@
# 原本基準の現行実装状況
2026-09-29、ローカル制作コピーの監査。詳細・証拠・差異は [75要件トレーサビリティ](audit-2026-09-29/TRACEABILITY.md)。原本保存版との照合であり、今回Drive再取得は行っていない。
- 一部実装・差異あり: 52件
- 実装あり・全受入未検証: 2件
- 該当機能未実装: 9件
- 検証済み(記載範囲): 8件
- 工程要件・完了未認定: 4件
90スイートPASSは原本全実装を意味しない。工程4件を含む複合要件のため件数から完成率を算出しない。
| 要件 | 判定 | 根拠・差異 |
|---|---|---|
| B-1.1 基本情報・Windows・2D・20〜30時間/50時間以上 | 一部実装・差異あり | Windows配布物と2D断面図を実装。 20〜30時間の本編、50時間以上の全攻略の受入証拠がない。今回Windowsネイティブ確認は実施していない。 |
| B-1.2 地上/地下の二面性経営・観察介入・権威/富 | 一部実装・差異あり | 地上地下・二層の建設と観察、ランク・経済の基盤あり。 高さと権威、深さと富、介入を一貫して成立させる完成ゲームの受入が不足。 |
| B-1.3 建設→集客→収益→管理→拡張防衛 | 一部実装・差異あり | 建設・集客・宿泊飲食収入・雇用・物流の通常ループあり。防衛APIとRuntimeテストあり。 全裏収益、全施設、通常プレイでの防衛発生・高ランク到達まで未完了。APIテストを全ループ完了に数えない。 |
| B-1.4 二層・自律AI・渋滞・信仰と依存 | 一部実装・差異あり | 二層、客AI、シフト、渋滞、依存値と信仰値の基盤あり。 信仰による本編進行、依存客の全特殊行動まで接続されていない。 |
| B-1.5 世界観・主人公・7ヒロイン3運命 | 一部実装・差異あり | アンリとライの2名のデータあり。 原本の7ヒロインと各3ルート、主人公の物語・全エンドが揃っていない。 |
| B-1.6 成人向けルートと経営的搾取 | 一部実装・差異あり | 成人区分・対象施設・コンテンツ制御の基盤あり。 原本記載の全ルート・イベント・経営要素としては未完成。データやタグの存在を内容実装と扱わない。 |
| B-2.1 グリッド・Y正負・支持・領域拡張 | 実装あり・全受入未検証 | Y正負・境界、グリッド占有、支持判定、ランク別領域拡張APIあり。 個別テストはあるが通常プレイで高ランクまで進む原本一式の受入は未確認。 |
| B-2.2 同座標Front/Back・半透明/ワイヤー表示 | 一部実装・差異あり | 同一XYのFRONT/BACKスロットと切替を実装。 現画面は選択層のみの施設描画。原本の非選択層の半透明・ワイヤーフレーム表示を満たしていない。 |
| B-2.3 客エリアと景観/清潔/騒音の満足度効果 | 一部実装・差異あり | 清掃・施設品質・満足度の基盤、景観/清潔/騒音の定義フィールドあり。 beauty_effect/noise_per_service/cleanliness_decay_per_serviceの本体参照は定義のみ。3環境値の計算と客満足度への連動が不足。 |
| B-2.4 バックヤード・職員ドア・客通行禁止 | 一部実装・差異あり | 職員専用ドア、BACK経路、客アクセス制限、業務用EVあり。 原本にあるリネンシュート、隠し扉、覗き部屋を含む全バックヤード施設は未完了。 |
| B-2.5 覗き部屋の配置制約・通路寸断・証拠収集 | 該当機能未実装 | 証拠管理APIは別機能としてあるが、覗き部屋の施設定義はない。 対象室背面限定建設、裏通路寸断、記録係と専用視界からの証拠収集が未実装。 |
| B-2.6 地上/地下の採光・マナ・遮音・隠蔽ボーナス | 一部実装・差異あり | 地上/地下ゾーンの配置制約、関連する環境定義フィールドあり。 採光・マナ濃度・遮音・隠蔽のゾーン別ボーナス計算と客層効果が未接続。 |
| B-3.1a 10秒=1時間、Pause/x1/x2/x3 | 検証済み(記載範囲) | 10秒=1時間、Pause/x1/x2/x3。旧x4セーブの移行も実装。 今回時計テストを再実行。時間倍率の要件を検証済み。 |
| B-3.1b アクティブポーズ中も建設・指示 | 検証済み(記載範囲) | 停止中の当分コマンドを即処理し、停止したまま建設予約・指示を受理。 今回停止中コマンドテストと開業UIテストを再実行。工事進行は時間再開後。 |
| B-3.2 4時間帯と朝下り/夕上り/夜行動 | 一部実装・差異あり | 06/10/16/20時の4フェーズ、来客時間帯、18時シフト交代あり。 朝の下り・夕の上りラッシュと原本指定の夜行動全体を再現するシナリオ受入が不足。 |
| B-3.3 昼夜シフト・体力0気絶・救護・通勤混雑 | 検証済み(記載範囲) | 勤務体力減少、気絶、目撃評判低下、BACK/EV同伴救護、待機室休息、16人交代混雑を検証。 現行施設での検証。回復速度・治療時間等の数値は暫定値であり原本確定値ではない。 |
| B-3.4a 毎日00:00に決算レポート | 検証済み(記載範囲) | 00:00決算・給与・帳簿自動表示・保存復元を実装。 時刻とレポートの要件を検証済み。未接続費目はB-9.2へ分離。 |
| B-3.4b 3回連続赤字でゲームオーバー | 検証済み(記載範囲) | 3回連続赤字で終了。黒字/ゼロで連続数リセット。終了状態も保存。 判定と終了制御を検証済み。全収支種別の充足とは別。 |
| B-3.5 雨・嵐・マナの霧・流行ニュース | 該当機能未実装 | 4時間帯はあるが天候・流行の実行系はない。 雨の客足/滞在、嵐の新規客ゼロ、マナ霧効果、数日ごとのニュースと売上効果が未実装。 |
| B-4.1 所持金/戦利品・四欲求・忍耐/清潔/依存 | 一部実装・差異あり | 財布・四欲求・忍耐・依存・信用/債務値あり。 戦利品の所持/換金、客自身の清潔度と歩行汚染伝播が不足。hygiene欲求を清潔度伝播の実装と数えない。 |
| B-4.2 最大欲求優先と距離/行列/価格選択 | 検証済み(記載範囲) | 利用可能候補の最大欲求を先に比較し、同順位を距離・待ち・価格等で選択。 現行サービス候補で検証済み。未登録施設の網羅ではない。 |
| B-4.3a A*とエレベーター待ち時間コスト | 実装あり・全受入未検証 | A*相当の探索とヒューリスティック、EV行列から見積る待ちコストを経路費用に加算。 今回経路・混雑テストPASS。実カゴ運行時間との見積誤差を含む原本専用の総合受入は未確認。 |
| B-4.3b 4種垂直移動のゲーム内利用 | 一部実装・差異あり | 客用EV・業務用EV・遅い階段は建設から実移動まで接続。 マナワープ施設・費用・瞬間移動は未実装。 |
| B-4.3c 重なり時速度50%低下 | 検証済み(記載範囲) | 重なった通路の移動速度0.5と移動クレジットを実装。 今回混雑テストを再実行。経路コストだけでなく実移動速度も既存Runtime/交代試験対象。 |
| B-4.4 依存Lv3退店拒否・装備売却・性別別破産 | 一部実装・差異あり | 依存値と支出優先の基盤あり。 依存Lv3退店拒否、装備売却、原本の性別別破産分岐は未接続。 |
| B-4.5 貴族/聖職者/エルフ/魔族のAI特性 | 一部実装・差異あり | 8客クラス・4種族、予算/忍耐/嗜好等の定義あり。 聖職者の目撃即退店/風紀、エルフの自然好み、魔族等の地下満足度耐性を原本通り通す受入がない。 |
| B-5.1 一般雇用と奴隷の費用/耐性/売却区別 | 一部実装・差異あり | FREE_HIRE/ADULT_CONTRACT/UNIQUEの区分と給与処理あり。 原本の食費のみ・ストレス耐性差・売却ルール一式とは一致を確認できない。 |
| B-5.2 体力/ストレス/忠誠/技能/ランダム特性 | 一部実装・差異あり | health/stress/loyalty/技能を保存し、勤務と救護でhealthを使用。 候補20名は固定データ。生成時のランダム特性付与と全職業技能効果が不足。 |
| B-5.3 接客/裏方/救護/防衛等の職種 | 一部実装・差異あり | 受付・料理・清掃・運搬・医療・警備等の職種と一部実作業を実装。 原本の全職種と専用施設・専用業務を網羅していない。 |
| B-5.4 シフト休息と気絶回収 | 検証済み(記載範囲) | 非番は稼働中待機室まで実移動して回復。体力0は回復せずBACK/EV搬送・治療へ。 現行施設で途中保存再開と画面表示を検証済み。宿舎の通常建設は未接続。 |
| B-5.5 求人/市場/破産捕獲・退職金/売買価格 | 一部実装・差異あり | 求人候補の採用・費用・割当、職員削除/退職APIあり。 市場購入、破産客獲得、退職金、能力による売価と他職員忠誠変化の通常フローが不足。 |
| B-6.1 ユニーク無料・高成長・解雇売却不可 | 一部実装・差異あり | UNIQUE区分、unique/unsellableの定義タグあり。 高成長・無料維持の一式と操作禁止の受入がない。remove_staffにはUNIQUE区分による削除拒否がない。 |
| B-6.2 7ヒロインの指定固有効果とライバル | 一部実装・差異あり | ユニークデータはアンリとライのみ。 残り6ヒロイン等が不足。アンリは忍耐減少倍率9000bpの定義であり原本の配置階売上+20%ではない。効果の本番適用も未接続。 |
| B-6.3 基礎技能と業務EXP・Lv99 | 一部実装・差異あり | 基礎パラメータと技能値はある。 業務EXP→レベル成長→Lv99上限の実行系が不足。MAX_SKILL_VALUE=999はLv99ではない。 |
| B-6.4 配置パッシブ・任意発動・ルート別スキル | 一部実装・差異あり | 固有效果のデータ枠、防衛スキルAPIがある。 7名の配置パッシブとプレイヤー任意発動、ルート別習得の通常導線が不足。 |
| B-6.5 24時間勤務警告・衣装補正・限定離脱 | 一部実装・差異あり | シフト例外・超過勤務・不在状態などの基盤あり。 ユニークの24時間勤務警告/強制継続、衣装補正、原本指定の限定離脱条件まで未完了。 |
| B-7.1 三感情・盾・決闘の3ルート運命 | 一部実装・差異あり | 関係値・盾・ルート固定・閾値イベントの汎用基盤あり。 原本の3感情と決闘による3ルート全体は未実装。 |
| B-7.2 好感/淫乱/NTR・好感度=盾最大・淫乱軽減 | 一部実装・差異あり | affectionとshield_current/maxはある。 現在の5指標はtrust/respect/affection/fear/dependence。原本のlust/NTR値がなく、好感度=盾最大とlustによる防御低下に不一致。 |
| B-7.3 同配置接触→盾破壊→NTR上昇→不可逆陥落 | 一部実装・差異あり | 盾攻撃API、配置リスク予測、ルート確認固定APIあり。 通常Tickはイベント期限/候補処理。実配置による自動接触→盾破壊→NTR増加→不可逆陥落の一連の接続がない。 |
| B-7.4 3種決闘・勝利追放/隷属/盾回復・敗北確定 | 該当機能未実装 | 防衛戦はあるが原本の決闘とは別機能。 3種類の決闘と勝敗による指定結果が未実装。 |
| B-7.5 会話/デート/隔離・覗き・薬による各ルート | 一部実装・差異あり | イベント選択・関係変化・盾回復の部品あり。 原本の各プレイヤーアクションと全ルートイベントを通常UIから進める接続が不足。 |
| B-7.6 履歴・妊娠/父親・刻印立ち絵 | 該当機能未実装 | 汎用フラグはあるが原本専用の履歴・外見システムはない。 指定履歴、妊娠周期・父親判定、立ち絵差分との接続が未実装。 |
| B-8.1 隣接/通路必須とLv拡張 | 一部実装・差異あり | 支持/隣接、アクセス点・通路判定、max_level/upgrade_costs定義あり。 施設LvUPの通常操作・支払い・能力変化・全解放設定が未完了。 |
| B-8.2 表層全施設・飲食と厨房セット | 一部実装・差異あり | 一般客室・食堂・酒場・浴場等と厨房の生産配送を実装。 レストラン/VIP/カジノ/闘技場/礼拝堂等が通常登録されていない。飲食全件の厨房セット条件は未充足。 |
| B-8.3 裏層全施設と特殊設備 | 一部実装・差異あり | 厨房・倉庫・待機室・警備詰所・医務室は通常登録あり。 宿舎は拡張定義のみ。清掃員室・覗き部屋・地下牢・マナ炉が不足。 |
| B-8.4 EV/階段/ワープ/通路/職員ドア | 一部実装・差異あり | 2種EV、階段、2層通路、職員ドアあり。 ワープ未実装。通路・職員専用制限は経路試験対象。 |
| B-8.5 Lv解放の価格/食材/混浴/ハード/イカサマ設定 | 一部実装・差異あり | 価格ポリシー、営業時間/営業状態のUIあり。 レベル解放と食材ランク/混浴/施設別特殊設定が原本一式として未完了。 |
| B-9.1 表金/裏金・マナ全館停止・資材 | 一部実装・差異あり | Gold/材料/マナ、帳簿、電力不足による施設状態あり。 表金/裏金の独立運用と「マナ枯渇で全館停止」は未充足。Runtimeは出力100の初期マナ源を持つ。 |
| B-9.2 全収益/人件費/維持/仕入/借金/ランク税 | 一部実装・差異あり | 宿泊飲食売上、給与、仕入れ、建設、罰金等を記帳。 maintenance_goldは定義/検証のみ。日次maintenance/utilities/taxes_and_interestに全施設維持費・借金返済・ランク税を計上する実処理がない。 |
| B-9.3 受付/金庫/購買/闇銀行 | 一部実装・差異あり | 受付・精算待ち、購買/自動発注管理の部品あり。 金庫室の上限/盗賊、戦利品買取、闇銀行融資・滞納破壊を施設と通常UIへ接続していない。 |
| B-9.4 依存客の娯楽優先・信用超過の破産拘束 | 一部実装・差異あり | 高依存時の生存予算留保0、信用枠/債務を実装。 信用超過→原本の破産イベント/拘束/配置まで未接続。 |
| B-10.1 宿泊施設の寸法/層/ゾーン | 一部実装・差異あり | 一般客室2×1 FRONTは一致。 上級客室は定義3×2で原本4×1と不一致かつ通常未登録。VIP6×2、ドミトリー4×1なし。 |
| B-10.2 飲食施設の寸法/層/ゾーン | 一部実装・差異あり | 大衆食堂4×2、酒場4×2 FRONTは寸法一致。 レストラン6×2・屋台2×1なし。騒音定義の実効果不足。 |
| B-10.3 衛生/娯楽施設の寸法/層/ゾーン | 一部実装・差異あり | 大浴場6×2 FRONTは寸法一致。 カジノ6×3、闘技場8×4、礼拝堂4×3なし。浴場の覗き機能なし。 |
| B-10.4 アングラ施設の寸法/層/ゾーン | 一部実装・差異あり | 個室2×1 FRONT地下は寸法/層一致。 高級ソープ・SM室なし。闇市場は定義3×2で原本4×2と不一致かつ通常未登録。 |
| B-10.5 バックヤード施設の寸法/層/ゾーン | 一部実装・差異あり | 厨房4×2・倉庫4×2・待機室4×2・警備2×2・医務4×2 BACKは寸法一致。 従業員寮は定義4×2で原本2×1と不一致かつ通常未登録。清掃員室2×1なし。 |
| B-10.6 特殊施設の寸法/層/ゾーン | 該当機能未実装 | 原本3施設に対応する通常登録・定義なし。 覗き部屋2×1 BACK、地下牢4×2 BACK地下、マナ炉6×3 BACK地下が未実装。 |
| B-10.7 インフラ/防衛施設の寸法/層/ゾーン | 一部実装・差異あり | 客用EV2×2 FRONT・業務用EV3×2 BACKは一致。 ワープ2×2 FRONT・外壁魔法砲台がない。防衛APIの存在は砲台施設の証拠ではない。 |
| B-11.1 資源/時間/天候/Rank・下部切替・スクロールズーム | 一部実装・差異あり | 資源/時間/ランク、レイヤー切替、パン/ズームあり。 天候表示、指定下部巨大切替、非選択層の半透明表示まで原本一致ではない。 |
| B-11.2 Policy/ドラッグ配置・欲求/思考/感情グラフ/盾 | 一部実装・差異あり | 価格ポリシー、職員割当UI、客四欲求/状態/目的地表示あり。 ドラッグ配置、AI思考履歴、3感情グラフ、盾詳細の通常UIが不足。 |
| B-11.3 カメラ入口・覗きアングル/撮影/介入 | 該当機能未実装 | 現在のメインUIに原本の覗き専用導線はない。 カメラ入口、角度、撮影、証拠収集、介入の一式が未実装。 |
| B-11.4 グリッド/接続警告・フキダシ/ログ・カットイン | 一部実装・差異あり | グリッド建設プレビュー・警告/状態表示・ログと人物表示あり。 原本指定の全フキダシ、重要イベント/決闘/防衛カットインと接続線警告の全受入は不足。 |
| B-12.1 二面性・高精細ドットとアニメ立ち絵 | 一部実装・差異あり | Kenneyタイルと独自ドット人物で断面図・室内作業を表示。 原本の高品質アニメ立ち絵と二面性表現の完成受入はない。 |
| B-12.2 魔法レンズ風の波紋切替 | 該当機能未実装 | レイヤー選択は即時切替。 魔法レンズ風の波紋反転演出が未実装。 |
| B-12.3 SD各モーション・立ち絵破損/汚れ/刻印差分 | 一部実装・差異あり | 歩行・待機・作業・気絶/搬送/治療・休息のドット表示あり。 原本の全職種専用モーション、立ち絵破損/汚れ/刻印差分は未完成。 |
| B-12.4 表裏UIスキン・BGMクロスフェード・環境音/SE | 一部実装・差異あり | 昼夜/レイヤーの色調変化あり。 羊皮紙/黒鉄の完成スキン、表裏BGMクロスフェード、環境音/SEの実再生なし。 |
| B-13.1 立ち絵/CG/差分 | 該当機能未実装 | キャラクターデータはあるが指定イラスト一式はない。 メイン/サブ立ち絵、衣装/表情/ルート差分・イベントCGの制作と接続が不足。 |
| B-13.2 SDモーション/エフェクト | 一部実装・差異あり | ドット人物と一部状態モーションあり。 原本が求める全モーションと盾/煙/マナ等の全演出資産は未完成。 |
| B-13.3 Lv1〜3表裏タイル/背景 | 一部実装・差異あり | 現行施設内装・背景・タイル素材あり。 全施設Lv1〜3の表裏外観/内装差分とLvUP表示接続が不足。 |
| B-13.4 表裏スキン/感情/覗き素材 | 一部実装・差異あり | 現行管理UI・ボタン・欲求バー等あり。 表裏スキン完成版、3感情グラフ、専用カメラオーバーレイなし。 |
| B-13.5 BGM/環境/操作/成人向けSE/声 | 該当機能未実装 | assets内にogg/wav/mp3がなく、本体コードにAudioStreamPlayer参照がない。 動的BGM、環境/操作SE、ボイス等の同梱・再生が未実装。 |
| B-14.1 2026/03〜08 プロトタイプ | 工程要件・完了未認定 | MVP相当の開業ループと試験は存在する。 工程要件。2026/03〜08の納期達成や当時の受入完了を現在コードからは認定できない。 |
| B-14.2 2026/09〜2027/02 アルファ | 工程要件・完了未認定 | パラメータ基盤あり。現日はアルファ予定期間内。 量産素材・シナリオ・通常BGMの工程完了は未達。機能完了数に混ぜない。 |
| B-14.3 2027/03〜08 ベータ/成人向け | 工程要件・完了未認定 | 原本に将来工程として記載。 2027/03〜08の完成条件であり、現在完了扱いにしない。 |
| B-14.4 2027/09〜12 ポリッシュ | 工程要件・完了未認定 | デバッグ・性能確認の実施記録はある。 2027/09〜12のマスターアップ工程全体の承認証拠はない。個別PASSで代替しない。 |
@@ -0,0 +1,58 @@
# 同伴救護・待機室休息・交代ラッシュ(2026-09-29)
ローカル制作版 `/Users/korizatou114/Projects/とりにく工房ゲーム制作部` に実装。原本68行・108〜110行を対象とする。原本そのものは変更していない。前回の [救護記録](STAFF_RESCUE_VERIFICATION_2026-09-29.md) に残していた同伴エレベーター乗車を解消し、追加監査で見つかった非番の休息先への移動も修正した。
## 同伴搬送
- 救護者と患者の二人分を一括予約し、二人とも同じ便に乗車・降車する。残り1席なら二人とも次便を待つ。
- 二人目の予約が満杯等で失敗した場合、一人目の予約と採番を戻す。再送は重複予約にしない。
- 裏経路ではBACKの業務用EVのみ使用できる。表層の客用EVで裏経路を代用しない。階段も引き続き使える。
- 停電・手動停止では二人を同じ実在する最寄り階へ降ろす。安全な階がない場合は車内で保持する。
- 医務室停止・救護者気絶が乗車中に起きても、患者だけを乗車階へ戻したり途中で回復させたりしない。実際の降車後に再手配する。
- 予約中の取消は二人同時。乗車中の個別取消は拒否する。
- 相互の同伴IDを保存し、保存データの片側欠損・不一致を拒否する。追加フィールドのない既存の単独乗車セーブも読める。
- 増設工事中の昇降機には新しい同伴予約を入れない。
通常の雇用候補テッサを医務室へ配属し、業務用EVだけでつながった上階の患者の回収・治療を描画付きで確認した。患者の負傷だけをテスト用に注入している。実際の車内には2人が表示される。
## 非番の休息
従来は非番なら表通路でも回復していた。現在は、稼働している待機室等への到達経路を選び、実際に歩いて移動し、到着後に体力を回復する。休室・経路断では回復しない。体力0の気絶は休息では復帰せず、救護を必要とする。
移動は既存の通勤経路・移動進捗・昇降機を使用する。隠れたタイマーや別の座標を保存せず、現在位置・施設状態から再開する。従業員パネルの「休憩先へ移動中」「待機室で休憩中」「休憩先なし」は実状態に連動する。待機室内のドット従業員と休憩人数も実際に到着した人物から描画する。
休憩室の保管量等の汎用capacityを、未指定の従業員休憩人数上限に流用していない。元からの回復速度は調整値のままであり、原本の確定数値とは扱わない。
## シフト交代
通常建設した4施設、昼番8人・夜番8人の計16人で18時の交代を確認。昼番は勤務終了し、夜番は物理的に職場へ到着してから勤務を始める。同じ通路に集中すると移動速度は50%になり、移動途中のセーブから同じ位置・勤務履歴・イベントを再現する。
## 個別検証
- ElevatorService: 123項目PASS(既存の単独客・スタッフ乗車も含む)。
- 救護基本・裏経路: 46項目PASS。
- Runtime同伴救護: 23項目PASS(ディスク保存、緊急降車、医務室停止、救護者気絶)。
- 通常雇用・配属からの同伴救護UI: 描画あり16項目PASS。
- 待機室休息: 14項目PASS。
- 待機室UI: 描画あり9項目PASS。
- 16人交代ラッシュ: 42項目PASS。
- 開業→00:00決算→翌朝→ディスク保存・再開: 描画あり53項目PASS。
- 実購入・調理・配送を含む3営業日: 49項目PASS。食堂売上3,000G、原料配送30便・料理配送80便、最終所持金2,855G。各日の帳簿照合・未払なし・保存復元を確認。
全ソーステスト **90スイートPASS・失敗0**。Mac/Windowsの配布PCK単体でも各5本(開業、同伴Runtime、同伴UI、休息Runtime、休息UI)を確認。`make check`、`git diff --check`、Mac実行ファイル起動、Windows ZIPのCRCを確認した。
全体回帰の最終集計は `artifacts/remaining-2026-09-29/verification-summary.json` に記録する。これは現在の実装に対するテストであり、原本75要件すべての完成を意味しない。対応表のB-3.3とB-5.4は、今回の現行施設での検証範囲を明記して更新した。
## 配布と操作
1. BACKに待機室を建設し、職員扉・裏通路・必要な階段または業務用EVでつなぐ。非番の従業員は自動で休息へ向かう。
2. BACKに医務室を建設し、医療職テッサを通常雇用して配属する。気絶した従業員を自動救護する。
3. 従業員パネルで体力・休憩・救護状態を確認できる。
Mac版: `build/macos/TheTree-Labor-2026-09-29.app`。
Windows版: `build/TheTree-Windows-Labor-2026-09-29.zip`。
Windowsは配布PCK単体の自動検証を行う。今回のセッションからWindowsネイティブ実機を操作できる接続は確認できていないため、実機確認済みとはしない。
## 原本全体に残る範囲
天候・流行、原本全施設の機能接続、全固有キャラクターの非露骨な能力・進行、上位ランク、経済・音声等は引き続き対応表の未完了項目に残る。ベッド人数上限・加算料金等の利用者が未設定とした数値も、決め打ちで確定させていない。今回の労務・搬送の完了と原本全体の完了を区別する。
@@ -0,0 +1,25 @@
# 00:00決算と連続赤字判定(2026-09-27)
対象原本: `BASELINE.txt` 3.4、B-3.4a / B-3.4b。
## 実装
- 新規ゲームは毎日00:00に決算。初日は06:00開始から最初の00:00までの実際の取引を集計する。
- 日次給与は決算で一度だけ発生。費用はその営業日の損益へ配賦し、現金支払の時刻は実際の決算時刻を記帳する。
- 分類済みの売上・費用による損益が負なら連続赤字を加算。0または正なら0へ戻す。所持金・未払い残高とは別に判定し、3回で終了する。
- 終了した決算は保存し、その時刻以後の時間進行を止める。給与・台帳・損益・終了状態の整合をロード時にも検証する。終了後の新規コマンドは採番・記帳前に拒否し、ゲーム状態を変更しない。
- 00:00に帳簿パネルを自動表示する。現金収支、営業損益、未払い、連続赤字回数、確定時刻を表示する。
- 朝06:00の勤務・行動点・朝の保存処理は独立して維持する。
## 旧セーブ
Operations v1〜v3はv4へ移行する。確定済みの06:00決算・給与・旧未払いカウンタは改変しない。
開いている旧営業日を次の06:00に一度締め、それ以降は00:00に締める。
切替時の営業日は18時間となる。前の決算終了時刻を次の集計開始時刻にするため、取引の重複・欠落はない。
旧確定記録の未払い連続回数を新しい赤字連続回数に混ぜず、移行後の最初の決算から損益で判定する。
既に旧版で終了したセーブは終了状態を保持する。画面では旧版の履歴と識別する。
## 範囲と残件
今回の判定は実装済みの会計項目を対象とする。原本全施設の維持費、借金返済など未接続の経済機能は別の残件であり、この変更で実装済みとはしない。
検証結果は実行完了後に `MIDNIGHT_VERIFICATION.md` に記録する。
@@ -0,0 +1,38 @@
# 00:00決算の検証結果(2026-09-27)
原本3.4の決算時刻・連続赤字による終了を実装した。原本全体の実装は未完了。
仕様と保存データ移行は [実装詳細](MIDNIGHT_SETTLEMENT.md)、残件は [実装対応表](IMPLEMENTATION_STATUS.md) に記録する。
| 検証 | 結果 |
|---|---|
| 全ソーステストと差分の最終再検証 | 82本・6,951チェック、失敗0、未実行0 |
| 決算境界・損益判定・旧セーブ移行 | 専用29チェック合格。23:59保存、00:00決算、未払いがない赤字、黒字時の未払い、0/黒字リセット、旧履歴保持、移行日、改変拒否を確認 |
| Runtimeの給与・台帳・保存互換 | 51チェック合格。旧06:00で実際に支払った給与の履歴を保存し、切替後の18時間集計も復元可能 |
| 終了・14日分の決算再現性 | 46チェック合格。終了後の新規操作は採番・現金・履歴を変更せず拒否。中間復元と連続実行が同一 |
| 通常資金で3日間の営業 | 49チェック合格。自然来客、雇用、調理、配送、給与、配送中のディスク保存復元。残金2,855G・食事売上3,000G・食事配送80件 |
| 全テスト合格後の画面付き通し確認 | 53チェック合格。新規開業→建設→雇用→自然来客→00:00帳簿表示→保存復元→翌朝営業→同一状態再現 |
| 帳簿選択 | 新決算時は最新日を自動選択。その後の過去日選択は通常更新で維持 |
| エディター/起動検査 | make check、差分の空白検査に合格 |
| macOS配布データ | 元ソース外から13チェック合格、ネイティブMac実行終了コード0 |
| Windows配布データ | Mac上のGodotでPCKの13チェック合格。Windows実機での実行は未検証 |
通常営業の決算結果:
| 営業日 | 確定分 | 損益 | 未払い | 連続赤字 |
|---|---:|---:|---:|---:|
| 1 | 1440(翌日00:00) | -555G | 0G | 1回 |
| 2 | 2880(翌日00:00) | +715G | 0G | 0回 |
| 3 | 4320(翌日00:00) | +715G | 0G | 0回 |
ログ・集計・画面画像は `artifacts/midnight-2026-09-27/`。
`all-tests.json` は初回全件実行、`effective-tests.json` は追加した検証を含む最終集計。
全件実行中に追加した変更は関連テストを再実行して最終集計に反映した。帳簿選択のUI2ファイルは以後のUIテストと画面付き通し検証で確認した。画面確認で開業ガイドの旧決算表現1箇所を修正し、最終版の画面付き通し検証も再実行した。
原本文書は変更していない。最終配布版作成後の126ソースファイルのハッシュは検証完了時にも一致。
配布版:
- `build/macos/TheTree-Midnight-2026-09-27.app`
- `build/windows-midnight-2026-09-27/TheTree.exe` と `TheTree.pck`
- ローカル版と旧Driveフォルダの `TheTree-ドット版を起動.command` は今回のMac版を参照。
維持費・借金返済の全接続、天候、全施設、救護搬送等は別の残件。このテスト合格を原本全要件の完了とは扱わない。
@@ -0,0 +1,50 @@
# 従業員救護の実装・検証(2026-09-29)
作業対象は `/Users/korizatou114/Projects/とりにく工房ゲーム制作部`。原本 `BASELINE.txt` は変更していない。原本68行の体力0・救護・目撃評判、110行の裏経路による回収、207行の4×2 BACK医務室を対象とした。原本全体の実装完了ではない。
## 実装した動作
- 勤務による体力低下、体力0の気絶と作業中断。シフト終了や休息だけで気絶から復帰しない。
- 稼働中の医務室と裏経路がある場合、医療職に救護を割り当てる。通常の雇用候補テッサで利用できる。物流職だけでは救護を担当しない。
- 医療職が患者まで歩き、患者と同じ位置に到達してから搬送を開始する。裏通路・職員扉・実際に接続された階段を使用し、表通路の近道や接続のない上下移動は使用しない。
- 搬送中は患者と救護者の位置を同期。医務室への到着後に治療し、終了時に体力を回復する。
- 医務室停止や救護者の気絶で搬送を中断する。患者を最後の位置に残し、条件成立後に再手配する。重複救護を作らない。
- 表層で顧客が気絶を目撃した場合、評判を一度だけ下げる。
- 搬送中のディスク保存・読込、保存ダイジェスト一致、復元後70分の状態・イベント一致を検証。既存タスクの追加フィールド欠落は許容し、不正型は拒否する。
- 建設パレットに医務室を追加(通常登録施設19件)。顧客向け施設候補から医務室を除外する。
- 従業員パネルに体力、救護待ち、迎え、搬送、治療の状態を表示。ドット画面に搬送中の患者と治療中のベッド表示を追加した。独自の新規画像は追加していない。
## 操作方法
裏層に医務室を建て、職員扉・裏通路・必要な階段で経路をつなぐ。従業員候補から医療職のテッサを雇用し、医務室へ配属する。体力0の従業員が発生すると救護を自動手配する。選択した従業員の詳細で進行状態を確認できる。
## 検証
- 救護Runtime: **43項目 PASS**。気絶、経路、医務室停止、担当者気絶、目撃、旧タスク互換、ディスクSave/Load、決定的再現を含む。
- 描画ありの救護操作: **13項目 PASS**。建設パレットから有償建設、通常雇用・配属、搬送、治療完了を確認。患者の負傷だけをテスト用に注入した。
- 関連14スイート: **1,149項目 PASS**。従業員、通勤、配属、UI、Save/Load、階段、経路、来客AI、開業フロー。
- 配布Mac/Windows PCK: **各15項目 PASS**。ソースツリー外で配布データから建設・開業・HUDを確認。
- Windows配布PCK単体の救護Runtime/操作: **43 + 13項目 PASS**。ソースツリー外から検証。
- 描画ありの開業→決算→翌朝→保存再開: **53項目 PASS**。
- 上記合計 **1,344項目 PASS**。`make check`、`git diff --check`、Mac実行ファイル起動、Windows ZIP整合性を確認。
- Windowsネイティブ実機の操作確認は今回実施していない。
ログ、スクリーンショット、検証集計、ソースと配布物SHA-256は `artifacts/rescue-2026-09-29/`。`initial-startup-before-fix.log` は初期開発時の型エラーの記録で、修正後の起動確認は `check.log` / `native-macos.log`。最終結果は `verification-summary.json` を参照。
## 原本が数値を定めていない調整値
勤務30分につき体力-1、通常休息30分につき+1、治療30分で体力100・疲労0、目撃による評判-1は暫定値。医務室640G・資材8・建設80分も調整値であり、原本の確定値とは扱わない。体力減少は通常の営業シミュレーションで有効にする。
## この記録の時点での残件
同日続報: [労務・同伴救護の検証](LABOR_COMPLETION_2026-09-29.md)で同伴乗車と待機室休息を追加した。以下は初回検証時の履歴。
- エレベーターへの患者・救護者の同伴乗車。現状は搬送用経路からエレベーターを除外する。階段がない階へは搬送できない。
- 医務室のベッド人数上限、治療バランス、固有キャラクターによる治療補正。ベッド絵を同時人数の確定仕様とは扱わない。
- B-3.3/B-5.4全体、および原本の他要件の全件完了判定は保留。施設の破壊・摘発による休止解除条件も追加していない。
## 配布物
- Mac: `build/macos/TheTree-Rescue-2026-09-29.app`
- Windows: `build/TheTree-Windows-Rescue-2026-09-29.zip`(EXEとPCKを同梱)
- `TheTree-ドット版を起動.command` は検証したMac版を起動する。
@@ -0,0 +1,35 @@
# 原本準拠修正の検証(2026-09-27)
この文書は先行する時間倍率・施設パラメータ修正の記録。最新の決算修正・配布版は [00:00決算の検証記録](MIDNIGHT_VERIFICATION.md) を参照。
原本全体の実装は未完了。対応済みの範囲・既知の差異は [実装対応表](IMPLEMENTATION_STATUS.md) に記載する。
## 結果
| 検証 | 結果 |
|---|---|
| ソースのテストエントリポイント | 81本 / 6,905チェック、修正後の失敗0 |
| 20,000マス・200顧客・50従業員・150施設の高負荷 | 24チェック PASS |
| 実描画で開業→営業→保存復元→翌朝→同一再現 | 46チェック PASS |
| 実描画で関連施設操作・休止・巻戻し・旧速度セーブ | 15チェック PASS |
| 通常仕入れ・調理・配送の3日間 | 49チェック PASS、食事売上3,000G、残金2,855G |
| macOS書出しアプリの格納データによる開業 | 13チェック PASS |
| Windows書出しPCKによる開業 | 13チェック PASS |
| macOSネイティブアプリ単独起動 | /tmpから実行、終了コード0 |
| エディタのロード・通常起動 | make check PASS |
| 原本照合 | Google Drive再取得本文とローカル原本の全バイト一致 |
最初の全件走査は80本で、旧速度(25%/33%)の期待値を保持した2本が失敗した。原本の50%へ修正し、実移動・乗車時密度の両方を再実行して合格した。走査開始後に追加したUIテスト1本と、変更箇所の再実行を合わせた最終結果が81本。初回の失敗ログを削除せず `all-tests.json` に残し、修正後の結果を `effective-tests.json` と `verification-summary.json` に記録した。
関連施設については、実際に建設した客室をRuntimeコマンドで関連付け、ディスクへ保存し、設定変更後に読み戻して施設スナップショットが完全一致することも確認(営業管理UIテスト60チェックに含む)。休止中の厨房の調理と物流停止も検証済み。
性能試験はシミュレーション単体の測定であり、描画FPSの保証ではない。Windowsのexe/PCKは生成済みだがWindows実機上の起動は未検証。料金加算額・不足判定・人数上限など未設定の値を確定していない。
## 成果物
- macOS: `build/macos/TheTree-OriginalAlignment-2026-09-27.app`
- Windows: `build/windows-original-2026-09-27/TheTree.exe` と同ディレクトリの `TheTree.pck`
- ログ・画像・集計: `artifacts/original-2026-09-27/`
- ビルド時のソースハッシュ: `artifacts/original-2026-09-27/source-manifest.json`(検証終了時も一致)
これらのテストは現在実装した機能の検証であり、原本75要件群の全件合格ではない。
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,96 @@
{
"date": "2026-09-29",
"workspace": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部",
"baseline_sha256": "75e4bdbdeb379c9269553f0c776bdb9cc96e01f2d6aa5ca650d132c63a8aeb1a",
"baseline_drive_id": "1w3hpz3kacxo1jRDwDhDT0TzNRJtAo-LW",
"baseline_snapshot_date": "2026-09-22",
"prior_live_verification_date": "2026-09-27",
"drive_refetched_this_audit": false,
"requirement_count": 75,
"counts": {
"一部実装・差異あり": 52,
"実装あり・全受入未検証": 2,
"該当機能未実装": 9,
"検証済み(記載範囲)": 8,
"工程要件・完了未認定": 4
},
"previous_manifest_checked_entries": 24,
"previous_manifest_mismatches_before_doc_update": [],
"existing_source_suites": 90,
"existing_failed_suites": 0,
"existing_logs_missing": [],
"normal_registered_definitions": 19,
"palette_entries": 19,
"all_facility_definitions": 35,
"original_ch10_types": 30,
"original_ch10_normal_registered": 12,
"original_ch10_definition_only": 3,
"original_ch10_absent": 15,
"facility_definitions_explicit_customer_capacity": 0,
"facility_definitions_explicit_service_attribute": 0,
"new_test_results": "artifacts/traceability-audit-2026-09-29/results.json",
"windows_native_run_this_audit": false,
"new_checks": [
{
"check": "check",
"exit_code": 0,
"seconds": 10.93,
"log": "artifacts/traceability-audit-2026-09-29/check.log"
},
{
"check": "tests/run_tests.gd",
"exit_code": 0,
"seconds": 1.08,
"log": "artifacts/traceability-audit-2026-09-29/tests__run_tests.gd.log"
},
{
"check": "tests/s0/test_runtime_integration.gd",
"exit_code": 0,
"seconds": 20.92,
"log": "artifacts/traceability-audit-2026-09-29/tests__s0__test_runtime_integration.gd.log"
},
{
"check": "tests/s1/test_path_service.gd",
"exit_code": 0,
"seconds": 1.04,
"log": "artifacts/traceability-audit-2026-09-29/tests__s1__test_path_service.gd.log"
},
{
"check": "tests/s1/test_path_congestion.gd",
"exit_code": 0,
"seconds": 0.95,
"log": "artifacts/traceability-audit-2026-09-29/tests__s1__test_path_congestion.gd.log"
},
{
"check": "tests/s2/test_original_facility_parameters.gd",
"exit_code": 0,
"seconds": 0.94,
"log": "artifacts/traceability-audit-2026-09-29/tests__s2__test_original_facility_parameters.gd.log"
},
{
"check": "tests/ui/test_original_facility_controls.gd",
"exit_code": 0,
"seconds": 1.36,
"log": "artifacts/traceability-audit-2026-09-29/tests__ui__test_original_facility_controls.gd.log"
},
{
"check": "tests/s4/test_relationship_event_service.gd",
"exit_code": 0,
"seconds": 0.96,
"log": "artifacts/traceability-audit-2026-09-29/tests__s4__test_relationship_event_service.gd.log"
},
{
"check": "tests/ui/test_first_operating_day.gd",
"exit_code": 0,
"seconds": 118.4,
"log": "artifacts/traceability-audit-2026-09-29/tests__ui__test_first_operating_day.gd.log"
}
],
"new_check_count": 9,
"new_failed_checks": 0,
"source_manifest_entries": 231,
"audit_integrity": "75 unique IDs; code anchors and test paths valid; source hashes match",
"source_line_count": 258,
"unmapped_substantive_lines": 0,
"new_assertion_count": 400
}
@@ -0,0 +1,437 @@
[
{
"section": "10.1",
"name": "一般客室",
"definition_id": "standard_room",
"original_size": "2x1",
"original_layer_zone": "FRONT",
"definition": {
"path": "data/facilities/standard_room.tres",
"footprint": "2x1",
"layer": 0,
"zone": 1,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.1",
"name": "上級客室",
"definition_id": "premium_room",
"original_size": "4x1",
"original_layer_zone": "FRONT",
"definition": {
"path": "data/facilities/expansion/premium_room.tres",
"footprint": "3x2",
"layer": 0,
"zone": 1,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.1",
"name": "VIPスイート",
"definition_id": null,
"original_size": "6x2",
"original_layer_zone": "FRONT高層",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.1",
"name": "ドミトリー",
"definition_id": null,
"original_size": "4x1",
"original_layer_zone": "FRONT地下",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.2",
"name": "大衆食堂",
"definition_id": "cafeteria",
"original_size": "4x2",
"original_layer_zone": "FRONT",
"definition": {
"path": "data/facilities/cafeteria.tres",
"footprint": "4x2",
"layer": 0,
"zone": 0,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.2",
"name": "レストラン",
"definition_id": null,
"original_size": "6x2",
"original_layer_zone": "FRONT",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.2",
"name": "酒場",
"definition_id": "tavern",
"original_size": "4x2",
"original_layer_zone": "FRONT",
"definition": {
"path": "data/facilities/tavern.tres",
"footprint": "4x2",
"layer": 0,
"zone": 0,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.2",
"name": "屋台",
"definition_id": null,
"original_size": "2x1",
"original_layer_zone": "FRONT",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.3",
"name": "大浴場",
"definition_id": "public_bath",
"original_size": "6x2",
"original_layer_zone": "FRONT",
"definition": {
"path": "data/facilities/public_bath.tres",
"footprint": "6x2",
"layer": 0,
"zone": 0,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.3",
"name": "カジノ",
"definition_id": null,
"original_size": "6x3",
"original_layer_zone": "FRONT地下",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.3",
"name": "闘技場",
"definition_id": null,
"original_size": "8x4",
"original_layer_zone": "FRONT地下",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.3",
"name": "礼拝堂",
"definition_id": null,
"original_size": "4x3",
"original_layer_zone": "FRONT",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.4",
"name": "風俗個室",
"definition_id": "adult_private_room",
"original_size": "2x1",
"original_layer_zone": "FRONT地下",
"definition": {
"path": "data/facilities/adult_private_room.tres",
"footprint": "2x1",
"layer": 0,
"zone": 3,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.4",
"name": "高級ソープ",
"definition_id": null,
"original_size": "4x2",
"original_layer_zone": "FRONT地下",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.4",
"name": "SM拷問室",
"definition_id": null,
"original_size": "4x2",
"original_layer_zone": "FRONT地下",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.4",
"name": "闇市場",
"definition_id": "black_market",
"original_size": "4x2",
"original_layer_zone": "FRONT地下",
"definition": {
"path": "data/facilities/expansion/black_market.tres",
"footprint": "3x2",
"layer": 0,
"zone": 3,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.5",
"name": "厨房",
"definition_id": "kitchen",
"original_size": "4x2",
"original_layer_zone": "BACK",
"definition": {
"path": "data/facilities/kitchen.tres",
"footprint": "4x2",
"layer": 1,
"zone": 0,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.5",
"name": "倉庫",
"definition_id": "warehouse",
"original_size": "4x2",
"original_layer_zone": "BACK",
"definition": {
"path": "data/facilities/warehouse.tres",
"footprint": "4x2",
"layer": 1,
"zone": 0,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.5",
"name": "待機室",
"definition_id": "staff_waiting_room",
"original_size": "4x2",
"original_layer_zone": "BACK",
"definition": {
"path": "data/facilities/staff_waiting_room.tres",
"footprint": "4x2",
"layer": 1,
"zone": 0,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.5",
"name": "従業員寮",
"definition_id": "staff_dormitory",
"original_size": "2x1",
"original_layer_zone": "BACK",
"definition": {
"path": "data/facilities/expansion/staff_dormitory.tres",
"footprint": "4x2",
"layer": 1,
"zone": 1,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.5",
"name": "警備員詰所",
"definition_id": "security_station",
"original_size": "2x2",
"original_layer_zone": "BACK",
"definition": {
"path": "data/facilities/security_station.tres",
"footprint": "2x2",
"layer": 1,
"zone": 0,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.5",
"name": "清掃員室",
"definition_id": null,
"original_size": "2x1",
"original_layer_zone": "BACK",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.5",
"name": "医務室",
"definition_id": "infirmary",
"original_size": "4x2",
"original_layer_zone": "BACK",
"definition": {
"path": "data/facilities/rescue/infirmary.tres",
"footprint": "4x2",
"layer": 1,
"zone": 0,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.6",
"name": "覗き部屋",
"definition_id": null,
"original_size": "2x1",
"original_layer_zone": "BACK",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.6",
"name": "地下牢",
"definition_id": null,
"original_size": "4x2",
"original_layer_zone": "BACK地下",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.6",
"name": "マナ炉",
"definition_id": null,
"original_size": "6x3",
"original_layer_zone": "BACK地下",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.7",
"name": "蔓の昇降機",
"definition_id": "guest_elevator",
"original_size": "2x2",
"original_layer_zone": "FRONT",
"definition": {
"path": "data/facilities/guest_elevator.tres",
"footprint": "2x2",
"layer": 0,
"zone": 0,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.7",
"name": "業務用EV",
"definition_id": "service_elevator",
"original_size": "3x2",
"original_layer_zone": "BACK",
"definition": {
"path": "data/facilities/service_elevator.tres",
"footprint": "3x2",
"layer": 1,
"zone": 0,
"customer_capacity_explicit": false,
"service_attribute_explicit": false
},
"runtime_registered": true,
"palette_listed": true,
"size_matches": true
},
{
"section": "10.7",
"name": "ワープ",
"definition_id": null,
"original_size": "2x2",
"original_layer_zone": "FRONT",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
},
{
"section": "10.7",
"name": "魔法砲台",
"definition_id": null,
"original_size": "未指定",
"original_layer_zone": "外壁",
"definition": null,
"runtime_registered": false,
"palette_listed": false,
"size_matches": false
}
]
@@ -0,0 +1,934 @@
[
{
"id": "B-1.1",
"section": "1.1",
"requirement": "基本情報・Windows・2D・20〜30時間/50時間以上",
"source_lines": [
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-1.2",
"section": "1.2",
"requirement": "地上/地下の二面性経営・観察介入・権威/富",
"source_lines": [
11,
12,
13,
14
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-1.3",
"section": "1.3",
"requirement": "建設→集客→収益→管理→拡張防衛",
"source_lines": [
15,
16,
17,
18,
19,
20,
21,
22
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-1.4",
"section": "1.4",
"requirement": "二層・自律AI・渋滞・信仰と依存",
"source_lines": [
23,
24,
25,
26
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-1.5",
"section": "1.5",
"requirement": "世界観・主人公・7ヒロイン3運命",
"source_lines": [
27,
28,
29,
30
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-1.6",
"section": "1.6",
"requirement": "成人向けルートと経営的搾取",
"source_lines": [
31,
32,
33,
34
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-2.1",
"section": "2.1",
"requirement": "グリッド・Y正負・支持・領域拡張",
"source_lines": [
36,
37,
38,
39
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-2.2",
"section": "2.2",
"requirement": "同座標Front/Back・半透明/ワイヤー表示",
"source_lines": [
40,
41,
42,
43,
44
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-2.3",
"section": "2.3",
"requirement": "客エリアと景観/清潔/騒音の満足度効果",
"source_lines": [
45,
46,
47
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-2.4",
"section": "2.4",
"requirement": "バックヤード・職員ドア・客通行禁止",
"source_lines": [
48,
49,
50
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-2.5",
"section": "2.5",
"requirement": "覗き部屋の配置制約・通路寸断・証拠収集",
"source_lines": [
51,
52,
53
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-2.6",
"section": "2.6",
"requirement": "地上/地下の採光・マナ・遮音・隠蔽ボーナス",
"source_lines": [
54,
55,
56
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-3.1a",
"section": "3.1a",
"requirement": "10秒=1時間、Pause/x1/x2/x3",
"source_lines": [
58,
59,
60
],
"current_status": "実装・検証済み",
"current_note": "10秒/時間・1/2/3倍速・旧4倍速セーブを3倍速へ移行。tests/run_tests.gd, tests/s6/test_performance_budget.gd"
},
{
"id": "B-3.1b",
"section": "3.1b",
"requirement": "アクティブポーズ中も建設・指示",
"source_lines": [
58,
59,
60
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-3.2",
"section": "3.2",
"requirement": "4時間帯と朝下り/夕上り/夜行動",
"source_lines": [
61,
62,
63,
64,
65
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-3.3",
"section": "3.3",
"requirement": "昼夜シフト・体力0気絶・救護・通勤混雑",
"source_lines": [
66,
67,
68,
69
],
"current_status": "実装・検証済み(現行施設)",
"current_note": "昼夜シフト境界、勤務体力低下/待機室休息、気絶と目撃評判、裏経路/業務用EV同伴救護を検証。16人の18:00交代で混雑50%速度、実到着後勤務、途中保存の完全再現を確認。LABOR_COMPLETION_2026-09-29.md参照。"
},
{
"id": "B-3.4a",
"section": "3.4a",
"requirement": "毎日00:00に決算レポート",
"source_lines": [
70,
71,
72
],
"current_status": "実装・検証済み",
"current_note": "00:00決算・給与計上・帳簿自動表示・Save/Load照合。旧セーブの確定済み06:00履歴を保持し、開いている日を一度締めてから00:00へ移行。MIDNIGHT_VERIFICATION.md参照。"
},
{
"id": "B-3.4b",
"section": "3.4b",
"requirement": "3回連続赤字でゲームオーバー",
"source_lines": [
70,
71,
72
],
"current_status": "実装・検証済み",
"current_note": "損益が負の決算3回連続で終了。0/黒字でリセット。未払いと別に判定。終了後の時間・新規コマンドを停止し、保存復元でも保持。全施設維持費・借金の経済接続は別の残件。"
},
{
"id": "B-3.5",
"section": "3.5",
"requirement": "雨・嵐・マナの霧・流行ニュース",
"source_lines": [
73,
74,
75
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-4.1",
"section": "4.1",
"requirement": "所持金/戦利品・四欲求・忍耐/清潔/依存",
"source_lines": [
77,
78,
79,
80
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-4.2",
"section": "4.2",
"requirement": "最大欲求優先と距離/行列/価格選択",
"source_lines": [
81,
82,
83
],
"current_status": "実装・検証済み(現行施設)",
"current_note": "2026-09-29: 実欲求を解消する候補の最大欲求値を先に比較し、同優先度では既存の距離・行列・価格・品質等の効用を比較。到達・価格・クラス等の既存フィルターを維持。候補不能時は次の利用可能候補、同値は安定IDで決定。GuestService 137項目とRuntime再生を検証。GUEST_AI_VERIFICATION_2026-09-29.md参照。"
},
{
"id": "B-4.3a",
"section": "4.3a",
"requirement": "A*とエレベーター待ち時間コスト",
"source_lines": [
84,
85,
86,
87
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-4.3b",
"section": "4.3b",
"requirement": "4種垂直移動のゲーム内利用",
"source_lines": [
84,
85,
86,
87
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-4.3c",
"section": "4.3c",
"requirement": "重なり時速度50%低下",
"source_lines": [
84,
85,
86,
87
],
"current_status": "実装・検証済み",
"current_note": "同一マスの複数人重なりで速度0.5。tests/s1/test_path_congestion.gd"
},
{
"id": "B-4.4",
"section": "4.4",
"requirement": "依存Lv3退店拒否・装備売却・性別別破産",
"source_lines": [
88,
89,
90
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-4.5",
"section": "4.5",
"requirement": "貴族/聖職者/エルフ/魔族のAI特性",
"source_lines": [
91,
92,
93,
94,
95
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-5.1",
"section": "5.1",
"requirement": "一般雇用と奴隷の費用/耐性/売却区別",
"source_lines": [
97,
98,
99
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-5.2",
"section": "5.2",
"requirement": "体力/ストレス/忠誠/技能/ランダム特性",
"source_lines": [
100,
101,
102,
103
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-5.3",
"section": "5.3",
"requirement": "接客/裏方/救護/防衛等の職種",
"source_lines": [
104,
105,
106,
107
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。 医療職と4×2 BACK医務室を救護に接続。施設・職種の全件完了ではない。STAFF_RESCUE_VERIFICATION_2026-09-29.md参照。"
},
{
"id": "B-5.4",
"section": "5.4",
"requirement": "シフト休息と気絶回収",
"source_lines": [
108,
109,
110
],
"current_status": "実装・検証済み(現行施設)",
"current_note": "非番の待機室への実移動、到着後の体力回復、閉室/経路断で回復停止、気絶時は回復せず救護。裏経路・業務用EV同伴搬送・治療・保存再開を検証。LABOR_COMPLETION_2026-09-29.md参照。"
},
{
"id": "B-5.5",
"section": "5.5",
"requirement": "求人/市場/破産捕獲・退職金/売買価格",
"source_lines": [
111,
112,
113
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-6.1",
"section": "6.1",
"requirement": "ユニーク無料・高成長・解雇売却不可",
"source_lines": [
115,
116
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-6.2",
"section": "6.2",
"requirement": "7ヒロインの指定固有効果とライバル",
"source_lines": [
117,
118,
119,
120,
121,
122,
123,
124,
125
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-6.3",
"section": "6.3",
"requirement": "基礎技能と業務EXP・Lv99",
"source_lines": [
126,
127,
128
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-6.4",
"section": "6.4",
"requirement": "配置パッシブ・任意発動・ルート別スキル",
"source_lines": [
129,
130,
131,
132
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-6.5",
"section": "6.5",
"requirement": "24時間勤務警告・衣装補正・限定離脱",
"source_lines": [
133,
134,
135
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-7.1",
"section": "7.1",
"requirement": "三感情・盾・決闘の3ルート運命",
"source_lines": [
137,
138
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-7.2",
"section": "7.2",
"requirement": "好感/淫乱/NTR・好感度=盾最大・淫乱軽減",
"source_lines": [
139,
140,
141,
142,
143
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-7.3",
"section": "7.3",
"requirement": "同配置接触→盾破壊→NTR上昇→不可逆陥落",
"source_lines": [
144,
145,
146,
147,
148
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-7.4",
"section": "7.4",
"requirement": "3種決闘・勝利追放/隷属/盾回復・敗北確定",
"source_lines": [
149,
150,
151,
152,
153
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-7.5",
"section": "7.5",
"requirement": "会話/デート/隔離・覗き・薬による各ルート",
"source_lines": [
154,
155,
156,
157
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-7.6",
"section": "7.6",
"requirement": "履歴・妊娠/父親・刻印立ち絵",
"source_lines": [
158,
159,
160,
161
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-8.1",
"section": "8.1",
"requirement": "隣接/通路必須とLv拡張",
"source_lines": [
163,
164,
165
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-8.2",
"section": "8.2",
"requirement": "表層全施設・飲食と厨房セット",
"source_lines": [
166,
167,
168,
169,
170
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-8.3",
"section": "8.3",
"requirement": "裏層全施設と特殊設備",
"source_lines": [
171,
172,
173,
174
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。 医療職と4×2 BACK医務室を救護に接続。施設・職種の全件完了ではない。STAFF_RESCUE_VERIFICATION_2026-09-29.md参照。"
},
{
"id": "B-8.4",
"section": "8.4",
"requirement": "EV/階段/ワープ/通路/職員ドア",
"source_lines": [
175,
176,
177
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-8.5",
"section": "8.5",
"requirement": "Lv解放の価格/食材/混浴/ハード/イカサマ設定",
"source_lines": [
178,
179
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-9.1",
"section": "9.1",
"requirement": "表金/裏金・マナ全館停止・資材",
"source_lines": [
181,
182,
183,
184
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-9.2",
"section": "9.2",
"requirement": "全収益/人件費/維持/仕入/借金/ランク税",
"source_lines": [
185,
186,
187,
188
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-9.3",
"section": "9.3",
"requirement": "受付/金庫/購買/闇銀行",
"source_lines": [
189,
190,
191,
192,
193
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-9.4",
"section": "9.4",
"requirement": "依存客の娯楽優先・信用超過の破産拘束",
"source_lines": [
194,
195,
196
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-10.1",
"section": "10.1",
"requirement": "宿泊施設の寸法/層/ゾーン",
"source_lines": [
198,
199
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-10.2",
"section": "10.2",
"requirement": "飲食施設の寸法/層/ゾーン",
"source_lines": [
200,
201
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-10.3",
"section": "10.3",
"requirement": "衛生/娯楽施設の寸法/層/ゾーン",
"source_lines": [
202,
203
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-10.4",
"section": "10.4",
"requirement": "アングラ施設の寸法/層/ゾーン",
"source_lines": [
204,
205
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-10.5",
"section": "10.5",
"requirement": "バックヤード施設の寸法/層/ゾーン",
"source_lines": [
206,
207
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。 医療職と4×2 BACK医務室を救護に接続。施設・職種の全件完了ではない。STAFF_RESCUE_VERIFICATION_2026-09-29.md参照。"
},
{
"id": "B-10.6",
"section": "10.6",
"requirement": "特殊施設の寸法/層/ゾーン",
"source_lines": [
208,
209
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-10.7",
"section": "10.7",
"requirement": "インフラ/防衛施設の寸法/層/ゾーン",
"source_lines": [
210,
211
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-11.1",
"section": "11.1",
"requirement": "資源/時間/天候/Rank・下部切替・スクロールズーム",
"source_lines": [
213,
214,
215,
216
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-11.2",
"section": "11.2",
"requirement": "Policy/ドラッグ配置・欲求/思考/感情グラフ/盾",
"source_lines": [
217,
218,
219
],
"current_status": "一部実装・欲求観察UIを追加",
"current_note": "2026-09-29: HUDの来客ボタンから四欲求・所持金・忍耐・状態・現在の目的地を確認できる。読込後と退館後の再表示を22項目で検証。意思決定履歴、ドラッグ配置、感情グラフ等を含む要件群全体は未完了。"
},
{
"id": "B-11.3",
"section": "11.3",
"requirement": "カメラ入口・覗きアングル/撮影/介入",
"source_lines": [
220,
221,
222
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-11.4",
"section": "11.4",
"requirement": "グリッド/接続警告・フキダシ/ログ・カットイン",
"source_lines": [
223,
224,
225,
226
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-12.1",
"section": "12.1",
"requirement": "二面性・高精細ドットとアニメ立ち絵",
"source_lines": [
228,
229,
230
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-12.2",
"section": "12.2",
"requirement": "魔法レンズ風の波紋切替",
"source_lines": [
231,
232
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-12.3",
"section": "12.3",
"requirement": "SD各モーション・立ち絵破損/汚れ/刻印差分",
"source_lines": [
233,
234,
235
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-12.4",
"section": "12.4",
"requirement": "表裏UIスキン・BGMクロスフェード・環境音/SE",
"source_lines": [
236,
237,
238,
239
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-13.1",
"section": "13.1",
"requirement": "立ち絵/CG/差分",
"source_lines": [
241,
242,
243
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-13.2",
"section": "13.2",
"requirement": "SDモーション/エフェクト",
"source_lines": [
244,
245,
246
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-13.3",
"section": "13.3",
"requirement": "Lv1〜3表裏タイル/背景",
"source_lines": [
247,
248
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-13.4",
"section": "13.4",
"requirement": "表裏スキン/感情/覗き素材",
"source_lines": [
249,
250
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-13.5",
"section": "13.5",
"requirement": "BGM/環境/操作/成人向けSE/声",
"source_lines": [
251,
252
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-14.1",
"section": "14.1",
"requirement": "2026/03〜08 プロトタイプ",
"source_lines": [
255
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-14.2",
"section": "14.2",
"requirement": "2026/09〜2027/02 アルファ",
"source_lines": [
256
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-14.3",
"section": "14.3",
"requirement": "2027/03〜08 ベータ/成人向け",
"source_lines": [
257
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
},
{
"id": "B-14.4",
"section": "14.4",
"requirement": "2027/09〜12 ポリッシュ",
"source_lines": [
258
],
"current_status": "未完了・現行版の全受入未確認",
"current_note": "過去監査の実装証拠をそのまま現行版の完了判定に流用しない。"
}
]
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,233 @@
{
"Makefile": "0947b523867dc7f1357292004897e17e48ce8fc97f208c85ae53a6dd230aa2fa",
"autoload/event_bus.gd": "6950280a5639dd5a3071ffefd034cb443a694739d5bf8c4e2dbcd52aadbab4b2",
"autoload/game_clock.gd": "39400634a57ccbf8c584b54a15a259048a95da90b1528330151e45667d65f7f7",
"autoload/game_state.gd": "cf0e884910220e54c56b5875983e53de439af9d893be1e1b65c2121d2a30722f",
"autoload/simulation_runtime.gd": "0c571936c6222f8891da9a6e6798543ec50a1f1b59eb1c8dfc709bc83fe6a351",
"data/characters/mvp_guest_classes.json": "5d55d4a0a10902da747000357ba36be9644bf027f253ea4b200a75f1ee4cc88b",
"data/characters/mvp_species.json": "6c7caf52305d76e07a0dee2b225ee92674c45d24cbca7f62bf4029bd3db00915",
"data/characters/mvp_staff_candidates.json": "437fb2d6731ac7d6539d88d3e2c006643a0ae379b22ce67a33e17f1c2e7fb3d9",
"data/characters/mvp_unique_characters.json": "51fbfb2720062a442a6027b994e9cf679a807edc20b2dd2f82635f8597286f46",
"data/facilities/adult_private_room.tres": "8f4725a1de93d36fef2cfbbea5672260e61e3d4e73951eb1d685f83a61b5635a",
"data/facilities/cafeteria.tres": "e2945fd3a7533eef4151277b95ec59c1798438721216a3df5145fdbbf1105fe1",
"data/facilities/expansion/black_market.tres": "39eb0a91776f84f31755c8555dfee9320eca1d4491951c297f9188b8fa1c4422",
"data/facilities/expansion/clinic.tres": "339cf22c68d7ab3cb1514b9e8d2ea63dc0772fe93918d70767c11cf7b6ee0e16",
"data/facilities/expansion/cold_storage.tres": "1aac824147b52b41e124d2ab2ce63c3bac58de2ec7fc447a5806a1cf9fa9ad99",
"data/facilities/expansion/general_store.tres": "76872e0375648b43f05fdc5581ccabe4aa6a166674c3b523980dd1cf0b6e6dc1",
"data/facilities/expansion/guild_counter.tres": "93e8736da4aab8a17b1c8e7831c9a7b8de7f32d0ec251aa9aa5c8cf859c8fd7b",
"data/facilities/expansion/laundry.tres": "2518ea2e5da12cf4f2997502bf50f00dd8145caca153fb3486b44b99881fdab4",
"data/facilities/expansion/maintenance_workshop.tres": "8bd10332a9f45a252febdc626f22f90507317fb4cff5b18b2526aacd1f1a176b",
"data/facilities/expansion/mana_control_room.tres": "55e4c52a049ff61ddf3d081ccb990a8572b64bc7cf37d3a0d52ca5a08cc32f25",
"data/facilities/expansion/premium_room.tres": "bf035db5deea3818ab12f029fdf53f65afa2f5c99fec4a236ce7dfb7076f5bb7",
"data/facilities/expansion/private_bath.tres": "241b807e7fa3a1b9dc4bda0d2495e637155cdaea89a4234e37a121f00098499c",
"data/facilities/expansion/secret_tavern.tres": "f0a1372931078fa0f93dd5b9cec6df6b137975479aa706633fdf6a9be4cf1f62",
"data/facilities/expansion/staff_dormitory.tres": "84c7a92216300a20f627c7e822219cf188912d9ba3417fa910261d18bdaf69cc",
"data/facilities/expansion/tea_lounge.tres": "77d1ace36c5e84f80c0e6d563ae973c7ff1cd12b56956afd4895cdcdd5771a67",
"data/facilities/expansion/underground_guest_room.tres": "cdfd0f8cd21812a9972485926dff27daaa6718af16aac1651894728b087bef9e",
"data/facilities/expansion/vip_private_salon.tres": "1c94a7a70393262fba82112c3f4a0cb67ad22728664f5ca408f450049d3657a7",
"data/facilities/expansion/waste_processing.tres": "9954855c7a07e425376a220c589989beb6ec95da3c5331316ef3615a60b45f1d",
"data/facilities/guest_corridor.tres": "2abf83d274ed4667ba07b8a384affcdfe2b387ad9513a444a7f78bcf237dab0c",
"data/facilities/guest_elevator.tres": "bf779e6ac3e342a01bc023673e90a2c0b12f22de456923a08bcc3294adb765c2",
"data/facilities/infrastructure/guest_stairs.tres": "37114d29b7486d1b5a3d84ab830c85d477973b2d39cfde84949aba342f4793b8",
"data/facilities/infrastructure/service_stairs.tres": "45c608dc4767a80ff322bd0d3721c953a314f445490142f715270a7a789391cc",
"data/facilities/kitchen.tres": "96dd06b83eebe6fdc735a491c52e44137adb1a17c7aac36ed1cec9aa96a10b67",
"data/facilities/massage_room.tres": "c6987f428c0ab73ccbbc8a992b5cf78c27bed0e87d886ad2e723018e804473a9",
"data/facilities/public_bath.tres": "0a2f7086c2c2eecd142e720183d279f33ed06e12fb5c1e782cca1ce3386f03f4",
"data/facilities/reception.tres": "d898f63d619c126abf80ee1e415d0bc587ccee30cd8ad4bd94f74fbae4cf4e76",
"data/facilities/rescue/infirmary.tres": "ae70ba4dbf6bece85e8d520a97a72e49a2b8069b4bed7e98c1f90b1b7ab9a46f",
"data/facilities/security_station.tres": "0c05f0e10239293f0a83e69f9ed7a98e38415920d9e610cebbfe327c913aa2a2",
"data/facilities/service_corridor.tres": "0e375c9f94f8d1597cbffe126c7f0d8fb4a52dd161fe4acd4ce60178b18cb2ee",
"data/facilities/service_elevator.tres": "17a22e70d7a997d8d61f973a3cbaccf51731e83d121fd9e4edf38d8f53ebb27a",
"data/facilities/staff_door.tres": "dd1df9b56b023a0b9624be2524a4f3ffe36252467bd189c07e441de64fe63d26",
"data/facilities/staff_waiting_room.tres": "c065b4ddb8cb9e8b45e114b6e4b12907ef85852b7c47271d280efed5871c9f58",
"data/facilities/standard_room.tres": "be26c02d3ac6d2423755f3648893adda8d81eaafa3d33c7babc8f8a4f2f93ebb",
"data/facilities/tavern.tres": "c38da70a8e66c6aa2cae650d17738022d06589322ad0e4ab561f5bbbd737378d",
"data/facilities/warehouse.tres": "0c797d1cb5fc574d0efce06e13c398f243889cf428f94c3d526d3b7f25fb6828",
"docs/traceability/original/BASELINE.txt": "75e4bdbdeb379c9269553f0c776bdb9cc96e01f2d6aa5ca650d132c63a8aeb1a",
"project.godot": "5be9bb6100daf31afcbaeddc784ec6e82f1f9283ab0b8a0ee3c7ae448cac867e",
"scenes/main/main.gd": "952a45ca4cdbaca8a667a3f8a8e032027963740fe8f840aa92c3db7b44c8ff4e",
"scenes/main/main.tscn": "dde43688b86251ce617131c362b1054ce8bd59b509c1abe19e831c0481a07319",
"scenes/main/world_preview.gd": "0ebb7c6a698d066199051ef51624d3f42d36660f31ffa853d57bd94b53f00b44",
"scripts/authority/authority_service.gd": "2979cca4c6a82932fed9babf209a608b8a20bda550c170f83a166db68ce02ab9",
"scripts/authority/evidence.gd": "85f1bd83a4ec994c8bb9bce296d8b63fcdb6bb26c1b4c2f47e16864450438649",
"scripts/authority/heat_state.gd": "7e507461684c159bed4c17acc939d6a98537d06d73de2dae235a788048f290b2",
"scripts/authority/incident.gd": "dbb58592746d0055b438fc8259f7c40d09f77076737c47051b732395888df124",
"scripts/authority/inspection.gd": "ff523082ec6d918dbc559e04c3c11fd6d30d4f88c5a54ffa57eb3c758e244812",
"scripts/construction/construction_job.gd": "6c59af45346c16572f8c4cb111af86c586cec8081302bf67b6ef411a56ac5196",
"scripts/construction/construction_service.gd": "c737eb7aa927097da677ac23ad649ef871af1dea54bcb8103348b88c5303ea25",
"scripts/construction/excavation_service.gd": "337e9e5d07a9eeaf362253fec12cbe5fb2ea8e74e4887de82868748577d4af33",
"scripts/construction/placement_report.gd": "9f179c9a94a176a126027cf1d53942c0ac73b008ad119ab2480ba93f972b145c",
"scripts/core/command.gd": "9751ff4b40bebdae56b6b3879dd7cbffdc2a36b050a12bda89e1de47eb54145a",
"scripts/core/command_queue.gd": "b3625e340adec1d278bdc078d647959b582bafa86515da1017d469be99732e90",
"scripts/core/command_result.gd": "71b45fb50d69951797fe8d39ad5f707b79108eac30de09fa5e8d64ddb2436ae8",
"scripts/core/definition_registry.gd": "5636d31579d77bb57fd1eb4e6ab5d8cf8fc34c4b824c7cb7e0228caa9133f594",
"scripts/core/deterministic_rng.gd": "9c12c1b3b212e140b64137fa34d7e8b2494897cad341b3bbcf9f8da215053204",
"scripts/core/domain_event.gd": "cc9a903c366d9f889134561694b0c7fd52da260e97236a7b60830d7a68947bd4",
"scripts/core/domain_event_stream.gd": "47e27ecbd622bf5e05da8262d73e3b8c5f2204338c74a3259f3d184627819c26",
"scripts/core/performance_budget.gd": "79d18e8f0dcc3932801cd02ea8a8ba037af02ef57665387cba8dbe3b3e9af917",
"scripts/core/save_migration_registry.gd": "22ac2cce07a02d1a2a9ac2109e7a0ecf9a0fbe675df4dc9d5249aa9ab3583f98",
"scripts/core/save_service.gd": "7d0ea0fe95d9c38c5d2dffa9499cfa9215331602847a66ad36ac3c12b08ac99f",
"scripts/core/simulation_digest.gd": "a4da38b4e4573dbfa7c133fe9cf20a61f38dd21ca7faa18b2b43f87661aba676",
"scripts/core/simulation_kernel.gd": "341c0c878c4894adbac628d0db6362ff69fc3347bdd9e61e50936e15dc2d1edb",
"scripts/core/simulation_snapshot.gd": "fada16febc0942a659992f3946d41bb8195ac5fb67cf630d123afd482d9d6da5",
"scripts/core/stable_id_generator.gd": "78e0dd691ba18d1f159d9d7abba5894d2e10d36885aa6dc5be02a27f9edd5013",
"scripts/core/state_transaction.gd": "22e4dbd4efceb20ac9b71429a76494ca75bfdd4115212408d2207794c5d3ef04",
"scripts/data/facility_catalog.gd": "4646632848b52b60f7af1071ef6bc5cb17bb959798d73d2faf4c51e9af43d417",
"scripts/data/facility_definition.gd": "6f6d2f87d253b97c65d1533f70d9f3c68fbddd8eb6ff0135f6b0629873bbcc62",
"scripts/data/mvp_content_catalog.gd": "ca65ed9ee7affa7beec2fcded07ddda65684d034e14372189c51dc994904ce82",
"scripts/defense/defense_service.gd": "6a6b8e7c8166eb426d234770813ecbb0a9a33b2a335c6ea563562b34486764bf",
"scripts/economy/economy_service.gd": "ecbd42338e5f17ec75501373a4f13d8839c723fc674cc7f74241aa4d9b637abd",
"scripts/economy/ledger_backed_resource_state.gd": "199442c566185dc0abcc4eea5b4cf59c07330731bb5d5038b605dd801ae0209b",
"scripts/economy/ledger_entry.gd": "625d709b8d3239ef271dfbd42f189fd3a3fb99bd22d4f39438050c8e3addfe26",
"scripts/events/event_action.gd": "ebbb233caf961d7333271bc498738b65bc505d709de48b0469597018218d3fba",
"scripts/events/event_choice.gd": "6077cba5d59e500e4df391d58801aa8c10669b17ac36c06e830329ca8e977dd6",
"scripts/events/event_condition.gd": "31d493d68db9b49d8eed0d5adf7a6c4d90f12df0ac3353b1ceafa6259196efd5",
"scripts/events/event_definition.gd": "4af68f2e5ec185a750d59aaa24c7cb63fe612cd6a785e7fd39af11f0b5ce74a2",
"scripts/events/event_instance.gd": "e8ce02a03dcb111d808d3cb3068a752fc5bbd61ba0cb15026f1371615619b974",
"scripts/events/event_service.gd": "efa0a7992736aa9c99b33f25e66a3ba40f8ebe0aa5ab609cc6e5b25d968b5083",
"scripts/facility/facility_instance.gd": "e4783d99493d49a7a7d6d03aa726dc45803c0c3c87adec52eb8814b377fc474d",
"scripts/facility/facility_pricing.gd": "e895e29469dedfb7ba82a7bc1f1931f2711b9bf3f7e2c436133527aa9f7a60e4",
"scripts/facility/facility_service.gd": "f8d3b7a204120b7b113169a8c1dbfa4cb78077e6514d7955a71f4f2cd551d9a9",
"scripts/facility/service_instance.gd": "629a142f80cbc31b97b6d08483d94e029e448969bb6d39fdc8dd39931654dd35",
"scripts/facility/service_request.gd": "767a8c054188c8dde1e446f49d43d9ddc727a215bc9b31d5420650bd44c90024",
"scripts/guest/guest_definition.gd": "082aa3f33b9cb17daf10a2cf8a1dece7b79dd80c2ae21e1a424d1b2ceb52b918",
"scripts/guest/guest_runtime.gd": "5bb687b2da6f634c66680ffbefb4b4a57ed02fb3dff10f72ce7e7858177d1241",
"scripts/guest/guest_service.gd": "499b7c4facfdb1d98a4220f6e806683fcaabfc4e0f036d4b886ec17b2885d9a9",
"scripts/inventory/inventory_reservation.gd": "2d913d26e5af2ea12842264441d87ee5fce8fe84ef6664297ae2fa971a4ca10b",
"scripts/inventory/inventory_service.gd": "7ee83b335864385119ca757037c3cdb912957aa4478a6312a0898a734e41f31a",
"scripts/inventory/logistics_dispatcher.gd": "2313f5ba3154143d5f0b6e1eeb1fbdda37cc81a7a1589515f56dfb53a797f720",
"scripts/inventory/logistics_request.gd": "6dc5565083b8adb2c620fe805d1ba76be01ae09faf3070a9363485f4fc5e171b",
"scripts/mana/mana_network_service.gd": "96f195cf2a28b0966d12cd7c6fab86d13eae97c8342d07d70f52e598fbf49af9",
"scripts/operations/operations_coordinator.gd": "cc3b9d27beca796364b619463b5630a3a47e6ea86180f4cd60d68b3f032349bc",
"scripts/progression/progression_service.gd": "4f4e00fbeab4a4cec49b7912d8e75381b8354791e0a9efdb8414d984e88ca46f",
"scripts/relationship/placement_risk_preview_service.gd": "d8e974487b75fbad49ecbbe1da8e36aac23dc4e1a5cf10281a1c567c97dd59f6",
"scripts/relationship/relationship_service.gd": "76d49e4fdb50e9a185f7ba5065d257682a11aece1c76272208ba8555ffd534c2",
"scripts/relationship/relationship_state.gd": "14551398f31ecd899e43a3d07b165d4884e54e83983e433c6de57e3e6a18d083",
"scripts/staff/shift_instance.gd": "cec2bed5bfb138d4cc9c141bb7cdd9c19d70c034aad304398627ef1f4977ab48",
"scripts/staff/staff_commute_service.gd": "3a1b816a3a778fc362e950817275fb8464d8562b61527f141787e4b2d2a3eba0",
"scripts/staff/staff_runtime.gd": "80b4e277f1db415f2121e1079ed41e3eebd3f7363d79307a1fa9a0e46aa144eb",
"scripts/staff/staff_service.gd": "47f66f32141a8b104f0b898139f6760201f7f63a198d852e2769fd76331d1b69",
"scripts/staff/staff_task.gd": "5eeb8862a83e31e36d75e19720597fccf1aa4b25f30193d17ee95aaa94302b8a",
"scripts/staff/task_dispatcher.gd": "fdf2b6464e4b1089c58cbce972ff6217a0f7c69929b1be425536152d4b8290c7",
"scripts/supply/kitchen_production_service.gd": "f3bc6bdc1a0ba278e9411108172ceceb7eb06520b4e33f93f35684da1f103c62",
"scripts/supply/supply_catalog.gd": "93a3f674a953fb0627a38ad0342df31dc5fa77ba8a225780f2250e30ec22dd15",
"scripts/supply/supply_logistics_bridge.gd": "b9e394af788595d2744b71f1907c8e7c3d762d38ff49992b1ee74e63b9639e80",
"scripts/supply/supply_management_service.gd": "466c12b25c435afe3789c4079107c0cf66d79ec3484af847814829dbdb0944bf",
"scripts/transport/elevator_service.gd": "cea09dd9204551c26b31b30cd3aa847cc77e3b75fdac31662b9694a95fb3580c",
"scripts/ui/business_management_panel.gd": "404dbe00cbd73abe7ee9e7f4ede99a335d3675270735a63eb714ae4e74d0fc92",
"scripts/ui/guest_observation_panel.gd": "492d16457d53e113c05ae8d327ae513c782952afb03d97a85dbf3bcd720dd35f",
"scripts/ui/inn_opening_guide.gd": "c923bf932a7fcde4548887cd86162d34c9eb8079e433014ed49ad6ff8ec23b75",
"scripts/ui/operating_ledger_panel.gd": "efc282cbe8711c6e3d1a7a6eab0dd9ccf63b2a26af20205fa0a5b45a2c7eb6ec",
"scripts/ui/pixel_people.gd": "8a46ba96705576bda98d3ba6b08323ddc1a3bd1e9fb4321b9b959b84fd07c626",
"scripts/ui/pixel_tower_art.gd": "9d1082a9cc177a4f3232f8c340a24b485328d4b23f57ab01340bf0db9e331f7d",
"scripts/ui/pixel_tower_demo.gd": "d66a245818d77d879b3046a4daea372d8b36d33c7fcce8c7ad3c170206e847ae",
"scripts/ui/room_presentation.gd": "4d7c6f9acbd5f27845acc748b623a8f039e99951045c1e421a1932ecfd4921f3",
"scripts/ui/staff_management_panel.gd": "01443ef0b348a6aecfd453f2c25045753891ea12d89138cd40b37d5eaf8f3cf6",
"scripts/ui/supply_management_panel.gd": "18036066d69fe0d6ef7fb578e4db899c2ab958176cfabe6918b9160e70273d58",
"scripts/ui/visual_theme_profile.gd": "2a251a94d4a18c2ddd9e307cb810d1f327c12f2f15cd3bed91e65aa499258ceb",
"scripts/world/facility_infrastructure_projector.gd": "e329019aa54f315df6a8e3c899770ab8701578b59583e88a027b815780bc1400",
"scripts/world/legacy_stair_service.gd": "e6899ee68894a59af061056ceb8673a772cdcc80a63dab5b4d54309429c33c2c",
"scripts/world/path_service.gd": "c09f5220cff1664fdd47ffd55f6750dcb0393691cbb0d13ea6238d7d32ca99c0",
"scripts/world/route_subslot_path_adapter.gd": "d8b98918c038855e0a4c4cf039853e4781718ccb0ca3b7516ed354d9b898ebf5",
"scripts/world/spatial_subslot_service.gd": "6238843f3f53e8fa21e325a8152e9a77aca97aebe495a05fb19d37ee62d549ae",
"scripts/world/world_service.gd": "666d96378d053fbef0969ddaa37cab30a60f32e2253043e00f36c402ef63a2a8",
"tests/business/test_business_closure.gd": "7b13a0dc13d1276cce7515973af47ad9653620e04221c43679e059e674b1d4fb",
"tests/business/test_business_operations.gd": "5b1975cb3e921febe5c23ae26b3c8445d92ab68de2479d23f86f565a934f04f5",
"tests/export/test_exported_opening.gd": "d980545e0c3d1477eb746da7a131556493cdba6f4e267f4491fe3973aed76fbf",
"tests/fixtures/facilities/invalid_service_profile.tres": "8bd02f6ca505a9bd65360a1ce99f961252bc201c5381e0033519ef4952f8f2e6",
"tests/mvp/test_mvp_content_catalog.gd": "2444ca2803881eac4b5e32724337cebfb8c5d86fb1dfcdba79e3c2a86ff2dde9",
"tests/mvp/test_operations_coordinator.gd": "7d1ce485242e7fd9232875eaf4c01fcb6ea579f1148f32a72873b87f410bc989",
"tests/mvp/test_original_midnight_settlement.gd": "916d0b4184842b1c8cc23c1a95db12558a8ba665b251aa6a383a42995eceaa30",
"tests/mvp/test_progression_service.gd": "f97895fceacc42fbbe14f3e77972ef980abf8f63ca9a5c8c8d4003900305b0aa",
"tests/mvp/test_runtime_content_progression.gd": "ec94db8462b30daf9fc4a1dd8bd3d7568937e2908f5d95afa073b8183902b6fc",
"tests/mvp/test_runtime_operations_acceptance.gd": "2ae592cf5ac555cde8546bdfccd9e96dfd0f2f8b93bd4ee09f9c12974e75552a",
"tests/mvp/test_runtime_operations_integration.gd": "4fc5d868924af7cf46db3fa6e0d8fc6b15ebd6ab96035758b4df790ad08d005c",
"tests/performance/fixtures/linear_path_reference.gd": "406b664557e99a8fc9903b9431f708e8e6372c3c56bf1665dd1908485c9bd528",
"tests/performance/fixtures/simulation_digest_v1_reference.gd": "64b5c099f8b4ff6e855c80513f150cfdb0e9c6d0f816fd02ec2660d569550928",
"tests/performance/fixtures/uncached_preview_reference.gd": "5ba415527f1ecc5cb6d6248ba75014ae91df86d01e7f9c35b8834f378c0c69d1",
"tests/performance/perf_mvp_001_harness.gd": "63519cf3723d084fa9c30425e49eb210a54a23fd1987df910621f8d12df9e413",
"tests/performance/test_digest_performance.gd": "20d1849f0f1b973ac3942d923ea20206cff16beacc0da36ba4583fb5670560b7",
"tests/performance/test_perf_mvp_001.gd": "1a4bc20ea4810924e8e64bc5fec1b44fc327f1676200e978a77577d628675e5b",
"tests/performance/test_system_optimization.gd": "374ff4b3ba78b7a724a3620d683db3835fd2a545f1de11606fd4969a3c6ede95",
"tests/run_tests.gd": "4c8ef388e2349ff975a2af7260da0aa02231a6036ea71b4000f2bb0e6f4083d5",
"tests/s0/test_command_transaction.gd": "1f1559646a38940db027ee83b2622f317e9b9c6c6f7d4b86f41f866eabb7e75d",
"tests/s0/test_definition_registry.gd": "21734d25641eaf906e0261a0ded634874aaf8ef987c4aea704c147d64487e33e",
"tests/s0/test_determinism.gd": "a397d2b33a2c8abfae76350d8ee65b967bbc1625186a865dffd776b421cc7520",
"tests/s0/test_domain_events.gd": "e16700219d5f3482b967de3216d4ace9853e47a69c91dcfd57d003b1d34c1da2",
"tests/s0/test_kernel_and_save.gd": "6d13f83672f8273ec6ddc47c88de1ce3916f4126af022be8bc562f5dd1d302a7",
"tests/s0/test_runtime_integration.gd": "9c15f4de6129fd4a225d6629c1ada67141685d3ff90456cbbe7b73c45a269b7b",
"tests/s0/test_stable_id_generator.gd": "2fac546b4788650b69832b2336d9d46f7b8b343b660d687256d98a64ef4b823c",
"tests/s1/test_construction_service.gd": "ce63074b84cb75d710eb3650701a9cb2acf920ff607e41be645904fc2395e2c3",
"tests/s1/test_excavation_service.gd": "64dacd14dbe0bc94368879daa130e4861ff43cc63fac6bb02e4e64091ee9a750",
"tests/s1/test_facility_infrastructure_projector.gd": "cb74f878cd709e80f53c74fa646daa138577f9d8ca18668e5178126c6e899b39",
"tests/s1/test_path_congestion.gd": "709bb680f04862fd774644b0b425150977f54346ca76f6223663c414e00f33bd",
"tests/s1/test_path_service.gd": "0f48bb44c27e32f08477b9aed61a0db5c8808219490928f734c3570a07efb251",
"tests/s1/test_route_subslot_path_adapter.gd": "573fcfb1e2f8e8781703e29d37600730dc54c77fda11a4630401a8b9e9259445",
"tests/s1/test_runtime_infrastructure_integration.gd": "b4d34870ff6573973cfe7069e02105630f24b74ae13862dc91cf454ad5ddbe7f",
"tests/s1/test_runtime_world_construction.gd": "65924a9b69cd27b5923c5464bd44ab839b26fe39a51b3580e691805d5a9e0e5b",
"tests/s1/test_spatial_subslot_service.gd": "06f4f69438a280ef942bbefdb9caaef1ba59e7dfd0eab71469ca29d090a8ad58",
"tests/s1/test_world_service.gd": "a5e165886f161b8bc71722ac7facdd17704bc6274c88dfe7fd2229f7f2b3f2b7",
"tests/s2/test_economy_service.gd": "cfe6196c0da9e39d95ae0e39f0c5404e321f4fa8be3602b58d4bf6cd3fef3969",
"tests/s2/test_facility_pricing.gd": "e658a7421aaef08c1c6f9a1bce42cb819ae39ee8ec0da72547b42400688c1a98",
"tests/s2/test_facility_service.gd": "e5a0ceef45d2fcae110f777ddb3c678374b7c9110cd40f743f88c578f0ed2d34",
"tests/s2/test_inventory_logistics.gd": "ef8b87e721f57210da02b8cd0822f58e1a4c1cdaa19fe56301a03a87891e73d6",
"tests/s2/test_kitchen_production.gd": "e2aeb1fdbc8d1dfe9400646693a0e97919b3b86cb74a4f000ebeba01bfbee626",
"tests/s2/test_ledger_backed_resources.gd": "26c2c9b883ee1448345d5555ac3e97293c3bf273b42668c11a6bdc23e1184dd3",
"tests/s2/test_mana_network_service.gd": "b0a21ea663667979c109cf6fd2efff717c284398071948c897b9e99090ce12fc",
"tests/s2/test_original_facility_parameters.gd": "3d5cc5f13f986f8cea9500a7f8d48d8f5803b8d0bee5eb0e7c44b3218a2e3d7b",
"tests/s2/test_runtime_operations_cycle.gd": "43bb6155dbcd8e21c01a57a62d13e2ab59edd1f3b23ebd14485f1273b15a065e",
"tests/s3/test_guest_service.gd": "0d10b68512685d2ed7d5c0c858952009333e0e47f348ace4b4ccdd0b21d23647",
"tests/s3/test_runtime_actor_cycle.gd": "cbad1505c735f3dab4596f7ad823d6501faf0cea4b9b91cc2b6ff0422296a2de",
"tests/s3/test_runtime_actor_hardening.gd": "1cdb1706646e70d99ac77530416ca5681582fc6e76ced455023bf5b674efffa5",
"tests/s3/test_runtime_path_traffic.gd": "6336a2291754bc2a2f3d83a6de96959bbcdc68f749fa362c0096fb4a26b2f41c",
"tests/s3/test_runtime_staff_assignment.gd": "f6004ab1601e2910268dd5d02923c32eb697fb587ad74da1f06ca4de6c21713c",
"tests/s3/test_staff_payroll_operations.gd": "05c817b7e891ac1649072ad33102561e26280b9bdd34f6f3831c7da055044f8c",
"tests/s3/test_staff_service.gd": "1f41ec1dc91f3bd3739ad2672b2921070fdde3a2878bc55ec6bd62101f0ac926",
"tests/s4/test_placement_risk_preview_service.gd": "165eddf9a5c51d8d9eeb85ea89e21b1ab6067b7ee057ee0fe5b189e97a71c1ad",
"tests/s4/test_relationship_event_service.gd": "b65afa74a67985059cc9e8e19684405324cfcdde277a21d7eba6062c968b24c5",
"tests/s4/test_runtime_relationship_events.gd": "52c9df100bd85fc49b62b80d214f84750c907330255a909a83a8dbd8195aac39",
"tests/s5/test_authority_service.gd": "983ac275dc4f40f7c8058831b7239f1f4b4e2b3f12da0bbb6ea5e8ad69afe2c5",
"tests/s5/test_defense_service.gd": "c6ab9eff8bd54a26a4b0f7ba1e95817ce03f8a8d83c15c3ca3fff450effd4db1",
"tests/s5/test_runtime_authority_cycle.gd": "33952b6253c77410c7997ddbf37e039f79bcc0ae283da76c3580ec166f928273",
"tests/s5/test_runtime_defense_cycle.gd": "ad69856ca5d0ec0fc15e4dea65d04cd1069880613d7fa901b0a787aafbc5ddbf",
"tests/s6/test_performance_budget.gd": "1ae5490637d73b519bf9ed0e00bda0e034d5ea0e589493bcf8886e4d1ff63689",
"tests/s6/test_runtime_save_lifecycle.gd": "de94d588d6ce204aa8d0221c2989b8dd900cf4e36ca51f83b464518a382a887f",
"tests/s6/test_save_operations.gd": "199df0b7fcc3d212cd32c79e0108dd9e5b83f9895f07553b325571c7674ed96c",
"tests/staff/test_rescue_elevator.gd": "bbbab6c56b740b5b9d7ccf092152a037d33c597c9af5dcf2125b54ef3282abe3",
"tests/staff/test_shift_rush.gd": "af3d47d848c1220741992612e57736df4af05969d424b79829d9977c774e8149",
"tests/staff/test_staff_commute.gd": "0837c92a49f8f83c03ca820eaeb23f7b1dfbc1072f8eeffcb557bb6b57b20c49",
"tests/staff/test_staff_rescue.gd": "8d8c02444c35b2c41c6db42ac0195dd614835541235cd92641ca9b220f59c44c",
"tests/staff/test_staff_rest.gd": "fe9b9d2a8a9051850980a393b8c06b8be41de8a82d5efc998c69df3a06cf54ec",
"tests/supply/test_normal_supply_chain.gd": "b481f2ae38c98eac78bd310902a85ba47e5d1d442078944a968ab3ea15f6d142",
"tests/supply/test_supply_logistics_bridge.gd": "dc745130fe155e27868a281e3f6a1b68afafaa5ba0b36723ef1b6bc49f388611",
"tests/supply/test_supply_management_service.gd": "de70213e9a07cb461614114e55d3b5371249a36250222a6eb48654103faea3ce",
"tests/supply/test_supply_save_migration.gd": "f781d2657fa7f004fa6efa9bfe3e829170c27ed269391e844f6a527935586831",
"tests/transport/test_elevator_service.gd": "e70de48a8e6f7928690d0495110451c26d9dec180c2dd7033c793155f099c2f6",
"tests/transport/test_runtime_stairs.gd": "f2f2d87dcf20d08fdfa721985fe60eecbaabbd0b2d1f5a90971f859f4354c3b9",
"tests/transport/test_runtime_transport.gd": "8b1d0fba1d27fbae2c703e030144bbff0ca008dca5292b7ea07f80e9a73bf96a",
"tests/transport/test_runtime_transport_comparison.gd": "ba577397fa8db5a6cf92cfd398dd7a5ece49e6b59856f14772b67b51ddc0bde9",
"tests/transport/test_transport_boundaries.gd": "1a5a647c45ffab674a8f58b8bc72692c5a30090c9b99a1e6f67194bbe3586b34",
"tests/transport/test_transport_comparison.gd": "7e80e9ef80500278c56f0d1ada5c911f43e3c0a9bc370045fdbebd33c2f02fd5",
"tests/transport/test_transport_density_migration.gd": "b30bf5c58b567ca711be9d9f130b37e114c22c7c69d5b7b581ad8dda2a690b50",
"tests/transport/test_transport_save.gd": "c09d4c8abcd2af39eea173c1f8a8789ca6a3f262953f65372469af29eef6a3d5",
"tests/ui/capture_main_dashboard.gd": "dcaeb97ef2f8a5910d2e8b5eb8aa7f6bf5a5a4d9128e0afab3e14eb16100117c",
"tests/ui/capture_pixel_tower.gd": "3a2eabc841a3208a14b06d2a619c89c0294c72538e0f009fec1b18d1448b998d",
"tests/ui/test_business_management.gd": "182d6869b37a2643cdc4e4cb5c7eca95ed9fb36853a2069d630379ba5643d7f7",
"tests/ui/test_elevator_management.gd": "1d7ed05d39f34d91f2ef485f3930de26e7136224f07ff9fec1b768726a365d68",
"tests/ui/test_first_operating_day.gd": "7a8d8e101e8e93cfe50c680b8c49f4295b2455321facdf9b959db9de244536ce",
"tests/ui/test_guest_observation.gd": "d163141420a04856730d3819efca9dce0aad7c2126866a82664120bc68ca272f",
"tests/ui/test_main_dashboard.gd": "34be7dbfd3878c8090aaaf0e069dd0f07bf9ead2eb7928e9cb37c085bfa4c0ad",
"tests/ui/test_original_facility_controls.gd": "7aed4ad0564e3690f64bc3ab3149e6b36df6ccd8bea0530d1ecd8dd1f87fb576",
"tests/ui/test_pixel_tower.gd": "93bdbb195f2ceec07dbe052e0d0a3017d84b56f1e8ec46b87be8d98105ec0f88",
"tests/ui/test_room_presentation.gd": "f7cc6e96c490b0f9b258e8ca087beaae4f540fe4c02c6a04a6460c8503a22be5",
"tests/ui/test_staff_management.gd": "f22b87155ede7d2f33f15331d79ec2af699e163f04444d270346f911f355ac53",
"tests/ui/test_staff_rescue.gd": "2ab4a58ef7cce5d1b2e03250dbe92ed6957f38c71e538cdc4f425fa198193bc8",
"tests/ui/test_staff_rest.gd": "accfc9c0ee2eed5192085d01d19bbdce65f6171551b22e5a0b564f68c7080eaa",
"tests/ui/test_stair_transport_details.gd": "d8b1539cf81bcf1105ad66fea5236e779e03fdf1eb59168e910412ec1da797b2",
"tests/ui/test_supply_management.gd": "c24f98fc9a9329c7f2983b3048009fba2169c45ea413137ca2fbebee802b9c35",
"tests/world/test_elevator_topology.gd": "4710a6bba103d82a4d2febea1a2c30d029c0f1ccd2a3d9a6c1712b4fb372033b",
"tests/world/test_legacy_stairs.gd": "258d759537aec8b7b90cab107985c9c6a16f10e85ae7ae92a9c54cc94417d48e",
"tests/world/test_path_transit_density.gd": "8de5fc8bdf8631ff41fcd4862cea40daa3316040f381f182dc6fe09dba9f3cb9",
"tests/world/test_path_vertical_policy.gd": "140cdf552309f89cd93bf1a4d38827a671a66461203f0858f1c2651a8e6e8473",
"tests/world/test_stair_infrastructure.gd": "f6d1a29b43875b7b1fc945611c2ed15fbdcb8bb7220addf283b30fedf2ccba28"
}
@@ -0,0 +1,11 @@
{
"file_id": "1w3hpz3kacxo1jRDwDhDT0TzNRJtAo-LW",
"file_name": "基本仕様書.txt",
"url": "https://drive.google.com/file/d/1w3hpz3kacxo1jRDwDhDT0TzNRJtAo-LW/view",
"drive_modified_utc": "2026-09-22T02:14:53.827Z",
"drive_size_bytes": 23494,
"captured_date_jst": "2026-09-22",
"snapshot_sha256": "75e4bdbdeb379c9269553f0c776bdb9cc96e01f2d6aa5ca650d132c63a8aeb1a",
"snapshot_note": "Drive connector readable text snapshot; not claimed to be byte-identical raw download",
"implementation_commit": null
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,8 @@
{
"file_id": "1w3hpz3kacxo1jRDwDhDT0TzNRJtAo-LW",
"verified_date_jst": "2026-09-27",
"modified_time": "2026-09-22T02:14:53.827Z",
"live_sha256": "75e4bdbdeb379c9269553f0c776bdb9cc96e01f2d6aa5ca650d132c63a8aeb1a",
"baseline_sha256": "75e4bdbdeb379c9269553f0c776bdb9cc96e01f2d6aa5ca650d132c63a8aeb1a",
"byte_identical": true
}
File diff suppressed because it is too large Load Diff