April Showers – Galaxy Flowers
April 1st, 2009
Because April 1st jokes are for chumps.
And another year closes on the domain as it sort of approaches its arbitrarily stated birthday. It’s been fun. I hope it continues to be. That’s enough of a birthday speech for me. April 1st jokes are pretty much always terrible anyway, and since there are three new shows airing this April 1st, I really don’t think I have the patience to deal with that. Consider this an early announcement through my days off that Wednesday will be as normal as planned I suppose.
Sadly, unlike last year, I don’t have anything particularly interesting to report as the site reaches another arbitrary and contrived milestone of existence.
However, it’s not from a lack of trying. The Galaxy Angel theme is no accident. I really have seriously been trying to get a translation project going for this for a couple months now, but unlike BMW, there wasn’t some cheesy ready made tool for decompression so I’ve been reliant on the goodwill of others for tools to get at it, and frankly, my faith in humanity has taken a bit of a hit here. Translation is actually not that big of a deal here. GA’s a pretty short game, and unlike BMW, doesn’t have the fun of being some kind of crazy corrupted secondhand fanwork. The script files are also in a pretty easily editable form of what appears to be a Pascal derivitive (although I don’t even know how or why I think it looks like Pascal).
Then again, after going through the first chapter, I’ve been completely underwhelmed by what has already been translated by the western world, especially given how westernized Galaxy Angel already is. Half the status screens are in English, and every character’s name came romanized from the very start. Then again, they did decide to retcon Elsior into Elle Ciel after the first series had finished, so Broccoli probably can’t be trusted with English anyway.
Galaxy Angel OP
Despite various protestations from assorted people I’ve talked to that "oh, hacking this would be easy and shouldn’t take more than like, 30 minutes," apparently the game’s not worth those 30 minutes of their time and have completely buggered off, leaving me with a tool about 1/3rd finished in some kind of horrible fetus-like disgusting spawned state. Here’s the code I’ve been left along with somebody else’s (who asked to remain anonymous) analysis of what needs to be done next.
http://bmw.seiha.org/ga_unpack.c
http://bmw.seiha.org/z0_unpack.c
http://bmw.seiha.org/dathelpmaybe.log
I went ahead and threw together a Windows binary as well of the code as well.
http://bmw.seiha.org/unpackers.rar
The GA one takes in the pak file and spits out the first level compressed files (ie “ga_unpack.exe gadat001.pak”). The z0 one takes in an extracted file and the desired output file and decodes the zlib compression (ie “z0_unpack.exe 879172097.z0 879172097.scn”). It needs zlib.dll in the same folder. The top level extractor incorrectly decompiles segmented files right now, but those shouldn’t need to be touched anyway.
Not everything is zlib encrypted. None of the media files are for example. You can open a file in a text editor to check. If it has a z0 in the header, then it needs to be run through the second decompressor.
001 is ADV scripts
002 is SLG scripts and what look like other graphical descriptors
010 is BGM (.ogg)
011 is voices (.wav)
012 is SFX (.wav)
020 is graphical skins, effects, (both bmp) and what appear to be image definition files (.rat IIRC)
030 appears to be ADV images
031 appears to be character graphics
032 appears to be system graphics (can’t figure out how to decode proper image format for any of these (they’re .t32, whatever the hell that means))
100+ are movie files
I have absolutely no idea what 41/42 are. Removing them seems to have absolutely no effect on the game. Maybe some kind of extra options or exception control and whatnot?
Galaxy Angel PC Gameplay
Surprisingly, the movie files are the least complicated part of the entire mess. They’re simple mpgs (mpg-pes if I recall correctly) with an inverted header. Open them in your favorite hex editor of choice, invert the first 64 or so, change the extension, and you’re good to go. Reversing that requires even less.
What’s still lacking, at absolute minimum, is any way to reincorporate the files back into a workable pack, and figuring out the T32 graphic format. Dat001 and 032 have been uploaded here if you want to poke around at them to try to figure things out. You’ll have to track down the rest of things yourself if you want to try your hand at analyzing how the game actually works. Sorry, no piracy here, nope nope nope.
http://bmw.seiha.org/exampledats.rar
It would be fun to keep going with the project, as the series really is quite a lot of good natured fun with quasi-Homeworld action thrown in for good measure, but as of right now, it’s sort of dead in the water since despite the supposed ease of making them, the tools just don’t exist. I’ve shared everything that I’ve got here now though (aside from the once-through translation of the chapter 1 script), so hopefully somebody with a little more coding experience than I will take interest in it and give the project the kickstart it badly needs, or hell, just seize it entirely and finish it in secret if they really wanted.
Until then, Tact and the Angels will just languish in space, mostly sad and forgotten. Poor poor Angels. Le sigh…
Posted in Galaxy Angel | 20 Comments »
Ooh, I’m looking forward to this. I’ve been starving for a translation of these games forever, ever since I first stumbled onto one of Mint’s event movies on Youtube and subsequently found out about the anime.
Also, happy foolish birthday, Tenka Seiha!