Page 1 of 1

(PS3/X360)Next-Gen Ace Combat DPL & FHM

Posted: Tue Jan 08, 2019 2:38 am
by TraccKrodm
(EDIT : Decided to rewrite and post again at Xentax/Zenhax, with still mataining the focus of making the post very clear)

Years ago, in Zenhax there was a post about Ace Combat Assault Horizon QDF files, however, despite the QDF containing the main game files, other ones still are not decrypted yet, thing that in the PS3/X360 version of Assault Horizon, Ace Combat Infinity, Ace Combat 6(about FHM itself, because the main container uses .PAC with XORed deflate compression), and MachStorm don't even use QDF containers.

Using Ace Combat Infinity for example, the main file consists of : EBOOT.BIN which is the game executable with the commands and configuration to run, files are in .PAC, DATA00/01/90/91 uses DPL header, DATA99 it´s just game warning and logos(with some bits of menu layout), DATA10/11/12/13/14/20/21 use CPK instead, which is criware compression, the CPK ones just store audio(10-14) and video cutscenes(20-21). now about DATA00/01/90 store the main game files like models, textures, and etc... along of DPL, there´s one more layer of container called FHM(used by Namco since Time Crisis from PS1), which is the one used to store models(NDXR) and textures(NTXR?), and other files in general.

User undefined_darkness worked at a tool for decompressing Assault Horizon Enhanced Edition's QDF, called QDF tool, documentation is found here : ... f_tool.cpp

However, inside the decompressed QDF files, there's a file called DATA.PAC which uses DPL header(along as other file called datapack.bin, which is a file list/data table outside of the unpacked QDF), by analysis, noticed that this file also store models/textures and in-game system files.

The same user made a documentation of the DPL and FHM headers for the engine he was using in his side project, but after years without news, the project seems to be abandoned. documentation of the headers, along as other Ace Combat games headers can be found here :
Game Containers ... containers
PAC(Ace Combat 6) ... s/pac6.cpp ... ers/pac6.h
FHM ... rs/fhm.cpp ... ners/fhm.h
DPL ... rs/dpl.cpp ... ners/dpl.h
NDXR ... m_mesh.cpp ... fhm_mesh.h ... h_ndxr.cpp ... esh_ndxr.h

Giving samples, from Ace Combat Infinity's DPL, the long and main one, which probably contains the big deal(models, textures) : ... 0.PAC?dl=0
and the minor size one, maybe can contain interresing data, but unsure yet : ... 1.PAC?dl=0
And giving Assault Horizon Enhanced Edition DATA.PAC located into the QDF files :