Skip to content

About

Play Gyakuten Kenji 2 on the Nintendo DS with Capcom's official English localization: script, title logo, episode titles, Logic keyword cards and voice clips. Tools only, no game data.

Topics

Resources

Stars

2 stars

Watchers

2 watching

Forks

Repository files navigation

Prosecutor's Path

Capcom's official English localization of Gyakuten Kenji 2 ported into the Nintendo DS ROM: the script, the title logo, the episode titles, the Logic keyword cards and the voice clips.

Gyakuten Kenji 2 (2011) never got an official English release on the DS. The community filled the gap with the AAI2 Final v2 fan translation. Thirteen years later Capcom localized the game themselves for the Ace Attorney Investigations Collection (2024).

This toolchain takes Capcom's own script, art and voice recordings and injects them into the DS game, so you can play the official localization on original hardware, on a flashcart, or in an emulator.

99.4% of the script's text is Capcom's writing, measured by tools/coverage.py, so you can recompute it yourself. Based on an analysis of the game's code rather than a full playthrough, about 99.8% of the text you can actually see in the game is Capcom's official wording. Earlier releases said 96.5%; that counted fan-written rows as official once Capcom's names had been swapped in, which isn't the same thing. The counting changed slightly again in 1.11.0: a fan row that already reads exactly as Capcom's wording now counts as Capcom's (it doesn't move the figure at this precision), and the lines I wrote in Capcom's style, where Capcom had nothing that fit, are reported on their own line and counted as neither. 1.10.0 said 98.8%.

The cast uses Capcom's names throughout, including the ones that are graphics: the nameplates, the evidence and profile cards, the episode-select buttons, the splash cards, the title screen, the room names on the cake-contest maps and the cake-show logo on the Episode 3 opening card are all redrawn or swapped in at build time.

Playtesters wanted

The tester JPScaravino has finished Episodes 1, 3, 4 and 5 and the second half of Episode 2, across several builds, most recently Episode 5 start to finish on 1.11.1 and Episode 4 on the 1.11 test builds ("works perfectly from start to finish"). A lot of optional dialogue (wrong answers, side conversations) hasn't been played anywhere, and the first half of Episode 2 hasn't been reported finished, so reports from either help most. TESTING.md says which build each episode was played on and what the automated rig has covered.

Report anything wrong in issue #1, not just things that stop. Wrong or odd wording, text that runs past its box, a name that changes between screens, a mouth that moves on a silent line, a card that reads differently from the dialogue: all of it is worth sending. Which episode and chapter is enough, and a photo beats a description. Your save is never at risk; the text is read-only data, so a hang costs you the chapter and nothing else.

Don't check first to see whether I already know. A duplicate costs me nothing and a report somebody talked themselves out of costs me a bug.

This repository contains no game data, with one exception: the six close-up pictures added in 1.8.0, set out in Legal. You supply your own legally-obtained copy of the DS game, and, if you build rather than patch, your own installation of the Collection.


Already known

Context, not a filter. If you're looking at something and can't tell which side of this list it falls on, send it anyway.

  • A little of the script is still the fan translation. Capcom never localised this game officially on the DS, so where their Collection text has no counterpart here the AAI2 fan translation stays. Those lines are not wrong, they are just not Capcom's, and they can read slightly differently in tone.
  • Not every episode has been played through. Episodes 1, 3, 4 and 5 and the second half of Episode 2 have been finished by a tester (the Playtesters box above has the detail), but the first half of Episode 2 hasn't been reported finished, and a lot of optional dialogue hasn't been played anywhere. If something looks off there, please report it.
  • "Gavelle" has no accent in a couple of places. Organizer descriptions and Mind Chess spell it without the grave, because the lettering there has no accented letters. In dialogue and on the Case 4 visitor log it is Gavèlle.
  • A picture or two may still carry the fan's wording. I fixed the pictures where the fan translation's wording differed from Capcom's, but a few were too faint for me to read with confidence. If you spot one, send it.
  • On real hardware, dialogue that turns into strings of accented letters is the game's anti-piracy check. Current versions of TWiLight Menu++ and the DSpico's Pico Loader handle it for this patch, and I tested both. If you see it, update your loader or switch to one of those. I also booted test builds of 1.11.0 into the first case on a DSi (through TWiLight Menu++) and on a DSPico, and the 1.11.0 release build boots on both. The 1.11.1 and 1.11.2 release builds boot on both as well, and 1.11.2 played the Episode 1 opening movie on both. The 1.11.3 release build went further on both: past the opening movie and into play in Episode 1. Nothing deeper has been tried on hardware, and no original DS has been tried at all.

What you need

Gyakuten Kenji 2 (AAI2 Final v2) The fan-patched DS ROM. It supplies the variable-width font and the English graphics. Without it nothing renders. Needed either way
Ace Attorney Investigations Collection Only if you build. The PC build, tested on Steam
xdelta3, or DeltaPatcher Only if you patch
Python 3.9+ Only if building from source. pip install UnityPy Pillow numpy

Usage

Two ways in, ending at the same ROM, and --verify confirms it either way.

Apply the patch if you have the fan ROM and want it done in seconds:

xdelta3 -d -s "Gyakuten Kenji 2 (AAI2 Final v2).nds" "Prosecutors-Path-1.11.3-fan-base.xdelta" "GK2 (Official English, DS port).nds"

On Windows, DeltaPatcher asks for the same two files and writes the same output. The source has to be the AAI2 Final v2 ROM exactly (sha256 08e1f7af..., 45,165,392 bytes). Anything else either fails to decode or boots to a black screen. Check the result:

gk2port-windows-x64.exe --verify "GK2 (Official English, DS port).nds"

A correct output ROM is 50,548,652 bytes, sha256 f75be832ad759472f909f4e9f9881cb02ef441cf653556178140cca471e16ede. The patch itself is 5,547,552 bytes, sha256 d55a457aa2c91e9b2b391d3070db9abb9e8c5a441e69cf6c7dc2d1f76452917e. The bundled GK2-v1.11.3.zip is 5,705,291 bytes, sha256 0f2bb32b5513d2ae0123969c204c68b4193d57d15e3b9827cda99ecd8d69e012.

Or build it yourself from your own copy of the Collection, if you'd rather the localization came out of your files than out of one someone uploaded. Full steps are in DETAILS.md, along with how coverage is counted, how the names and episode titles are redrawn, what doesn't port and why, and the tool inventory.

Credits

JPScaravino has done the most playtesting of any tester so far, finishing Episodes 1, 3, 4 and 5 and the second half of Episode 2, across several builds. His save state found the Case 4 crash that 1.11.0 fixes.

Built on the AAI2 fan translation team's Gyakuten Kenji 2: AAI2 Final v2, the English translation that stood alone for over a decade.

Their patch is the base this one applies to. Its variable-width font engine renders the English, and the interface, the menus and the graphics this project doesn't redraw are still theirs. Without it there's nothing to inject into.

On top of that, this project replaces their script with Capcom's official one and does the work that swap takes: reverse-engineering the game's script commands so Capcom's text runs on the DS engine, redrawing the lettered artwork (nameplates, evidence and Logic cards, choice buttons, banners, close-up documents, room maps, the title logo, the cake-show logo) from fonts harvested at build time, bringing in Capcom's voiced shouts, restoring the DS's own staging, and fixing the freezes and crashes a different script exposes.

If you haven't played their translation, it's well worth it. This is a different thing, not a better one: it's for people who want Capcom's official script on the DS.

Gyakuten Kenji 2 and the Ace Attorney Investigations Collection are © Capcom.

How this was built

RELEASE_NOTES.md has a short entry for every version, newest first. TESTING.md says what has actually been played and what has not, and BUILD_NOTES.md is the full technical record behind both.

Nothing here asks to be taken on trust. Almost every figure on this page is reproducible by running the tools on your own files. tools/coverage.py computes the coverage table, and --verify hashes a finished build against the release's published reference, so a ROM can be trusted without trusting whoever built it. The two exceptions are the message box counts in TESTING.md, the ~41,700 total and the ~5,100 run by script. Those came from counts made during the work and no shipped tool reproduces them, which is why they carry a tilde. Read the coverage figure as measured and the box figures as estimates.

The 18 audits in audits/ guard the structural failure classes, and every one but the typography shape check is tested against a deliberately corrupted input. An audit that has never failed hasn't been tested, it's only been run.

The tooling was written with LLM assistance: Claude, driven through Claude Code, over a series of sessions. That's stated plainly rather than buried. What ships is Capcom's own script, art and recordings plus the fan team's assets; nothing in the ROM is generated text. The code is about 34,000 lines across 94 modules, plus 19 audit scripts (the 18 audits and the harness that tests them), MIT licensed, and it ships as source precisely so you don't have to take any of that on faith.

Every hang but one was found by playing the game, not by an offline check (the Case 4 freeze fixed in 1.10.0 was found by searching for the cause of the Case 2 one). Three examples, and what they say about the guards, are in DETAILS.md.

So treat the guards as a record of what has actually gone wrong rather than proof that nothing else will, and treat the code as reviewable rather than authoritative. That's also why issue #1 asks for players rather than for approval.

Legal

This repository distributes no copyrighted material, with one exception: no ROM, no script, no extracted text. It's a set of tools that operate on files you already own.

The exception, since 1.8.0, is tools/cg_art_final/: six 256x192 close-up pictures whose lettering is drawn into the artwork, prepared from Capcom's Collection art and the fan patch's pictures with the official names on them. They ship as finished files because composing them at build time gave worse results. If that's a line you'd rather this project hadn't crossed, the 1.7.0 tag is the last one before it.

Building requires your own legally-obtained copy of both games. Don't redistribute the output: it contains Capcom's copyrighted localization, and since 1.5.0 their logo art, two of their fonts and twenty of their audio clips, since 1.11.1 their cake-show logo and two evidence pictures, and since 1.11.2 more of their picture lettering and a whole map picture, alongside the fan translation's assets.

The releases also carry an .xdelta from the fan ROM to the built one, and that delta is Capcom's script, which is why it runs to about 5.5 MB. The trade is written down rather than left implied, in DETAILS.md.

If you want Capcom's translation, buy the Collection. It's very good, and it's the reason this project can exist at all.

License

MIT for the tools. See LICENSE. That covers the code only; the game data it operates on isn't mine to license, and none of it is distributed here apart from the six pictures noted above. See NOTICE for the exact scope.

About

Play Gyakuten Kenji 2 on the Nintendo DS with Capcom's official English localization: script, title logo, episode titles, Logic keyword cards and voice clips. Tools only, no game data.

Topics

Resources

Stars

2 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages