088 つながる厨房
「そこに置いといて」から、「はい、どうぞ」へ。

一台のキーボードを分けて遊ぶ、二人の小さな厨房です。
調理役は料理を作り、配膳役は注文へ届ける。共有台に置いても、手渡しても、
六皿すべてを出せば達成です。制限時間も、焦げる料理もありません。

起動
Python 3.10以降。Windowsはsetup.batを一度実行し、以後play.bat。
macOS/Linuxはbash setup.sh、bash play.sh。
初回はPyxel取得が必要。実行時はPyxelと標準ライブラリだけで動きます。
日本語ビットマップを同梱。実行時の通信、外部アカウント、素材取得は不要。
launch.shは制作環境専用です。通常はplay.sh/play.batを使ってください。
Windows/macOSの実機動作と物理キーボードの同時押し限界は未確認です。

操作
表紙: 1/2/3で厨房、Bで手渡しだけ無効の比較、Enterで開始。
調理役 C: WASDで移動、Eで台を操作、Qで隣の空手へ手渡し。
配膳役 S: 矢印で移動、Mで台を操作、Nで隣の空手へ手渡し。
Pで停止・相談。停止中のXは二人、台、料理、注文をまとめて5刻戻します。
Rで再試合相談。ZとEnterの双方同意で最初から。Rでもう一度取消。
Escで表紙へ、F12で画像。台の色枠が次の操作対象です。
移動・操作同時は操作優先、手渡しも同時なら手渡し優先です。
反対/複数方向同時は移動0。両者の操作を同じ論理刻へ採用します。
表紙・停止・結果は世界を進めません。画面移行のキーは一度全て離します。

料理の流れ
Cが材料棚に向いてE → 生の皿を持つ → 加熱台に向いてEで置く。
スープは3刻、パンは2刻。置いた次の刻から減ります。1刻は0.5秒。
完成したら空手でE。完成皿は焦げませんが、取るまで加熱台を使います。
Cは左側、Sは右側、中央列は二人とも歩けます。押し合いません。
中央の共有台へ置き、Sが取るか、縦横に隣接して持っている側がQ/Nで渡します。
重なっただけでは手渡しできません。二人とも皿を持つと交換できません。
Sが先頭の注文口に向いてM。違う皿/生皿を出しても手元に残ります。
Cは間違えた生皿を同じ材料棚へ返せます。減点や廃棄罰はありません。
共有台は向きの先と足元で操作できます。その他の台は向きの先のみ。
同じ共有台を同時操作すると、二人とも不採用。「同じ台、ひとりずつ」と表示。

三つの厨房・検証
Aは中央で会う配置。Bは上側の壁と中央台。Cは中央右の壁と南側の注文口。
設計候補の注文、調理時間、配置は変更していません。
共有台だけで完了した記録はA162/B139/C151刻、直接手渡し中心ではA122/B122/C135刻。
どちらも六皿達成です。これらは参考手順で、最短や優越の証明ではありません。
手渡し有無の比較は同じ共有台手順で全状態が一致し、同じ六皿を完成。
手渡しを使うこと自体は成功条件にしていません。人の2人試遊は未確認です。

記録・素材
media/native_*はエージェントによる実画面入力、automatic_*は自動入力の実Pyxel描画。
実行時ソース、SHA256、初期配置、意味入力、論理刻、状態を各記録へ保存。
自動検査はmediaを書き換えません。元の観測と後の再現検査は別ファイルです。
動画は実時間の最初の二皿まで。全六皿達成の証拠は入力付きpolicy_results.json。
無音設計。音の実聴、Windows実機、人の楽しさを確認したとは主張しません。
全ソース、MIT全文、Pyxel/Notoのライセンス全文を同梱。

動画と現行表示の差分について
同梱動画は比較版の説明文を直す前に収録した「原版」の画面です。収録時ソースを
そのまま保存しています。現行版では手渡し無効の比較版だけ説明/凡例を明確化し、
原版描画命令の同一性を別の派生検査で確認しました。新収録と呼び替えていません。
通常起動時の動画バッファも最後に0秒へ変更しました。自動実演は30秒のままで、
動画の設定/表示へ影響しません。現行ソースのnative確認は別フォルダに保存しています。
