# V2 Accessibility Report

This VPAT-style report maps V2 accessibility commitments to implemented feature
contracts, settings surfaces, and verification gates. The report is maintained
with the `FV2AccessibilityFeatureSet` contract and must be updated whenever a
feature is added, removed, renamed, or region-gated.

## Scope

The covered surfaces are in-game menus, HUD, subtitles, captions, input
rebinding, assist settings, online voice/text chat, cinematics, training and
loading flows, handheld/mobile-cloud battery profiles, and public-facing
settings documentation. Accessibility compliance testing through
`AccessibilityComplianceTesting` maps those surfaces to Xbox Accessibility
Guidelines and Game Accessibility Guidelines evidence.

## Implemented Feature Coverage

| Area                        | V2 coverage                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | Verification                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Visual                      | Deuteranopia, Protanopia, Tritanopia, and Achromatopsia palettes; engine-level colorblind simulation shader at `V2ColorblindSimulation.usf` for post-process scene-color preview; accessibility-verified colorblind-safe palette alternatives through `ColorblindSafePalette` for all UI indicators with non-color fallbacks; high-contrast mode profile through `HighContrastMode` with interactive-object outlines and background simplification; screen magnification through `ScreenMagnification` with a moveable focus area; text scaling profile through `TextScaling` with a 0.5x-3.0x global multiplier and layout constraints; screen reader bridge through `ScreenReaderBridge` for UIAutomation, NSAccessibility, and TalkBack; camera shake intensity slider through `CameraShakeIntensitySlider` with 0-100% motion sensitivity control and default 100%; reduced-motion mode through `ReducedMotionMode` to disable screen shake, reduce particle effects, and slow camera transitions; photosensitivity filter through `PhotosensitivityFilter` for rapid flashing, strobe effects, and high-contrast flicker; font accessibility options through `FontAccessibilityOptions` with Default, Atkinson Hyperlegible, OpenDyslexic, and 0-50% letter spacing; accessibility settings persistence through `AccessibilitySettingsPersistence` for per-player startup restore before gameplay; max-5-flashes-per-second photosensitivity limiter; 1.5x, 2.0x, and 2.5x big text; OpenDyslexic and Atkinson Hyperlegible fonts; dark/light mode; eye-strain warm filter; high-contrast cursor/focus indicator                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | `FV2AccessibilityVisualConfig::IsValidConfig`, `V2.UI.Module`, `V2.UI.Accessibility.ColorblindSimulationShader.AssetContract`, `V2.UI.Accessibility.ColorblindSafePalette.AssetContract`, `V2.UI.Accessibility.HighContrastMode.AssetContract`, `V2.UI.Accessibility.ScreenMagnification.AssetContract`, `V2.UI.Accessibility.TextScaling.AssetContract`, `V2.UI.Accessibility.ScreenReaderBridge.AssetContract`, `V2.UI.Accessibility.CameraShakeIntensitySlider.AssetContract`, `V2.UI.Accessibility.ReducedMotionMode.AssetContract`, `V2.UI.Accessibility.PhotosensitivityFilter.AssetContract`, `V2.UI.Accessibility.FontAccessibilityOptions.AssetContract`, `V2.UI.Accessibility.AccessibilitySettingsPersistence.AssetContract` |
| Captions and descriptions   | Subtitle rendering through `SubtitleRenderingSystem` with speaker identification, directional indicators, non-verbal captions such as `[explosion]`, background color/opacity options, and size scaling; closed caption authoring through `ClosedCaptionAuthoringTool` for `[door creaks]`, `[thunder]`, and `[enemy grunts]`; subtitle size/background/speaker tags, commentary subtitle toggle, crowd/SFX/cinematic closed captions, sign-language overlay locales, audio description track, per-locale subtitle background opacity                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | `FV2AccessibilitySubtitleCaptionConfig::IsValidConfig`, `V2.UI.Module`, `V2.UI.Accessibility.SubtitleRenderingSystem.AssetContract`, `V2.UI.Accessibility.ClosedCaptionAuthoringTool.AssetContract`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| Audio and haptics           | Mono audio, per-ear balance, tinnitus-friendly ducking, combat cue set, directional visual sound indicators through `VisualSoundIndicators` for off-screen gunfire, footsteps, and environmental hazards; audio feedback duplication through `AudioFeedbackDuplication` with screen flash for damage and controller vibration for events; visual cue pairing, haptic cue pairing, muted-audio haptic translation, subwoofer pulse companion                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | `FV2AccessibilityAudioHapticConfig::IsValidConfig`, `V2.UI.Module`, `V2.UI.Accessibility.VisualSoundIndicators.AssetContract`, `V2.UI.Accessibility.AudioFeedbackDuplication.AssetContract`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Motor and cognitive assists | Full rebinding, global input remapping through `GlobalInputRemapping` for any game action to any input on any device with per-player persistence, hold-to-toggle conversion through `HoldToToggleConversion` for any hold action including hold-to-aim to toggle-aim and hold-to-sprint to toggle-sprint with per-player startup restore, accessibility preset profiles through `AccessibilityPresetProfiles` for one-click vision, hearing, motor, and cognitive setup, auto-aim assist through `AutoAimAssist` with off/low/medium/high/lock-on strengths controlled separately for camera and aim, one-handed control schemes through `OneHandedControlSchemes` with full 33-action gameplay coverage for left-hand-only and right-hand-only controller use plus per-player startup restore, QTE alternatives through `QTEAlternatives` with off/hold-button/auto-complete story choices plus per-player startup restore, puzzle skip through `PuzzleSkipOption`, objective clarity through `ObjectiveClaritySystem` for clear waypoints, highlighted interactables, simplified quest descriptions, and screen-reader objective summaries, tutorial replay through `TutorialReplaySystem` for replaying every interactive lesson from menus at any time without first-encounter gates, timing adjustments through `TimingAdjustmentSystem` for timed puzzle extensions, QTE window slowdown, dodge input grace, and 0.5x-1.0x global game speed with per-player startup restore, sequential combo input through `SequentialComboInput` for replacing simultaneous combo chords with ordered two-button or all-combo alternatives while preserving authored move outcomes, adaptive difficulty through `AdaptiveDifficultySystem` using deaths, retries, and completion time with per-player startup restore, single-button special macros, ranked-disabled assist policy, hold-to-press toggles, auto-block/auto-parry/auto-tech, single-player slowdown, rubber-banding, tutorial-on-demand, pause-anywhere, practice-during-loading, quick restart, auto-pace, Fight Fundamentals onboarding, step-down difficulty | `FV2AccessibilityMotorAssistConfig::IsValidConfig`, `V2.UI.Module`, `V2.Input.Module`, `V2.Modes.Module`, `V2.Persistence.ProfileSave.AssetContract`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Hardware input              | PlayStation Access Controller, Logitech Adaptive Gaming Kit, Xbox Adaptive Controller with `Input.Mapping.XboxAdaptiveController.V2`, `Hardware.Compatibility.XboxAdaptiveController.V2`, external switch ports, neutral SOCD, and adaptive-hub tutorial glyphs, Hori/Hori Mini/Hori Octa, 8BitDo, Razer Kitsune, Victrix Pro FS, MadCatz MK1 Fightstick, keyboard/mouse negative edge, configurable SOCD, hitbox/stickless legality, eye tracking menu assist                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | `FV2AccessibilityHardwareInputConfig::IsValidConfig`, `V2.UI.Module`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Voice and CVAA              | Opt-in voice-command navigation, visual confirmation, platform STT or local Whisper tiny path, voice dictation for chat, profanity override, voice emotes, party speech-to-text captions, CVAA compliance gate                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | `FV2AccessibilityVoiceCvaaConfig::IsValidConfig`, `V2.UI.Module`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Documentation and preview   | Setup-screen preview, per-feature short videos, settings test wizard, tutorial replay library, per-fighter motion-input tutorial from character select                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | `FV2AccessibilityDocumentationVerificationConfig::IsValidConfig`, `check-v2-accessibility-feature-set.py`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| Battery and thermal         | Handheld/mobile-cloud 30 FPS battery profile, reduced VFX/ambient/crowd density, auto-toggle at 20 percent battery, thermal frame-rate clamp, sustained-throttle HUD warning, user override, cooling throttle telemetry, charging-state-aware perf cap lift                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | `FV2AccessibilityBatteryThermalConfig::IsValidConfig`, `V2.UI.Module`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

## Product Rules

- Any assist that changes defensive execution, macro execution, game speed, or
  CPU behavior disables ranked eligibility unless the assist is explicitly
  certified as gameplay-inert.
- `PuzzleSkipOption` is opt-in, story-only, and offers a confirmed narrative
  summary skip after configured attempts or elapsed time while preserving
  rewards and remaining blocked in ranked or tournament play.
- `ObjectiveClaritySystem` is opt-in, quest/story scoped, and only changes UI
  guidance for clear waypoints, highlighted interactables, simplified
  descriptions, and screen-reader objective summaries.
- `TutorialReplaySystem` exposes every interactive tutorial lesson from main
  menu and single-player pause menu paths, bypasses first-encounter gates, and
  does not reset profile progress.
- The photosensitivity limiter applies to KO slow motion, X-Ray cinematics, and
  lightning-style VFX before content review signoff.
- Every audio-only gameplay cue must have a paired visual and haptic cue.
- The sign-language overlay is default off and opt-in per account.
- CVAA voice/text-chat support must be validated per platform before release.
- Battery and thermal overrides must disclose the risk before allowing sustained
  throttle override.

## Release Gate

Accessibility changes pass when:

- `python3 V2/ue/Tools/check-v2-accessibility-feature-set.py` passes;
- `python3 V2/ue/Tools/check-v2-accessibility-compliance-testing.py` passes;
- `V2.UI.Module` automation passes;
- docs validation passes;
- settings QA verifies preview/try-it, focus visibility, text scaling, and
  no-overlap layouts for default, large-text, and high-contrast states;
- platform QA validates adaptive-controller and voice/chat compliance paths for
  the target platform set.
