Aria here, and you read that right! Mere days after finishing my 2nd playthrough and finishing the voice lines and in-dungeon lines, JS dropped the rest of the CCC main script translations in one fell swoop!
We’ve updated the checkmark on the progress website, but we haven’t finalized a way to track the editing phase yet. Please give us some time to find out how to best present this next leg of work, and we’ll let you know when we have something!
For now though…
Though before rest, we’ve got one important question you can answer in the comments:
We have a short update for you today since we’ve mostly been pushing forward in translation progress rather than anything flashy. Though speaking of flashy, Kotcrab has set up a progress tracking page where you can see an estimate of our project updated in real time! You can view that page here –
In terms of translations, we have some updates here:
– Chapter 6 has been fully translated!
– In dungeon translations are now underway
– Over 530 audio files have subtitles now (including misc areas of the game like in Kotomine’s shop, My Room, and the Secret Garden)
– Misc bug fixes encountered in playtesting
As always, thank you for your patience as we push the translated line count higher and higher!
(Disclaimer: please don’t be liberated from your money.)
Hello, Aria here! Hope everyone is staying warm and opening hundreds of loot boxes in FGO (wait, did we miss Christmas? Pretend it’s still Christmas! Padoru!). Not to distract you from the necessary grinding, but our Fate/Extra Perfect Patch is here, which includes battle dialogue, ruby text, berserkers going berserk, and more! This patch was a long time coming, so I thought I’d talk about the battle dialogue process a bit!
When I first joined up with the project, I had never actually finished Fate/Extra before. I played on PSP when it came out and rage quit a couple rounds in after dying instantly to some mobs. So, my first task was to play through the game and subtitle the battle lines along the way. All the character voice lines are labeled like “ner_1700” without much additional context, which made things a little tricky. This includes non-battle dialogue as well, which we don’t want to translate. Thankfully, Kotcrab set up a debug message that appears on the bottom of the screen that displays the name of the currently playing file.
(You won’t see that message in the bottom left, but it made my life much easier~)
With that, I was able to figure out the general number range of what’s battle dialogue and what’s story dialogue. I started by translating as many Nero battle dialogue lines as I could, then continued playing the game. From there, I’d beat a boss, then translate their lines. All was fairly smooth…
…until this fucking guy.
Now remember, I’m doing all the subtitles with audio only. I just remember sitting in the library on my laptop, shaking my head in utter confusion as to what the fuck this guy was saying. His dialogue blends several religions into one to make his “true” religion, also known as a nightmare to my ears. I was in such a desperate state of despair that I just googled what I could make out and prayed. What answered my prayers…
…was a devote follower who created a Twitter bot that regurgitates his lines every hour or so. I managed to find the line in question typed out! It was a godsend, until the next line didn’t exist. But that one led me to a Japanese wiki with every line in the game typed out! (Well, it turned out to be more like 70%, but it was still an amazing blessing). Using that Japanese wiki, I was able to recreate it on my own local wiki and organize all my notes:
Each line had context written out as well, and with its help, I was able to match line numbers to specific actions, such as break attacks, master healing servant reactions, and more! With this new tool, I was able to check my previous translations, then advance much more smoothly into the horizon, with the crazy fanatic Gatou now defeated.
Now until that point, I was using our editor to translate without seeing anything in the game. Just before Gawain, everything was set up to add my translations into a patch. I pre-translated all of Gawain’s lines, then did his battle for the first time. It was the most intense battle in the whole game, improved immensely by having the battle subs working as he slammed his Noble Phantasm into me two turns in a row. I knew it was coming too because every enemy Servant has a “tell” line that announces their intention to use their Noble Phantasm that turn (it’s always line #1752 for anyone curious, with #1753 being a “you survived!?” follow-up). I had just translated Gawain’s, so I knew exactly what to look out for:
I recorded the battle as an early test to show the rest of the team the subs. I should have died in that fight with how sloppy I played, but damn if I didn’t win first try white knuckling the entire time. You can watch that terrible test video here (Keep in mind that since it was an early demo, the lines are unedited with some technical issues present that are now fixed. Timestamp is when things start going crazy – https://youtu.be/jomlQ6cx9uw?t=238 .) There’s no mic audio, but you can feel my spirit break when Leo announces a second Noble Phantasm. It just gets worse from there.
During the cutscenes before that battle, we also noticed an issue with battle subtitles playing during the pre-combat smack talk conversation. Turns out people say battle lines outside of combat for dramatic effect! Thankfully, Kotcrab had no issue hunting down a variable that would let us know if we were currently in battle. With that, subs would only play if we were in combat. BUT we also subtitled level-up lines post battle and those aren’t in battle! We settled on a set of flags in the timing, with one of the flags meaning “play only in battle” if true. Whew~
After that, the game was defeated, Holy Grail obtained! No strings attached, they just gave me the Grail and wished me on my way~ Next steps were to translate the rest of Nero’s lines plus Archer, Tamamo, and the Rin route servants. Sprinkle on some sound effect translations as well (those ended up being stored separately as we learned, requiring some more code tweaks to get just right), then it was time for Archer!
Wait that’s not right.
There we go, that sounds more correct. At this point, I’m mostly getting to just enjoy the game, while spotting a missing line now and then. Most of these lines are battle victory lines, separated into “servant doesn’t give two shits about you” (first half of the game) and “servant will die for you” (later half of the game). When I got to Alice’s fight on Week 3, I asked if colored subtitles were possible.
ItsumoKnight: “What’s so hard about it, it’s just Alice and Alice”
Turns out the color codes should just work since the subtitles use similar code to the game!
…okay not quite. It initially caused some interesting text glitches which made the following line even more creepy than before. With some quick debugging by Kotcrab, we got everything working:
Along that same line, we wondered if we could do the Berserker scream, which ended up being easier than expected. There are 4 possible Berserker noise characters, so I wrote a quick python script to randomize different combinations at different lengths, then I matched them to lines that seemed to fit and added “!” marks as appropriate.
The last major improvement we added was adding ruby text support. Kotcrab went into detail about this in an earlier post, but essentially it lets us add the small subtitle above certain skill names that CCC uses.
In this case, it adds “Rho Aias” above the skill name for that extra touch.
With Extra moving into an editing and playtesting phase, I was free to move onto CCC. It’s hard to give actual progress numbers with the battle dialog since there’s a lot of non-battle dialogue mixed in, but I’ve translated the lion’s share of Nero, Archer, and Gilgamesh’s dialogue. Once I finish with Tamamo’s (nearly there), I can play through CCC and translate missing lines as they come up. This will include the in-dungeon subtitles as well, with context! Sadly, the Japanese wiki for CCC is much more incomplete, so most of the lines will be by ear, but on the other hand, the line numbers have the same meaning as Extra! So with that, I’ll know when a line is a counterattack remark, an “I just died” line, or a “chiding the player for playing terribly” line.
Lastly, thank you for all your patience! This has been a tough year for all of us, and I hope that you can enjoy the work we put into vanilla Extra while you wait for CCC!
PS: I suppose you want to download this patch, huh? F-fine, it’s not like I want you to play it or anything!
Now with Mac/Unix patching options and various Aksys translation fixes mentioned by the community!
(Editor’s note: Fate/Extra is very special to me. It was my exposure to Fate, and without it, I wouldn’t have become the fan I am today. It also lead to me neglecting a blind date, and in retrospect, the game was the better choice, but that’s a story for another time.
If this is your first go at F/E, I hope you enjoy it as much as I did and still do. Especially the amazing Shinji Hosoe OST. -cj)
Kotcrab has been kind enough to provide an update. Have an enjoy! Stay cool, and stay safe. – cj
Kotcrab here with this month’s update to tell you more about the tools we use for this project! Let’s start with the script editor. We’ve come a long way with this one. At the beginning, there was a big spreadsheet with all the text from the game.
From there, we moved to a simple application with three text fields: Japanese, English and notes. We wanted to add more functionality to the editor, but since we didn’t have the source code for it, JS created the new app you can see in the screenshot below.
It’s packed with features, but most notably it allows us to see a live preview of how the text will look in the game as you type. You can play audio and see the image for the character speaking the line. When editing subtitles, we can adjust the timings and simulate exactly how it will look in game.
This worked great assuming that only a single person was working on the script at a time. With more people joining the project, it wasn’t sustainable as merging two versions of the script was a time consuming process. The next step was to create a central database for the editor. Once we finished that feature, multiple people could work on the same script in real time. We’re able to track change history for each entry, suggest changes, and mark completed entries or ones requiring more attention.
We also designed tools to extract and repackage the game. The tools understand how to parse the game files and make all the necessary changes. They also assemble and apply code patches.
Both Extra and CCC make extensive use of archives. First you have the game ISO file which contains the main archive. This archive contains smaller PAK archives, which can either be the actual game files or more archives. For example, a texture bank file will contain multiple textures. Due to various reasons, a single file can be duplicated across many PAK archives and a PAK archive can be repeated multiple times in the main archive. Our tools fully automate the management of these archives webs. After changing a file or adding a translation, the tool figures out what needs to be changed and replicates the changes to the proper places.
Finally we have the patcher tool. Its main purpose is to take the patch file and input ISO then create a patched ISO. It’s a fairly recent addition to the toolkit, but it had to be made. At first, we used xdelta, but this produced huge patches due to how the games are packed. The first Extra mod was over 500 MBs and the CCC patch was estimated to be even bigger. With the new tool, the patch for Extra is just 11 MBs. Thanks to it, we can also provide an option for selecting which Meltrylis name to use.
To sum up, a lot of custom stuff was written for this patch. Some of it is already finding use in other projects. Hopefully we’ll be able to reuse more and more of these tools going forward.
Now for some progress updates~
The initial translation pass for the Extra subtitles is finished. It adds almost 800 subtitles for the in-battle dialog. Of course, this patch also includes all the changes from the first mod.
(don’t worry, this file is automatically generated)
Thanks to the help from our image editors, we have finished and tested all of the texture edits for CCC. This is 436 edited images. The last ones were the textures used in the prologue.
The CCC script translation efforts are going smoothly. According to our database stats, we have over 1000 edits per month on average to the main script. Let’s take a closer look:
Tools (extraction, insertion)
DAT (the main script)
5 out of 7 chapters done
Not started yet
Finally, it’s likely we will post smaller updates on our Discord. Last month, I shared updates on the two technical issues; check the pinned messages!
And beware the gatcha! Unless it’s for Ishtar, then it’s okay. Maybe.
“Some people who don’t know about your Twitter might think all your projects are dead, though.”
“any chance of a blog post on how the EP translation is going along?”
“Is it alright to ask how the Devil Children translation is going though? (Also good luck with CCC)”
“e p p s p w h e n (actually did debisama happen? I’m out of the loop. I assume not yet)”
“Hi cj, is fate extra CCC english patch coming out?”
“Quick Question, is the Eternal Punishment project beeing cancelled or do you continue it? There has not been any update in quite a while”
You. get. the. idea.
So first things first, since I could fill the grand canyon with the requests for this and give E.T. a run for his money.
Yes, I know.
Fate/Extra CCC (PSP)
Unchanged. Not cancelled. Full stop. Do not pass go. Do not cut off Gilgamesh’s arm.
Actually, totally do that.
THIS SCRIPT IS MASSIVE AND WILL LIKELY TAKE MANY MORE WEEKS IF NOT MONTHS TO PROPERLY ORGANIZE AND FORMAT. Once this hurdle is passed, you’ll be the first to know. Give or take.
Persona 2: Eternal Punishment (PSP)
Moving along nicely! Making solid progress with the remainder of the editing. I can’t say a 2017 release is a given, but it’s damn possible, at least based on the text progress.
Devil Summoner (PSP)
Well, I’m not involved in this, but as an intermediary for Esper, I can assure you it’s happening.
Devil Children: Red & Black Book (PS1)
I am involved in this! Well, as a tester and the editor. And EsperKnight is too. I can’t wait, and you best believe as a proud member of the Cult of Mirai, I will not let this go unreleased.
Sakura Wars (PC)
Translation is maybe 40% done. Stay tuned.
Shadowrun (Sega CD)
Just kidding. I have to keep lighting a fire under Esper for this one. It’s a bitch, let’s put it that way. But we’ll get there.
That’s all I got for now, hit me up on twitter or something if you’d like to know more, but probably not much to share that isn’t here already, unless you want excerpts of Shikigami lore or EP PSP’s script or some junk.
Organizational phases. @ItsumoKnight is currently laying out the script by chapter to match up with our translation. When you have a project this massive, translating things out of context just won’t do.
I’d say 20% organized. We have translation work going concurrently. Hard to explain. It’s one of those things that when I have something tangible to show, I will. But it is still a thing. Just don’t expect any reliable timeframe just yet.
On the bright side, I did retranslate the OPs to get my feet wet, so have an enjoy. As with my usual song lyric translations, I did my best to match the translation syllables to the JP pronunciation. So sing along! OR DIE. ❤
Just got a new scenario update. It’s sitting at somewhere between 40-50% complete, and we have a new organizational method, so expect things to progress faster from here.
You’re not the boss of me.
Persona 2: Eternal Punishment
Waiting on more script extractions. Shop text is largely finished. I’d say it’s at 25%.
In need of a new translator, also mired in bugs. Still on hold. NOT CANCELLED. NEVER. MARK MY WORDS. (Put it in Red, Beato.)
The Silver Case
Officially cancelled. In case you haven’t heard, Playism is officially localizing it, in conjunction with Suda51 himself.
After long months of planning, we’re finally ready to reveal our trump card. CCC, Sakura Wars, Ougon Musou, Shikigami, and Shadowrun were all mere tests to see if we could pull this off.
Now I know we can. Iwakura Productions proudly presents, in the grand tradition of MOBILE LIGHT FORCE 2 and CHERRY TREE HIGH COMEDY CLUB(tm):
I’m sure you’ve felt the same way I have. Fate/Stay Night, with its convoluted focus on mythology, romantic drama, and outdated Japanese traditions is far too obtuse for an American audience, so we are proud to finally give Fate/Stay Night the translation it DESERVES!
No longer set in the boring town of Fuyuki City. Oh no. Fate/Stay Night Hyper Retranslation Extreme Justice Remix(FSN HREJR for short) will now take place in the sprawling suburban land of FREDRICKSBURG.
Each and every character has been given a new American name, in keeping with the time-honored tradition of classic localization. In addition to their new names, fans can expect a totally relocated plot.Every story element, weapon, and reference will be adjusted to match. Have no idea who Cu Chulainn is? Lost in Arthurian mythology? Don’t give a flying hell about silly Kendo swordplay? This is the translation for you!
We’ll be proud to unveil more about this translaton as the weeks go on. Nasu has already given his approval, and we plan on a full release for a wide variety of systems. Included but not limited to PS Vita, Dreamcast, the Saturn, the Amiga, and the Game Gear.
Stay tuned, space cats. Who needs CCC, anyway? This will put Fate on the MAP!