Connect physical elevators and staff commutes to construction, saves, and cutaway UI
This commit is contained in:
@@ -260,3 +260,16 @@
|
||||
- 表示: 営業パネルの当日費用は当該施設をsourceとする運営費の記帳で、給与配賦を含む確定利益ではない。給与配賦・施設別利益は06:00の帳簿で確認する。需要は客の予算とUtilityへ実反映するが、予測人数を算出していない段階で架空の人数予測を表示しない。
|
||||
- 性能: Snapshotの履歴・項目・検証頻度を減らさず、Digest呼出しの中だけで同じ辞書キー構成の符号化と順序を再利用する。String/StringNameを分け、上限を設ける。値や可変コンテナの出力をキャッシュしない。旧v1実装をテスト参照として残し、全対応型・衝突・変更・深さ・拒否条件のバイト一致を検証する。測定の約2倍はDigest単体であり、実ゲームのfps改善率ではない。
|
||||
- 検証記録: [P1営業設定](qa/P1_BUSINESS_MANAGEMENT.md)。P1全体・初見30分・昇降機・Windows性能の完成判定とは分ける。
|
||||
|
||||
## D-035 昇降機を建設・乗客・通勤へ接続する
|
||||
|
||||
- 状態: 採用(2026-09-09。P2の基本運行。改善前後比較と全階間経路規則は継続)
|
||||
- 運行: 同じ幅・x座標・レイヤーで縦に連結した完成モジュールを1本の昇降路とし、1台のかごを共有する。客用は4人・1階10分、業務用は8人・1階5分。扉の処理は各端で固定2分と乗降人数分。古い要求を優先し、同じ出発階・目的階の客をまとめる基本方式とする。途中階の相乗りを行うSCAN方式は未実装。
|
||||
- 経路: Path v4に所有者付きの縦徒歩抑制領域を保存する。昇降路の全占有マスでは上下の徒歩Edgeを作らず、同じ階の横アクセスと運行Connectorを使う。既存の昇降路以外の上下通路は階段相当として維持する。全世界の階間徒歩抑制と明示的な階段施設への移行はMOVE-01の残課題とする。客用と業務用の権限を分け、BACKはstaff権限を必須にする。
|
||||
- 位置: 乗車中はPathとActorの論理位置を乗車元の停留所に保持し、実際の移動時間と降車処理が終わってから到着階へ更新する。画面では乗車中の人物を地上から隠してかごに描く。この段階では乗車中の人数が乗車元の混雑密度に残る。車内を別空間として扱う密度改善は残課題。
|
||||
- 工事と停止: 人が乗車・待機している、またはかごが運行中の昇降路は延伸・撤去を拒否する。空の昇降路の延伸開始後は新規乗車を完了まで保留する。運行停止や電力喪失は待機要求を解除し、乗客を最寄りの有効停留所へ避難させる。有効停留所がなければかご内で保持して復旧を待つ。プレイヤーの運行許可と魔力供給は別に保存し、通電だけで停止設定を解除しない。
|
||||
- 通勤: 通常UIの継続配属は到着までCOMMUTINGとする。同じ階の勤務施設内または横に接する経路に到着してから稼働人員と勤務実績へ反映する。階の上下隣接だけでは到着・荷物の受渡しとしない。混雑による歩行距離の端数は持ち越す。運搬員は勤務ごとに倉庫へ出勤後、配送先から次便を受けられるが、不在の倉庫には人員を計上しない。勤務終了時は位置を保持し、帰宅の瞬間移動は行わない。
|
||||
- 保存: Runtime v8にElevatorServiceの状態、要求、かご、扉、残り時間、運行設定を保存する。Path、Actor、建設モジュールの所有関係を検証し、Operationsと建設の巻き戻しにも含める。旧v7以前の昇降機のない保存は移行し、厨房の導入境界は引き続きv7。旧配属の論理人員は物理位置へ合わせて移行し、新しい保存の幽霊人員は拒否する。継続計画のない旧単日Shiftには従来の論理出勤を保持する。
|
||||
- 素材: 既存のKenney人物を車内でも使い、レール・扉・かごは既存のコード描画によるドット表現へ追加する。外部画像の新規導入はない。
|
||||
|
||||
- 撤去の保存修正: 施設撤去の成功時は対応する完成済み工事を現役の工事一覧と進捗時刻表から取り除く。これまで完成工事だけが残り「完成施設がない」と保存検証で拒否されていた。IDの最大値、台帳、DomainEventの履歴は維持し、工事IDを再利用しない。延伸後の部分撤去・全撤去と、失敗時の巻き戻しを検証する。
|
||||
|
||||
@@ -32,7 +32,7 @@ P0の保存物はGit管理対象の制作ファイル。`.godot/`、`build/`、`
|
||||
| ID | 実装済みの根拠 | 未接続・仕様差・検証残と次の確認 |
|
||||
|---|---|---|
|
||||
| PLAY-01 | **最小ループ実装済み・単日確認**。初期Gold 5,000/資材50、通常UIの建築経路で受付1・一般客室2・通路7、アカネ雇用・配属、自然来客の宿泊320G、翌06:00決算まで確認。`test_first_operating_day.gd` | 受入は見学Fixture・無料在庫・客挿入なし。**供給込み3営業日も自動確認/バランス調整残**。受付売上6,020G等の数値を正本と照合し、受付の直接収入と価格・営業Policyを調整する |
|
||||
| PLAY-02 | **通常UI接続済み・個別API103項目/単日確認**。雇用済み一覧、配属・再配属・未配属、DAY/NIGHT継続計画、変更不可・経路・定員等の理由、予約Commandと保存復元。StaffService v4、D-032 | 実通勤と到着後の稼働はMOVE-07へ分離。現在は経路存在を検証して論理配属し、人物位置は変えない。5職員・複数施設・3営業日の継続配属は供給受入で確認。実通勤と人手不足への人手試遊は残る |
|
||||
| PLAY-02 | **通常UI接続済み・個別API103項目/単日確認**。雇用済み一覧、配属・再配属・未配属、DAY/NIGHT継続計画、変更不可・経路・定員等の理由、予約Commandと保存復元。StaffService v4、D-032 | 実通勤と到着後の稼働はMOVE-07へ接続済み。5職員・複数施設・3営業日の継続配属は供給受入で確認。実通勤と人手不足への人手試遊は残る |
|
||||
| PLAY-03 | **通常UI接続済み**。完成倉庫への有料購入、容量・期限・予約、実porter TaskとPathによる倉庫→厨房→食堂。物流81項目、管理処理84項目、商品UI37項目の回帰 | 仕入れは倉庫への即納。外部業者の納期、継続自動購入、複数品目、正本の食器・消耗品は後続。経路断・満杯・腐敗・担当不能での保持/再試行/返送を検証 |
|
||||
| PLAY-04 | **自律生産接続済み・140項目確認**。明示設定した厨房で原料4→料理4、15稼働分、目標在庫、入力予約・出力容量・期限・中断復帰を扱う。見学用の無料在庫に依存しない | **仕様差をD-033で明記**。今回の原料/基本料理を維持し、料理ポイント+食器は残す。食堂価格・所要時間はD-034で新設25G/45分に統一 |
|
||||
| PLAY-05 | **日次帳簿UI接続済み・単日確認**。06:00営業日、入出金と建築、確定売上・運営費・給与・利益・前日差・未払・施設別損益を表示。翌朝給与120G、未払0、照合一致 | **価格・営業UI接続済み**。5段階の見積・客の選択と満足・新規受付停止・忍耐を減らさない退列・途中保存。新設受付0G/20分、客室120G、食堂25G/45分へ修正。宿泊前払い・維持費・初見の改善試遊は残る。D-034と営業設定QA参照 |
|
||||
@@ -48,13 +48,13 @@ P0の保存物はGit管理対象の制作ファイル。`.godot/`、`build/`、`
|
||||
|
||||
| ID | 実装済みの根拠 | 未接続・仕様差・検証残と次の確認 |
|
||||
|---|---|---|
|
||||
| MOVE-01 | `path_service.gd` の隣接経路、Connector、アクセス権、`facility_infrastructure_projector.gd` の通路・職員ドア投影 | **仕様との相違/未統合**。同一階の徒歩と設備による垂直移動を分け、通常隣接Edgeで階間を迂回する経路を抑制。旧通路・Saveからの移行を決める |
|
||||
| MOVE-02 | PathにElevator状態、有限Queue、要求重複防止、停止時迂回、停滞検知の部品 | **未統合**。昇降路、停止階、車両、定員、待機要求を1方式の運行モデルへつなぐ。部品のQueue試験だけで昇降機完成としない |
|
||||
| MOVE-03 | 昇降機Definitionがパレットにある。現在のRuntimeは安全なTopology未統合として建設を拒否 | **画面へ未接続/未検証**。建設・延伸・停止階変更・撤去・客用/業務用権限を運行へ統合する |
|
||||
| MOVE-04 | `world_preview.gd` の徒歩補間と人物の小型描画 | **未実装**。待つ→乗る→昇降→降りるの運行状態を表示し、車内と徒歩の重複を防ぐ。見学の上階通路移動は乗降試験ではない |
|
||||
| MOVE-05 | Path単体の停止・Queue・停滞検知とSnapshot試験 | **未検証**。統合した車両で満員、撤去、経路変更、車内Save復元を試験し、永久行列・二重乗車・閉じ込めを解消 |
|
||||
| MOVE-01 | **部分統合**。Path v4の所有者付き縦徒歩抑制を昇降路の全マスへ投影。旧Path3保存は移行 | 昇降路以外の上下通路は階段相当を維持。全階間の徒歩禁止と明示的階段への移行が残る。D-035 |
|
||||
| MOVE-02 | **基本運行接続済み**。同じ昇降路を1台で運行、客用4人/業務用8人、扉・実移動時間・FIFO同目的地のまとめ乗り | 途中階の相乗り、複数かご運行は未実装。車内人数は論理上乗車元の密度に残る |
|
||||
| MOVE-03 | **建設・UI接続済み**。連結モジュール、停止階、空車時延伸・撤去、BACK権限、魔力供給、停止/再開 | 通常初期予算から4停止階の建設を受入。工事中の新規乗車は完了まで保留 |
|
||||
| MOVE-04 | **運行描画接続済み**。実かご、扉、Kenney乗客、待機表示。乗車中は徒歩側の重複表示を除外 | 施設ごとの専用アニメーション、混雑時の人物配置は改善を継続 |
|
||||
| MOVE-05 | **基本異常系・保存検証済み**。満員、停止、延伸拒否、安全な降車、停留所閉塞、所有不整合、途中Saveの厳密再生 | 長期の大量需要、対照試遊、明示階段移行時の閉じ込め対策は継続 |
|
||||
| MOVE-06 | 既存の混雑密度/容量表示、[MVP受入](MVP_ACCEPTANCE_SCENARIOS.md)の比較条件 | **未検証**。同一Seed・需要・人数・施設数で改善前後を比較し、画面と移動時間P95・離脱で記録する |
|
||||
| MOVE-07 | **計画と経路検証のみ接続済み**。通常UIの配属は継続計画を保存し、経路が存在するかを検証。人物のcurrent_cellは変更しない | **未統合**。勤務開始→実通勤→職場到着→人員稼働をつなぎ、移動中や不到達の人物を到着済み人員として扱わない。再配属・夜勤・Save復元を含める |
|
||||
| MOVE-07 | **実通勤接続済み**。同じ階の職場へ到着してから稼働。混雑端数、再配属、夜勤、運搬員出勤、Saveと旧論理配属の移行 | 帰宅経路と出退勤演出、移動設備改善による遅刻削減の対照試遊は未実施 |
|
||||
|
||||
## P3:営みと初見の操作
|
||||
|
||||
@@ -110,3 +110,5 @@ P0の保存物はGit管理対象の制作ファイル。`.godot/`、`build/`、`
|
||||
営業設定と価格調整、旧v1とバイト一致するDigest軽量化を追加した。最新結果は [営業設定QA](qa/P1_BUSINESS_MANAGEMENT.md)。過去の受付収入を含む数字は履歴であり、現行の収益バランスを示さない。
|
||||
|
||||
営業設定追加後の通常供給3営業日も49項目合格。受付売上0G、食堂3,000G・宿泊1,200G、給与未払0、残金2,895G。初日の契約金を除く2・3日目は各+715G。実装 `b3b82ef`。
|
||||
|
||||
P2の基本昇降機・実通勤の証跡は [P2_TRANSPORT.md](qa/P2_TRANSPORT.md)。MOVE-01の全階間移行とMOVE-06の同需要比較を完了するまでP2全体を合格とはしない。
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|---|---|---|
|
||||
| 外観・操作 | ドット断面、家具、Kenney人物の簡易歩行、状態表示、コンパクトUI、ズーム・パン | 専用動作、施設ごとの視認性、混雑・稼働の見せ方、実描画性能 |
|
||||
| シミュレーション | 時間、建設、在庫・物流、経済、客AI、従業員、イベント、監査、保存の基盤 | 供給と営業Policyは通常操作へ接続。宿泊前払い・維持費・改善対照試遊を継続 |
|
||||
| 縦移動 | Path側にConnector・Queue等の部品が存在 | 階間の通常隣接経路抑制、建設との接続、昇降・乗降、保存復元の統合 |
|
||||
| 縦移動 | 建設から共有かご、待機・乗降、実移動、停止、保存へ接続。昇降路の上下徒歩を抑制 | 全階間の規則、途中階相乗り、車内混雑密度の分離、同需要での改善比較 |
|
||||
| 見学版 | 実施設7件と通路、従業員4人、自然来客が動く | 見学は食材32個を用意した保存なしの再現場面。通常ゲームの完成とは区別 |
|
||||
| 運営UI | 建設・掘削・雇用候補・継続配属/勤務変更・施設情報・開業の手引き・日次帳簿・イベント選択・手動保存。通常初期予算で最小宿の単日成立と保存復元を確認 | 実通勤・到着後の稼働、保存枠、宿泊精算、初見での継続運営 |
|
||||
| 長期検証 | 24時間の統合検証、14日の運営境界比較等は実装記録あり | 全AIを含む20,160分の実Tick、各A/B比較、実描画を伴う負荷確認 |
|
||||
@@ -152,3 +152,5 @@ MVP後、試遊で残った課題と既存の製品仕様を照合して後半
|
||||
最初のレビューは「通常操作だけで初売上と翌朝の決算を迎える宿」。次のレビューは「3階の宿を客が昇降機で往復し、混雑を改善できる場面」とする。機能・見た目・操作を一緒に確かめ、以後の日程と素材制作量を更新する。
|
||||
|
||||
2026-09-09 営業設定追加後の通常3営業日は49項目合格。受付無料、食堂3,000G・宿泊1,200G、未払0、残金2,895Gで継続。価格操作・保存は接続済みとし、次はP2の実通勤と基本昇降機、P1の宿泊精算・改善比較・初見試遊を進める。
|
||||
|
||||
2026-09-09 P2の基本昇降機と実通勤を接続。通常初期予算で4停止階の建設と自然客の乗降を検証する。MOVE-01は昇降路内の抑制まで、MOVE-06の改善対照試験は未実施。詳細は [昇降機QA](qa/P2_TRANSPORT.md) とD-035を参照。
|
||||
|
||||
@@ -214,3 +214,11 @@
|
||||
- 合格範囲、通常運営の再検証、残る精算・性能・試遊課題は [営業設定QA](qa/P1_BUSINESS_MANAGEMENT.md)。この追加をP1全体や昇降機の完成とはしない。
|
||||
|
||||
新料金の供給込み3営業日は49項目合格。受付収入0G、食堂3,000G・宿泊1,200G、給与未払0・照合差0、残金2,895G。営業・休業・配送中の保存と再開、既存回帰も成功終了。実装コミット `b3b82ef`。
|
||||
|
||||
## P2 基本昇降機と実通勤(2026-09-09)
|
||||
|
||||
- 客用/業務用モジュールから共有かごと停止階を構築。待機、定員、乗降、階移動、停止/再開、魔力不足、保存再開をRuntimeへ接続した。
|
||||
- 断面に実際のかごとKenney人物を表示する。完成した昇降機を選ぶと現在階・目的階・人数・待機・魔力と運行操作が出る。
|
||||
- 継続配属は歩いて職場へ到着してから稼働する。運搬も同じ階のアクセス点で受渡しし、上下階越しの到着や受取を防ぐ。
|
||||
- Path v4/Runtime v8。旧保存移行、乗車途中の復元、変更拒否の原子性を検証する。
|
||||
- 残課題は全階間の徒歩規則、途中階相乗り、車内を分離した混雑密度、同じ需要での改善比較。P2全体の完成とは扱わない。詳細と実測は [昇降機QA](qa/P2_TRANSPORT.md)。
|
||||
|
||||
@@ -144,3 +144,9 @@ Windows書き出しコマンドの存在はWindows実機合格を意味しませ
|
||||
`make preview-business` で、通常予算から建てた供給可能な宿を開く。Spaceで再開し、左「営業」から食堂の料金を変える。値上げ前に受付済みの客は元の見積額を払い、新しく検討する客には新料金が反映される。休業すると新規受付が止まり、待機客は別の施設を探す。すでに利用中の客はサービスを完了する。給与は休業中も発生する。
|
||||
|
||||
商品で仕入れ・厨房・配送、帳簿で翌06:00の給与と施設別利益を確認する。この試遊は保存なし。新設の標準料金は食堂25G・客室120G・受付無料。旧保存の既存施設は保存された基準料金を引き継ぐ。検証結果は [営業設定QA](qa/P1_BUSINESS_MANAGEMENT.md)。
|
||||
|
||||
## 昇降機と通勤の試遊
|
||||
|
||||
`make preview-transport` で、通常初期資源から建設した4停止階の宿を開く。検証と保存再開の確認後に一時停止して表示する。Spaceで再開し、客が扉の前で待ち、かごで上階へ移る様子を見る。完成した昇降機をクリックすると、現在階・人数・待機列と停止/再開の操作が出る。保存先は試験専用、通常の自動保存は無効。
|
||||
|
||||
新規ゲームでは、客用昇降機を同じx座標で上へ積み重ねると停止階を延ばせる。運行・待機中の延伸と撤去は拒否するため、空になってから着工する。工事中の新規乗車は完成まで待機する。通常の配属後は、従業員が同じ階の職場まで歩いてから施設が稼働する。
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
# P2 基本昇降機と実通勤の検証
|
||||
|
||||
日付: 2026-09-09。ローカル正本、Godot 4.7.2。D-035に従う基本運行の検証であり、P2全体の完了ではない。
|
||||
|
||||
## 通常初期予算の試遊
|
||||
|
||||
`make preview-transport` は、初期5,000G・資材50から客用昇降機2モジュール、受付1、客室2を通常建設し、アカネを有料雇用・配属する。昇降機は停止階0~3を持つ1台のかごになる。建設4,200G、雇用180Gで残金620G・資材2。客を手動挿入せず、通常の来客が受付後に昇降機へ並び、乗車し、上階へ到着する。
|
||||
|
||||
乗車中の専用ディスクセーブ/ロード、45分進行と復元後の同一区間の全Snapshot一致、占有中の撤去拒否、停止・最寄り階への降車、停止状態の保存を確認。描画でも実際の乗客IDが車内へ移り、床に重複しない。最終試遊起動は **35項目合格**、`TRANSPORT_PREVIEW_READY` を確認した。最初の乗車場面へ戻して一時停止しており、Spaceで再開できる。通常の自動保存は無効、手動検証は試験専用の保存先を使う。
|
||||
|
||||
- ログ: `artifacts/transport/final-preview.log`
|
||||
- 画像: `artifacts/transport/elevator-cabin.png`
|
||||
- 起動: `make preview-transport`
|
||||
- 静止画だけの検証: `make capture-transport`
|
||||
|
||||
## 合格した個別検証
|
||||
|
||||
| 対象 | 合格数 | 主な確認 |
|
||||
|---|---:|---|
|
||||
| 昇降機の経路投影 | 93 | モジュールの経路、縦徒歩の抑制、BACK権限、所有者と保存 |
|
||||
| ElevatorService | 103 | 共有かご、定員、乗降時間、運行時間、先着順、停電、全停留所閉塞、復旧、破損拒否 |
|
||||
| StaffCommuteService | 85 | 到着前の非稼働、早着、遅刻、混雑、再配属、夜勤、運搬員、車内の誤計上防止 |
|
||||
| Runtime保存 | 29 | v7→v8移行、Path3→4、幽霊人員、架空乗客、座席・経路・工事の不整合、停止設定 |
|
||||
| 工事・勤務境界 | 57 | 空車の延伸・撤去、運行中拒否、後段失敗の巻き戻し、同一配属で順番保持、勤務終了時の待機取消と乗車済みの降車 |
|
||||
| 昇降機UI | 20 | 通常の選択、停止/再開、予約Commandと保存再開、表示領域 |
|
||||
| Pixel UI | 238 | 既存の断面表示、カメラ、クリック、Simulation不変 |
|
||||
|
||||
新しい一括ターゲットは `make test-transport`。UIは `make test-ui` に含めた。撤去の保存不具合修正後は、既存Construction105項目・Runtime construction37項目も再実行して合格した。
|
||||
|
||||
## 既存機能の回帰
|
||||
|
||||
- `make check`: Editor読込と通常Headless起動が成功。SCRIPT ERRORなし。
|
||||
- S0: 438項目合格。
|
||||
- S2・S3: 983項目合格。Path trafficの旧v7固定期待をv8へ更新し、正式な旧形式を作る試験から新設フィールドを除去した後、82項目の同スクリプトを再実行して合格。
|
||||
- S1・S4・S5・S6・MVP・受入・性能: 合計3,107項目合格。旧形式の固定テストデータを更新して再実行した。14日受入は既存の運営境界を加速する方式であり、全Actorの20,160回の実Tickや実描画の14日負荷試験ではない。加速用fixtureは空の昇降機だけ時計を揃え、乗車中の時間を飛ばすことは拒否する。
|
||||
- 通常UI: Dashboard121、従業員46、商品37、営業55、開業35項目合格。
|
||||
- 実通勤を含む供給3営業日: **49項目合格**。食堂売上3,000G、宿泊1,200G、受付0G、原材料配送30便、食事配送73便、残金2,895G。全決算で照合差0・給与未払0。途中配送のディスク保存と再生も一致した。
|
||||
|
||||
集約ログは `artifacts/transport/`、3営業日の数値は `normal-supply-3days.json`。初回に古い期待値で失敗した回帰ログも残してあるが、該当スクリプトの修正後の成功ログを確認している。新しい運行・描画に由来するエラーを合格扱いにしていない。
|
||||
|
||||
## 残る課題
|
||||
|
||||
- MOVE-01は昇降路内の上下徒歩抑制まで。既存の上下通路は階段相当で残る。全階間の規則と明示的な階段施設への移行が必要。
|
||||
- 配車は先着順、同じ発着階のまとめ乗り。途中階の相乗り・複数かごは未実装。
|
||||
- 車内の論理位置とPath密度は乗車元に残る。描画は車内へ移るが、混雑密度を車内と分離する改善が必要。
|
||||
- 同じSeed・需要・人数を用いた設備改善前後のP95移動時間・離脱比較(MOVE-06)は未実施。
|
||||
- 帰宅経路・専用ドット動作・音・初見試遊、宿泊の精算方式と全AIを含む長期描画性能は後続。
|
||||
Reference in New Issue
Block a user