Files
TheTree_mock/docs/qa/WINDOWS_RECEPTION_EXPORT_FIX.md

2.4 KiB

Windows配布版で建築候補が空になる問題

対象: 最初のWindows配布 fb4ad23。受付が建築候補に現れず開業できないという報告を、配布済みPCKで再現した。

原因と修正

GodotのRelease出力ではFacilityの .tres が .res に変換され、元のパスは .remap を通して読み込まれる。DefinitionRegistryが FileAccess.file_exists で元の物理ファイルを調べていたため、全18施設を resource_not_found として除外していた。リソースの存在判定を ResourceLoader.exists に変更し、既存の型・内容・IDの検証は維持した。

制作フォルダーからPCKを実行すると、物理ファイルがローカルにあるため不具合が隠れる。前回の単なる起動smokeでも候補の欠落は検出できなかった。

検証

  • 制作フォルダー外の一時ディレクトリで、配布済みPCKだけを起動。FileAccess=false / ResourceLoader=true を確認し、18施設の欠落・パレット空を再現。
  • 修正版PCKを同じ隔離条件で起動し、13項目成功。制作ファイルへのフォールバックなし、全18施設、受付ボタンの表示・選択、初日ガイドからの選択、マップ配置、500Gの支払い、120分後の完成、客室建設への案内を確認。
  • macOS版Godotによる配布PCKの実描画で受付完成と建築候補を確認。Windows実機での再検証は未実施。
  • DefinitionRegistryの既存266項目が成功し、存在しないデータの拒否も維持。

make export-windows は以後、書き出し後に隔離した実建設チェックを実行する。既存PCKの検証は次のコマンドで行える。

make test-exported-opening WINDOWS_PCK=/absolute/path/TheTree.pck

tools/verify_exported_opening.py が一時ディレクトリから tests/export/test_exported_opening.gd を実行する。試験では保存を無効にし、実際の建設UIとCommandを使う。制作ファイルが見つかった場合も失敗させる。

証跡: artifacts/windows-opening-before-isolated.log、windows-opening-fixed-visual.log、windows-registry-fix.log、windows-reception-fixed.png。修正版配布は build/windows/TheTree-Windows-reception-fix.zip。EXEとPCKを含めて全体を展開し、新しいフォルダーから起動する。