Fusion Pikmin 2 — solo and co-op diagnostic build, 2026-10-09 r2

This is an experimental native Pikmin 2 solo and online co-op test. P2 Archipelago
integration is not included. Expect unfinished behavior; use a separate campaign.
Windows x64; both players need this same package and their own legal USA Pikmin 2
GPVE01 revision 0 ISO/GCM. No game image, assets, saves or credentials are bundled.

1. Extract the ZIP into a new writable folder; run Play.cmd.
2. Click Set up disc, choose your own ISO/GCM, and choose an existing parent
   folder with at least 1.25 GB free. Setup creates a fresh private assets folder,
   reads the disc without changing it, and verifies each extracted file. The
   assets and manifest fields fill automatically. Setup.cmd offers the same flow;
   select its printed assets folder in Play.cmd. Extraction can take minutes.
Solo: after step 2, choose New campaign folder and click Solo / resume.
No partner, invitation, relay or internet connection is needed for solo play.
Use the in-game file menu to start or continue a save; the launcher slot selector
is for online play. Later, select the same solo campaign and click Solo / resume.
Solo and online campaigns must use separate folders. Diagnostics are always on:
native output, memory-card operations and tick timing are recorded automatically.
Click Collect logs after a failure and send that ZIP with your last action.
Save in-game before closing; Stop ends an unresponsive run without promising a save.

Online co-op:
3. Host: use New campaign folder; select save slot 1, then Host / resume.
   Once ready, Save invitation and Save my code. Send both privately to the guest.
4. Guest: choose those invitation and host offer files; use New campaign folder
   for each join, then Join. Save my code and send the answer privately to host.
5. Host: Import partner answer. Wait for both games to connect. Each player uses
   their own captain. Keep connection files private; they contain live ICE data.
   The public relay requires an internet connection and may be unavailable.
6. Save using the game's normal save prompt. Host / resume uses the same host
   campaign and slot; give the guest a NEW invitation/offer and NEW guest folder.
   Preserve host folders; guest folders are snapshots, not authoritative saves.

Diagnostic play: tracing defaults on; the window starts centered at 960x540.
Try landing, separate captain movement, throwing/whistling, fighting/carrying, entering a cave,
advancing a floor, leaving the cave, saving, then host resume with a fresh guest.
Record the area/cave/floor, what each captain did, and whether one or both PCs
failed. Stop on a failure and preserve both campaign folders.

Click Collect logs, or run Collect-logs.cmd and choose the campaign folder.
This explicitly creates a ZIP; it uploads nothing. It includes sanitized tails
of native/crash logs, result and load receipt from the newest 10 runs, plus build
provenance. Review it before sharing. Game assets, saves/cards, invitations,
ICE codes, settings and memory dumps are excluded. Submit both players' ZIPs
with your steps and observed result. Save sharing is a separate explicit choice;
do not send your whole campaign folder or disc assets. Report any failure as soon
as it happens; completing the remaining steps is not required.

Crash dumps can contain private game assets and credentials. Keep existing
Windows crash dumps local (often %LOCALAPPDATA%\CrashDumps, if Windows dump capture
has already been configured; creation is not guaranteed); provide one only when specifically requested through
a private channel. This package does not alter Windows crash dump settings.

This revision includes the audio initialization fix, cave save-admission
synchronization fix and steam projection correction. The native build connected
both PCs with 1,320 matching frames and no mismatches. Cave floor transitions
and the visual correction still need gameplay confirmation. Solo startup and
logging are checked separately; this is not full campaign acceptance.
Details: docs/FUSION_P2_ONLINE.md and BUILD-PROVENANCE.json.
