# V2 Xbox Adaptive Controller Support

This runbook covers `TODOS.phase-72.72.13.2.13`: full Xbox Adaptive Controller
compatibility testing and input mapping.

## Runtime Surface

Xbox Adaptive Controller support is modeled as adaptive hardware under the input
hardware catalog and as a specialized accessibility device profile in UI:

- vendor product: `Vendor.Xbox` / `Adaptive.XboxAdaptiveController`
- device tags: `Device.XboxAdaptive`, `Device.XboxAdaptiveController`
- platform mapping path: `XSXGamepad`
- mapping profile: `Input.Mapping.XboxAdaptiveController.V2`
- compatibility test plan: `Hardware.Compatibility.XboxAdaptiveController.V2`
- SOCD preset: `SOCDPreset.XboxAdaptive.Neutral`
- tutorial profile: `InputDeviceProfile.XboxAdaptive`
- tutorial overlay: `Tutorial.Device.XboxAdaptive`
- display style: `InputDisplay.Style.AdaptiveHub`
- contract:
  `V2/ue/Content/V2/Input/Accessibility/XboxAdaptiveControllerSupport_V2_Contract.json`
- focused checker: `V2/ue/Tools/check-v2-xbox-adaptive-controller-support.py`

## Input Mapping

The Xbox Adaptive Controller inherits the `XSXGamepad` mapping contexts for
Classic, Modern, Dynamic, and Easy Combo control schemes. The required action
slots cover directional input, punches, kicks, special, block, grapple,
movement, team, presentation, environment, and ruleset-specific actions.

The external switch ports are treated as player-mappable inputs for direction,
punch, kick, special, block, and grapple slots. Defaults remain conflict-free,
saved per player, and compatible with Xbox Copilot-style assistant-controller
pairing.

## Compatibility Matrix

The compatibility plan covers hub-only input, external switches, joystick
directional input, and Copilot pairing. It also verifies vendor-product
detection, XSX mapping contexts, neutral SOCD cleaning, tutorial glyphs, and the
accessibility feature-set declaration.

## Verification

Run these checks after changing Xbox Adaptive Controller support:

```bash
python3 V2/ue/Tools/check-v2-xbox-adaptive-controller-support.py
python3 V2/ue/Tools/check-v2-hardware-peripherals.py
python3 V2/ue/Tools/check-v2-input-module.py
python3 V2/ue/Tools/check-v2-socd-cleaning-device-presets.py
python3 V2/ue/Tools/check-v2-input-device-tutorial-overlay.py
python3 V2/ue/Tools/check-v2-accessibility-feature-set.py
python3 V2/ue/Tools/check-v2-ui-module.py
python3 V2/ue/Tools/check-v2-ci-workflow.py
python3 V2/tools/validate-v2-docs.py
python3 -m json.tool V2/ue/Content/V2/Input/Accessibility/XboxAdaptiveControllerSupport_V2_Contract.json
```

Automation coverage:

- `V2.Input.Module`
- `V2.Input.HardwarePeripherals.AssetContract`
- `V2.UI.Module`
