HCA (from AWB/AFS2) file convert soft need help by akanerin7 at 6:56 AM EDT on June 21, 2017
currently im converting this file (BGM) for playing purposes.. can someone help me? its from Fate Grand Order (Android game). sample:https://my.pcloud.com/publink/show?code=XZJh6GZLJodIog2eqS1zfnXxAuyP0MvprMX allready tried hca2wav but no luck.
You need to identify the 16-bit encryption key to be able to decrypt the HCA files and then use that key to successfully decode the HCA to WAV using HCA Decoder.
Android unity games usually feature them somewhere within the APK.
That's definitely not the decryption key at least for that file. I just tried that and it outputs junk data.
To input the decryption key, just drag and drop it onto the .bat file it should be the fifth input (or the last input) before HCA decoder attempts to decode the file.
There should be a reference file where the audio data is also placed (in this instance it is the file "fgoaudioinfo.bytes" for Fate/Grand Order that we are interested in)
Now, checking through the level# files should reference that "fgoaudioinfo.bytes" file. If not there, then the "mainData" file for other Android games.
Looking through the level0 file reveals a 19 digit decimal number "9117927877783581796" just before the reference to "fgoaudioinfo.bytes"
Converting this from a decimal into a hexadecimal number gives you a 16-bit key which SHOULD be the decryption key. That being "7E89631892EBF464" but this key does not seem to work on the HCA you provided so I am not sure.
Maybe the game downloads additional data and the files in the .awb/.acb files inside the APK are merely place holders?
no.. it doesn't include additional decryption file only game data (as i decompile/looking on whole data in emulatr).. still not understand it very well but hey have a similliar pattern for all files (mostly).. i guest its have same key and still searching for it.. (i hate to admit they use some kind encryption too on sprites..)
@akanerin7 - For vgmstream/foobar you add a .hcakey file that contains just the key. Like this. If you are done with the set please consider contributing it (native hca files, not converted) at vgm.hcs64.com.
That's funny, the first byte seems to have no effect indeed. Anyway if you need a proof that the hca file akanerin7 shared works, here's a quick export.