# DISPATCH — survey_explorer_3

## Objective
Survey ARPG PC input handling, controls, game interaction mechanics (R2), and testing/verification strategy for the PC Client (`client/web_pc/`).

## Scope & Focus
1. Mouse & Keyboard Input Controls:
   - Click-to-Move & Move-to-Target: Left click on canvas converts screen (sx, sy) to world coords (wx, wy) via `isoToWorld` in `iso_math.js`, sets `player.destination`, smoothly rotates and paths character. Holding LMB should continuously update destination.
   - Right Mouse Button (RMB): Primary combat martial skill targeting mouse direction.
   - Q, W, E, R: Secondary martial skills with target direction towards cursor.
   - 1, 2, 3, 4, 5: Survival flasks (instant heal, mana recovery, speed boost, defense buff, etc.) with cooldown overlay.
   - Spacebar: Huyễn Ảnh Bộ (dodge roll / dash with 0.25s i-frame, ghost trail animation, canceling attack animations).
   - Keybinds for UI: `I` (Inventory toggle), `C` (Character sheet toggle), `Tab` or `M` (Minimap/Map overlay toggle), `Esc` (Settings / Pause menu).
2. Existing Control & Player Loop in `client/webapp/`:
   - How `canvas_renderer.js` currently handles inputs (it currently checks virtual joystick and arrow/WASD keys).
   - How to cleanly implement a dedicated PC Input Controller (`pc_input_controller.js`) for `client/web_pc/` that plugs into the player movement and combat state without breaking anything.
3. Verification & Testing Strategy:
   - Existing test framework (`tests/unit/`, browser tests).
   - How to construct unit tests and browser E2E tests (using headless browser, Puppeteer/Playwright or Chrome DevTools MCP) to verify:
     - 100vw x 100vh canvas sizing with 0 scrollbars.
     - 0 mobile simulator elements (`.iphone-frame`, etc.).
     - Left-click moves character.
     - Space triggers Huyễn Ảnh Bộ.
     - QWER / 1-5 activate skills/cooldowns.
     - I, C, Esc modals.
     - i18n language toggle reactivity without reload.
     - Zero console errors.

## Authoritative Inputs
- `c:\Projects\FreeExile\.agents\teamwork\ORIGINAL_REQUEST.md` (specifically `## 2026-10-02T05:17:43Z`)
- `client/webapp/js/engine/canvas_renderer.js`, `combat_system.js`, `iso_math.js`
- `tests/` directory

## Output
Write your findings and proposed input/controller design & test strategy to `c:\Projects\FreeExile\.agents\teamwork\survey_explorer_3\handoff.md` and send a completion message with summary.


## 2026-10-02T05:20:24Z
[Message] timestamp=2026-10-02T05:20:24Z sender=7eb101bf-362e-46b0-81cc-0a9216617c39 priority=MESSAGE_PRIORITY_HIGH content=You are survey_explorer_3.
Your working directory is: c:\Projects\FreeExile\.agents\teamwork\survey_explorer_3\
Your dispatch instructions are at: c:\Projects\FreeExile\.agents\teamwork\survey_explorer_3\DISPATCH.md
The authoritative user request is at: c:\Projects\FreeExile\.agents\teamwork\ORIGINAL_REQUEST.md (specifically header ## 2026-10-02T05:17:43Z).

You MUST read ORIGINAL_REQUEST.md and DISPATCH.md before starting your investigation.
Investigate ARPG PC input controls (Click-to-Move, RMB, QWER, 1-5, Spacebar Huyễn Ảnh Bộ, UI shortcuts I/C/Esc/Tab), controller integration with canvas_renderer, and the end-to-end testing and verification strategy.
Write your findings to c:\Projects\FreeExile\.agents\teamwork\survey_explorer_3\handoff.md and report back via send_message.
