Runes of Magic FDB
From XentaxWiki
Back to index | Edit this page
Contents |
FDB
Format Type: Archive
Endianness: Little-endian
Date Posted: 11:14, 31 December 2008 (EST)
Format Specifications
- byte {1} - Probably Version number or part of the Header ("01")
- byte {3} - Header ("BDF")
- uint32 {4} - Number of files in archive
// For each file
- int32 {4} - File Type (See Note1)
- uint64 {8} - File Time (The time the file was last modified)
- uint32 {4} - File Block offset (Offset from beginning of file)
// For each file
- uint32 {4} - File Name Size
// File Names Table Size
- uint32 {4} - Size of the table containing the file names
// For each file
- char {x} - File Name (null padded) (Containing partial directory structure [example: DIR1\DIR2\DIR3\filename.ext])
// For each file
- uint32 {4} - File Block Size (Size of the block containing information and the file)
- uint32 {4} - File Type (See Note1)
- uint32 {4} - Compression Type (0x00000000 = None, 0x03000000 = ZLib)
- uint32 {4} - Uncompressed File Size
- uint32 {4} - Compressed File Size
- uint64 {8} - File Time (The time the file was last modified)
- uint32 {4} - File Name Size (Including the null padded byte)
- char {x} - File Name (null padded) (Containing partial directory structure [example: DIR1\DIR2\DIR3\filename.ext])
- if (File Type = 2) {
- int32 {4} - Compression Type (0x04000000 = None, 0x06000000 = DXT1, 0x08000000 = DXT5) (See Note3)
- int32 {4} - Texture Width
- int32 {4} - Texture Height
- int32 {4} - Unknown Value N2 (See Note2)
- }
- byte {x} - File Data
- uint32 {4} - Unknown Value N3
- uint32 {4} - Number of files in archive
Notes and Comments
Note1 - The ID/Type tag for the file contents. Where 0x01000000 indicates a regular file, and 0x02000000 indicates a texture (*.DDS, *.PNG, *.TGA and *.BMP). In case of a texture 4 additional uint32 values are stored after the the filename and before the archived file contents. The texture files are archived without a header, the 4 additional uint32 values can be used to reconstruct it.
Note2 - This field is only non-zero for *.DDS files, it probably indicates the number of mipmaps in the texture.
Note3 - Previously considered to be DXT2 - switching the header to DXT5 fixes the Alpha Chanel defects.
MultiEx BMS Script
None written yet. WIP version - http://forum.xentax.com/viewtopic.php?f=10&t=3293
Supported by Programs
FDB Extractor - http://www.terestria.net/?p=1
Old FDB Extractor - http://filebeam.com/3d87b9917faed47b4fc06e6bc9bea202
Links
Official HomePage - http://www.runesofmagic.com/
Forum Discusion - http://forum.xentax.com/viewtopic.php?f=10&t=3293