
"This is what I think of your copyright" - translating a previously unreleased game with AI
As an experiment I set my agent on translating an old Sega Saturn (1995) visual novel.
Result: https://imgur.com/a/c2gY51m#gpG94k0. The game is Nightruth Maria. It's unfortunately kinda mid. It only ever came out in Japan.
Total cost? 8 hours of my time and 3 dollars 40 cents on Deepseek API.
The short of it is to translate a rom you need 5 steps:
- Unpack the data from the iso
- Find where the text is located and how it's encoded into the game, extract it.
- Translate the text (and images if you need to - this one didn't)
- Prepare a patch that will inject your translated text back into the rom. This usually involves shifting data around so that you have enough bytes free to fit longer text.
- Run the patch, package new iso, test game.
AI did all 5 of those for me. All I did was orchestrate it, i.e. provide the vision of what I wanted, and babysit it so it didn't get too off-base.
It managed the first and last steps perfectly well - seriously, Chinese models are pretty good at reverse-engineering. It's a lot of trial and error, because even if you've located the text and it's in there in plain sight, you still need to find a way to extract it that will let you inject it back into the rom later without bricking it. AI also does trial and error, it just does it faster and without losing progress.
The problem was step 3. We got there eventually but it took the longest amount of time. At first deepseek started hallucinating an entire portion of the text. Then it simply forgot to translate some parts or just didn't want to. Finally it had some issues injecting the new text into the game and indicated some non-existing addresses, so some text was originally missing from the patched rom. It was a huge mess.
I had made a vision document to describe how I wanted the translation to sound, and I think on that note it did really well though. In the screenshot, you can see the text is a bit formal, it says "I shifted my gaze to my watch" and not "I looked down at my watch", but this is how the writers originally wrote it in. So we kept that. However, I wanted a localization in all other aspects. Just a personal preference.
For this game we were lucky that the font file contained Latin characters, otherwise we would have had to hack them in somehow. We were also lucky that text was very easy to find (being a VN) and was sequential. Other games are not so easy to reverse-engineer. Menus are already in english in the original, but otherwise I would just need my agent to extract the pictures somehow, and I tested this with Gemini - it can edit the text on them just fine while keeping the style consistent. Yes, you could use Photoshop if you have it, but it's a bit more work to keep the background correct when you edit the content of the picture. AI did a really good job, and you could even pipe them automatically to your model if there's hundreds of them.
I've seen both professional and amateur translation work that left in tons of typos too in my time, and missing strings. In some cases they didn't even encode their text back in properly and it doesn't display correctly.
Now for the first time in its 30 years history, Nightruth Maria has received an English translation. I'm just sitting on it right now though because I'm not sure it's ready to publish and I wouldn't even know where to put it. And like I said I'm not sure the game is super interesting in the first place.
But if you've wanted to FOSS some software, or translate games of your own... sic AI on it. This is what I think of copyright.