[PS1]Ace Combat 3 Electrosphere: text replacement

Started by DragonSpikeXIII, January 31, 2014, 01:51:57 PM

Previous topic - Next topic


Alright, finally managed to get a perfect match, boy is the 0015 touchy, had to be identical down to the tiniest detail!

Only problem now is the game still won't load the mission, at this point I'm beginning to suspect re-compressing it int a ULZ may be necessary.

EDIT: thanks for the updated programs, every little bit of streamlining helps!


ACE COMBAT 3 electrosphere
International Edition

Project Status & Roadmap

Alright, summer's over and we're officially back on duty.

2014 Active team roster

Game data miner: esperknight
Software tools engineer: Dashman
Additional programming support: me
Spot translator: pmt7ar
Editing: DSXIII
Webmaster/PR: Iceman-UK

I'm currently fixing and polishing the translations for Disc 1 and generally consolidating what we have achieved so far. We'll be entering internal testing later this year so we can be sure that the game is happy with our text image replacements.

For now we remain stuck with on Disc 1 and, as posted above, initial tests for in-game chatter text replacement were unsuccessful.

me's way of translating these segments works at a single mission level but essentially breaks the game as a whole. This method can at least be used to prepare a small demo release but beyond that we have to play by the game's rules.

Other than that we still need to translate the game's Search files but our current team lacks a translator capable of tackling this task, which is rendered even harder due to the lack of a text-based transcript of these text images. A Help Wanted ad has been posted but no luck. Due to how complicated the story can get later on, some of these files could prove useful in translating the mission themselves and help maintain accuracy, which is paramount.

While our initial translation script is worlds apart from what was previously available, there are a some stretches of dialogue here and there that are nigh incomprehensible (and I still haven't gotten to Disc 2 yet) and require someone with a good level of Japanese to fix for release. Additionally, my own edits still require actual checks, due to how radical some changes from script to game are.

Here's a short list of goals:

- translate in-game "Search" files

- implement a soft-subtitle emulator plug-in for unsubbed dialogue

- translate menu screens where necessary i.e. armory

- FIX: change M29 "Betrayal" BGM from "Mind Flow" to "The Execution"

- find out how the credits scroll is stored and translate it

- FIX: change helicopter HUD marker from "AH-66B" to "RAH-66B" (me has shown these can be changed)

- title screen: insert "International Edition" sub-title (still haven't found the title screen files)

Still hoping to make some new breakthroughs this year. The next big thing would be translating Disc 2 after 1, is done but there's no news yet and after all that our small team has achieved already (especially our translators and coders) considering the scope and difficulty of this project, it's very possible that we might run into a wall or some of us might burnout or even lose interest. Which are all completely understandable as this is done on free time only.

Me and Iceman-UK agree that should we find ourselves unable to fully translate AC3E then we'll be releasing all we managed to translate next year on the game's 16th anniversary, or 15th going by the US version.


This is such an awesome project. Just wanted to show my support  :thumbsup:
If you ever need testers drop me a line.


It's too bad hearing the in-game chatter didn't work in the end, what I got to see looked pretty nice. I want to believe me's method is a couple of steps from being fully functional, but I didn't understand much of her method the first time I read about it so I can't really know. In any case, I wouldn't give up on her approach, maybe there's just a couple of pointer tables that need to be touched, or the dimensions of some textures used don't match what's expected. Finding out what's making the game explode could give the solution to this.

Keep up the great work and may those walls crumble when you run into them :)


@Dashman: me's way, in its current state, works only for a certain type of mission:

1) There has to absolutely be a Briefing before the mission begins, this is the entire foundation of me's way.

2) Though untested, I think the Briefing has to be a single-layered TIM. If I understood her correctly, the order in which the lines are shown is: the Briefing TIM (12 lines max per layer), then it jumps over to the other lines for mission text (25 lines max per layer). I could try testing this with 2 layers, meaning layer 1 with briefing on the left side and mission text on the left, and put a layer 2 with briefing again on and mission text underneath but I'm not sure if it'd work

3) After I was done making the last showcase video, I had to revert the changes I'd made to Mission 05 becasue weird things were happening. Like during my last, and unsuccessful, tests on Mission 01, the wingmen weren't speaking, their mission dialogue wasn't even being loaded. Moreover, during after-mission Replays, the BGM was completely wrong and I think I even heard Keith speaking during M01, not to mention the inability to play via Mission Simulator.

I was going to get into detail about how to replace mission text this way but thanks to me's latest inputs it is safe for me to say that we can leave that behind us as yet another stepping stone, and an important one at that. Our work has been completely clean until now, what we're lacking right now are two things: an ULZ repacker for the mission text, as pointed out by me (I think we had talked about this earlier this year) and an AC3 toolkit for Disc 2.

@me: thank you for yet another appearance. I'm sad to hear about your own translation project, there are echoes of that lack of interest in our own project too.

On the other hand, I'm really happy to hear about your own ULZ repacking tests. Does that mean you actually managed to translate, say, Mission 01's mission text/dialogue? If so, then my theory was correct, that the game requires an ulz in order to display the mission text in-game.

Keep us posted, this could be our next major milestone.

Here are her latest messages:

October 10

"You could edit the HUD green text by editing the 0000/0003 tim file. It is a tim file with 4 palettes, the 4th pallete is like this :


The problem is, you could only change the character without changing the number of "word". For example changing R505U to R525K is possible (and easy). But to add even a letter is troublesome for me, because ideally I need to tamper "area allocation" thingy in the executable or dll alike. So I propose another solution, rather than considering AH66B is 5 letters and RAH66B is 6 letters, consider the area of the text. I mean, you could fit RAH66B text into AH66B textspace of course with smaller font.

Frustatingly, the resolution of the text itself is already low. Shrinking the font size will pixelate the text, I'm afraid.


How could I achieve the result below?


Because that was done with the infamous "emulator mode", that is, I change a pointer value using nopsx debugger, so instead pointing Erich, it was pointing Keith. I said infamous because even it's easy, it isn't permanent. Reload the mission and it'll revert back, unless the opcodes/instruction had been altered/patched .

Anyway I can extract any tim palette with PSicture, but I'm not yet able to put it back (replace 4th palette of 0000/0003.tim).

"Only problem now is the game still won't load the mission, at this point I'm beginning to suspect re-compressing it int a ULZ may be necessary."

Isn't there ulz repacker already? It's nearly 2 month since my last visit to your thread, and I can't find any ulz repacker. Honestly, I even abandon my own translation project (into my non-english language) around July, because most of my friends aren't interested in this wargame genre, some even said the plot is too complex. These reasons fatally reduce my interest enough :p

"Keep up the great work and may those walls crumble when you run into them :)"

Most important is, the person who create such wall is to blame. Yep, that's me. I didn't know yet that 0015.ulz containing bin file that could be split/extracted furthermore. So which is the problem, the method of creating 0015.bin is problematic, or the ulz recompressor didn't yet exist?"

October 11
"Hmm, it seemed no speedy reply for me again.. Guessing the ulz compressor doesn't yet exist, I just start making it yesterday and it's fun enough to kill my boredom (tons of lab reports, hmph). Turns out that Dashman's bin splitter/merger is flawless, and my fake ulz compressor worked too. Just put the 0015.bin together with the compiled executable, and you will get a 0015.ulz. Now, please build with it, tested by me on M01, M02, M03. I wonder if we break the 700 MB CD size limit? whatever, here is the source :


(The real download button is above the "tip : affiliate" text, and mind you it still open a pop up which you can close/ignore. In my case, the pop up is fake virus alert, annoying.)

About the HUD thing, I made mistake when saying it is the 0003.tim, I mean the file inside 0000/0003 is the 0001.tim, browse to the 4th palette using PSicture, but, hi ! it's me again :]"

October 11
"Everything went fine, and our translation too.. I had tested that after modifying 0015.bin's content, and repacking it back into ulz, everything went smoothly, without crash. Say goodbye to my crankish vram workaround tee-hee..

It seems midnight on your time, isn't it? Thank you for your reply, and have a nice night (or rest if you aren't nocturnal being). I could understand you had lots of work, and I just joking about the quasi insta-reply that had usually done by you ;]"

October 12, 2014, 04:29:32 AM - (Auto Merged - Double Posts are not allowed before 7 days.)

October 12
"After I was done making the last showcase video, I had to revert the changes I'd made to Mission 05 becasue weird things were happening. Like during my last, and unsuccessful, tests on Mission 01, the wingmen weren't speaking, their mission dialogue wasn't even being loaded. Moreover, during after-mission Replays, the BGM was completely wrong and I think I even heard Keith speaking during M01, not to mention the inability to play via Mission Simulator."

I would be glad if you provide step by step to replicate such anomaly. Dashman said the thing that make the game explode could give solution, because I agree this kind of explosion reveal how things work. Unfortunately, t'was all fine when I tried the crankish vram overload method, I mean, no weird thing, even in mission simulator (everything went fine except the greenbox, which just left blank).

Maybe this gives us a clue to accomplish FIX: change M29 "Betrayal" BGM from "Mind Flow" to "The Execution"

I don't know how much this can be of help, but here is how I got those glitches. First I followed the steps as described by me, which was to replace the original 0015.ulz with the the one prepared by me. Then I went and made a double-width TIM with help of Dashman's AC3 tools, TIMViewer and IrfanView. (edit: and usenti)

This was for Mission 05 Broken Truce which would work just fine. Then I left it as it was and went back to editing/testing the other missions as usual. Then weird things started to happen here and there.

Sometimes there'd be no dialogue at all loaded during M01, sometimes it would load but it'd be the normal mission text with Keith's voice (!), and the replay would have a BGM from one of Keith's mission later on, which is really not the way it's suposed to be. I reverted the changes soon after as I thought the things done to M05 were affecting the rest of the game.

I'm pretty sure I could replicate the glitches, I hadn't done all that much, just replacing one 0015 for M05.

October 12
"Finished, just test it yourself (of course with normal briefing tim file) :


here it's on mine


next time, please post something if an error has occured (i.e. bug for certain mission).

Anyway, did you notice the flash after the NAMCO startup logo? It's split second, and like this :


"By the way, did you notice how there's a "Nemo" designation in that 4th palette, even though it never appears anywhere in the game."

Now you sounded like Fabian, and aren't you happy :p, it means we are treasure hunter too, or an AC3 scholar eh?"

To whom this may concern,

after this eventful weekend the first tests for "clean" replacements of mission text have been successful.

Thanks to "me" and esper we can all expect to see the entirety of Disc 1 translated by the end of the year.

Man, this project is taking me through some highs and lows!

Bob Liu

The challenges you've faced sound very confusing but I'm glad you got passed them, great job.

Zero Dozer

Okay, it's been over two months since the last post. I'm worried, is the project still running?


Quote from: Bob Liu on October 13, 2014, 08:17:50 AM
The challenges you've faced sound very confusing but I'm glad you got passed them, great job.

Thanks, after re-reading a lot of my posts here I'm inclined to agree, I should probably learn to explain things in a more concise manner.

Quote from: Zero Dozer on December 24, 2014, 02:51:49 PM
Okay, it's been over two months since the last post. I'm worried, is the project still running?

Yes, the project is alive. The reason I haven't posted here recently is that we simply haven't had any major breakthroughs since mid-October, when me and esperknight managed to crack the in-game dialogue. I think the next big thing will be cracking Disc 2 open for editing but I have no way to know when (or if) that will happen.

Actually, I was going to post something here tomorrow and announce the release of our first patch. It's the first four missions completely in English.

Everyone interested can find it here, the post is titled "AC3E IE Playable Demonstration Release." It'll go live today at 12PM CET+1:00, which is about 6 hours from now: http://useatoday.blogspot.com/

I've also submitted the file and project page here on romhacking.net but that is probably gonna have to wait a day or two until it's up.

Zero Dozer

Wow, I actually managed to summon you XD

Well, it's good to know that four stages are already fully translated. And it's good to know that the project's still running.


Roadmap 2015

This project's priorities for this year:

Short version

- crack Disc 2 for editing;

- translate elements of the interface;

- find and modify the start screen logo to include the "International Edition" moniker;

- find and evaluate whether having a translated credits scroll is feasible.

Longer version

Right now I'm testing some of the TIMs used for the interface. Things are looking good, I think all we need  is to adjust the CLUT in the text editor.

I've looked everywhere in the uncompressed .BPB and I still haven't found the game's logo or any graphic used in the start screen. I'm beginning to suspect it may be either in a completely different container (i.e. not the BPB or SPB) or that maybe the unpacker didn't find it (possible but unlikely).

Regarding the credits scroll, I'm pretty sure it's stored as a video with embedded text (hardsubbed). The resolution must be somewhere between 240p and 128x96, while the audio is stored separately at 37800Hz. So there's no way to re-use the original photos from the ending, two possibilities are use my own pictures or make a movie-style white-on-black credits scroll. I'm still reading on how to replace PS1 videos, for now the idea I got is tat it's not a walk in the park but I hope to find a way.


Thanks Green_goblin, that's the first program that sprang to mind. I gotta give a shout out to those jPSXdec guys, they've made several improvements to their program specifically for AC3 this year, it's much appreciated.

Here's a bit of an info dump, note that this all refers to Disc 1:

- while all text and graphics are stored in the .BPB (~90MB), videos and audio are located in the .SPB (~577MB);

- every single video communication pre- or post-mission, like videomail or news broadcasts, is its own video file;

- the first video in the list built by jPSXdec is the intro after creating a new game. The video portion occupies sectors 46987-52935 while the audio occupies 46986-52930;

- all videos found by jPSXdec show this same behavior: the first audio sector is always one behind the first video sector. The audio sector however does not always end 5 sectors earlier like in the intro's case but the difference remains in the single digits;

- I have yet to locate the video file proper but the audio portion is there, repeated in two locations. The audio track for the credits scroll is located in sectors 128139-166379 and then again in 188267-207387. While the sectors in Disc 2 are different, the track is still present twice;

- I hope that by extrapolating the video sectors from the audio ones that I can somehow modify the credits scroll. Since this particular video goes undetected by the current jPSXdec version, one other possible option would be to unpack the .SPB and replace the .STR with a translated .STR;

- this second method would be closer to what we're doing with the TIMs from the .BPB but I'm lost as to how to handle the .SPB. It seems to be some sort of a zip file with an obscure extension, that probably doesn't matter anyway, and if the .BPB is anything to go by, the contents inside it have a good chance of being compressed themselves (with a custom variation of LZSS).


I think the ideal solution to translating these videos is to just find a programmer who can implement soft subs into the game. It's much more convenient than going into the video files and editing/replacing them. You might get lucky with a help wanted ad.


Why find programmer, while you need a video editing?


Quote from: scorp256 on January 04, 2015, 07:21:27 PMWhy find programmer, while you need a video editing?
You find a programmer so you don't need video editing. (So the videos look better, it's easier to edit the text, the patch is a million times smaller, etc.)
There has to be a better life.


 ;D Such "programming" would mean recoding whole video output to put subtitles above video... So, by me much more realistic to edit video  ;)


Quote from: scorp256 on January 04, 2015, 08:09:10 PM;D Such "programming" would mean recoding whole video output to put subtitles above video... So, by me much more realistic to edit video  ;)
Such programming would never do something as stupid.

You've never used a video player with soft subs? The video is shown somewhere and the text is shown somewhere else. Two different processes. You can change subtitles on the fly, move them anywhere on the screen, change their fonts, size, color, whatever. Everything without ever touching a single pixel of any single frame of any video.

EDIT: Ah, wait. I thought you said "re-encoding" instead of "re-coding". :D Sorry. I still don't know what do you mean with "more realistic to edit video"... If there's a chance to add soft subs in a game, I would never edit videos; that is: I'd rather spend hours adding soft subs than editing videos (and delivering an inferior product along the way).
There has to be a better life.


Currently editing the menu, starting from the Armory:

Width, Length, Height and Weight are one single 40x60 single-layer TIM while Armor's is 48x16. They had to be edited with GIMP, while the aircraft type ("Dogfighting") was edited business as usual with the AC3 text editor.

For comparison, the official U.S. version:

Replicating all of the text from the official U.S. version wasn't possible due to space constraints, there wasn't any extra room in the JP version's TIMs. The pictures also show how the developers of the U.S version expanded and repositioned some elements for their localization.

As ugly and lopsided as the font used for "Dogfighting" is, it shows how they were able to implement super thin fonts that were sharp and at the same time without any jaggies.

Zero Dozer

You actually managed to make that screen even better than the US version, Spike. That's awesome!


Another small update for your viewing pleasure, the mission menu as I call it:

Official U.S.

Our edits

The four buttons in this menu have also been edited through GIMP to get the best placement but the font remained the same as the main one, Antonio Bold Ultra-Condensed, unlike in the Armory where I had to look for another font that read better with fewer pixels.