消える足あと：5段階のPyxel教材（008）

Python 3.11以上 / Pyxel 2.9.9
原作の共通README_最初に.txtの要件を採用しています。
ZIP内から起動せず、新しいフォルダーへ展開してください。
.venvは各PCで新しく作成します。別PCからコピーしないでください。
初回のPyxel導入にはネットが必要です。通常のプレイはオフラインです。

Windows（PowerShell）
1. このREADMEが入ったフォルダーを開いて実行します。
   cd "C:\Users\yourname\Downloads\消える足あと 教材"
   py -3 --version
   py -3 -m venv .venv
   .\.venv\Scripts\python.exe -m pip install -r requirements.txt
   .\.venv\Scripts\python.exe -B 01_grid.py
2. Pythonが複数ある場合は、3.11以上のものを選んでvenvを作成してください。
   例：py -3.11 -m venv .venv
3. Activate.ps1を実行する必要はありません。
   上記は仮想環境のPythonを直接指定するため、実行ポリシーの変更も不要です。

macOS / Linux（ターミナル）
   cd "/path/to/消える足あと 教材"
   python3 --version
   python3 -m venv .venv
   .venv/bin/python -m pip install -r requirements.txt
   .venv/bin/python -B 01_grid.py
仮想環境をactivateしなくても、この指定で動きます。

次の段へ
01_grid.py → 02_delivery.py → 03_reveal.py → 04_signboard.py → 05_two_letters.py
前のゲームを閉じ、最後のファイル名を次へ変えて起動します。
各段は単独起動でき、他の段・原作・外部画像・音源に依存しません。
LESSON.mdに手順、lessons.jsonに各段の説明、diffs/に変更の比較があります。
5段目は原作C「二通の届け先」・配置0・stationsの範囲を完成させます。
01〜04の10マスは教材用地形で、原作A/Bの再現ではありません。

操作
矢印：押すたび1歩。押しっぱなしでは連続しません。
Space：02は出口で配達。03以降はV/板で読む、出口で届ける。
R：同じ配置で最初から。Z：一手戻す（05のみ）。P：休憩/解除（05のみ）。
休憩中はR/Zも無効です。まずPで解除してください。
Escまたはウィンドウの閉じるボタン：終了。
記号はM=月、L=葉、S=星、F=花。V=見晴台、箱=出口、板?=案内板。
出口の?は現在非表示。道・出口・注文は消えません。
読む時間は自由です。成功した移動でだけ表示が消えます。
板の表示範囲と配達対象は別のデータです。読むだけで配達は完了しません。
誤配しても継続できます。最後の対象へ配達した場所で終了します。

別の作業ディレクトリから起動
Windows：
   & "C:\path\消える足あと 教材\.venv\Scripts\python.exe" -B "C:\path\消える足あと 教材\05_two_letters.py"
macOS/Linux：
   "/path/消える足あと 教材/.venv/bin/python" -B "/path/消える足あと 教材/05_two_letters.py"
パスに日本語や空白がある場合は引用符を付けます。

困ったとき
・Pythonが見つからない：Python 3.11以上がインストールされているか確認します。
  Windowsではpy、macOS/Linuxではpython3が使えるか先に確認します。
・No module named pyxel：起動に使う同じ.venvのpythonでpip installを実行します。
・venv/ensurepipがない：OSのPython仮想環境機能を用意し、.venvを作り直します。
・対応wheelがない/導入に失敗：Pythonの版とOSの対応を確認してください。
  pipのエラー本文を保存し、別の環境の.venvをコピーして回避しないでください。
・GUI/OpenGL/ディスプレイのエラー：通常起動にはGUI対応デスクトップが必要です。
  サーバーなどでは下のheadless描画検査が使えます。これは人が遊ぶ画面ではありません。
・文字化け：.py/.json/.md/.txtはUTF-8で保存します。
  プログラムのテキスト読み書きはencoding='utf-8'を明示しています。
・can't open file：READMEのあるフォルダーか、引用符付き絶対パスで起動します。
・出力先がない：--screenshot/--reportに指定する親フォルダーを先に作ります。
・反応しない：矢印を離して押し直し、05ではPAUSEDならPで解除します。

検査（以下のpythonは上の.venvのpythonに読み替えてください）
   python -B test_stages.py
   python -B 05_two_letters.py --headless-smoke --screenshot initial.png --report initial.json
   python -B 05_two_letters.py --headless-replay qa/05_done_inputs.json --screenshot done.png --report done.json
   python -B qa/run_renders.py
標準テストは原作なしで動きます。原作への直接比較だけは任意です。
Windows PowerShell：
   $env:ORIGINAL_008_DIR="C:\path\games\008_fading_footprints"
   .\.venv\Scripts\python.exe -B test_stages.py
macOS/Linux：
   ORIGINAL_008_DIR="/path/games/008_fading_footprints" .venv/bin/python -B test_stages.py
参照の再採取は任意：python -B qa/build_reference.py "/path/games/008_fading_footprints"
再描画や参照の再採取はqa/内の記録を上書きします。配布版を残したい場合はコピーで実行してください。

検証の意味と限界
付属JSONは合成入力、PNGは実Pyxel 2.9.9のheadless描画です。
人の試遊、OSキー入力、Windows/macOS GUI、ブラウザ実行、音声出力は未検証です。
Windows/macOSの手順は用意しましたが、そのOSのGUI成功の記録ではありません。
この教材に音源はありません。原作の既存検査結果は教材検査へ合算していません。

権利
LICENSEは原作のMIT全文そのまま。各段にも同じ全文をコメントで保持しています。
著作権表記：Copyright (c) 2026 Tidepost contributors
原文に残る字形の例外について、assets/NOTO-LICENSE.txtも同梱しています。
この教材はASCIIと図形のみで、Noto由来の字形データは含みません。
Pyxelは外部依存で、独自のMITライセンスです。
