A screen reader accessibility mod for Phoenix Wright: Ace Attorney Trilogy. The mod outputs game text (dialogue, menus, UI elements) directly to screen readers via the UniversalSpeech library, with SAPI fallback for users without a screen reader.
- Full dialogue output with character name announcements
- Menu and UI navigation feedback
- Investigation mode with hotspot navigation
- Court record (evidence/profiles) accessibility
- Trial mode with life gauge announcements
- Support for all minigames:
- Luminol spray blood detection
- Fingerprint dusting
- 3D evidence examination
- Vase puzzle
- Dying message connect-the-dots
- Bug sweeper
- Video tape examination
- Orchestra music player (game soundtrack browser)
- Psyche-Lock sequences (GS2/GS3)
- Mod translations available (see Translations)
- Phoenix Wright: Ace Attorney Trilogy (Steam version)
- MelonLoader v0.7.1
- UniversalSpeech.dll (32-bit) in the game directory for screen reader output
- nvdaControllerClient.dll (32-bit) in the game directory for NVDA users (optional)
Each release includes two assets: an installer executable for automatic installation, and a zip file for manual installation.
- Download
PWAATAccessibilityInstaller.exefrom the latest release - Run the installer and follow the prompts
- Launch the game
- Download the zip file from the latest release
- Run the included
MelonLoader.Installer.exeand install MelonLoader to your game - Copy
AccessibilityMod.dllto theModsfolder in your game directory - Copy
MelonAccessibilityLib.dll,UniversalSpeech.dllandnvdaControllerClient.dllto your game directory - Copy the
Datafolder contents to[Game Directory]/UserData/AccessibilityMod/ - Launch the game
| Key | Context | Action |
|---|---|---|
| F5 | Global | Hot-reload config files |
| R | Global | Repeat last output |
| I | Global | Announce current state/context |
| [ / ] | Navigation modes | Navigate items (hotspots, evidence, targets, etc.) |
| U | Investigation | Jump to next unexamined hotspot |
| H | Context-sensitive | List hotspots, get hints, or announce life gauge |
| F1 | Orchestra mode | Announce controls help |
Configuration files are stored in [Game Directory]/UserData/AccessibilityMod/. Press F5 in-game to hot-reload without restarting.
UserData/AccessibilityMod/
├── en/ # English (fallback)
│ ├── strings.json # UI strings
│ ├── GS1_Names.json # Character name mappings
│ ├── GS2_Names.json
│ ├── GS3_Names.json
│ └── EvidenceDetails/ # Evidence descriptions
│ ├── GS1/*.txt
│ ├── GS2/*.txt
│ └── GS3/*.txt
├── pt-BR/ # Brazilian Portuguese
└── zh-Hans/ # Chinese (Simplified)
cd AccessibilityMod
dotnet build -c ReleaseThe build output is automatically copied to the game's Mods folder, along with the contents of the Data folder which are copied to UserData/AccessibilityMod.
- .NET Framework 3.5 targeting pack
- MelonLoader installed in the game directory
Contributions are welcome! See CONTRIBUTING.md for development setup and guidelines.
The mod supports multiple languages. Currently included translations:
- English
- Brazilian Portuguese
- Chinese (Simplified)
Want to help translate? See TRANSLATORS.md for guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.