Enter The Matrix DCX: Difference between revisions
imported>Brat |
imported>Ikskoks |
||
| (3 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
== DCX == | == DCX == | ||
* ''' Game ''': [[Enter the Matrix]] <br> | |||
* ''' Format Type ''': Archive <br> | * ''' Format Type ''': Archive <br> | ||
* ''' [http://en.wikipedia.org/wiki/Endianness Endian Order] ''': Little Endian <br> | * ''' [http://en.wikipedia.org/wiki/Endianness Endian Order] ''': Little Endian <br> | ||
| Line 74: | Line 74: | ||
* [[Game Extractor|Game Extractor]]<br> | * [[Game Extractor|Game Extractor]]<br> | ||
[[Category:Complete WIP|Enter The Matrix DCX]] | |||
[[Category:Platform PC|Enter The Matrix DCX]] | |||
[[Category:CE None|Enter The Matrix DCX]] | |||
[[Category:Format_Archive | Type: Archive]] | |||
[[Category:Extension_dcx | Extension: dcx]] | |||
[[Category:BMS_None | BMS: None]] | |||
[[Category:File Format]] | |||
Latest revision as of 13:20, 22 November 2020
DCX
- Game : Enter the Matrix
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
uint32 {4} - null
char {16} - Filename (null)
float {4} - =1.0
byte {4} - Unknown
uint32 {4} - Unknown Count1
byte {4} - Unknown
uint32 {4} - Number Of Bones
byte {4} - Unknown
uint32 {4} - Number Of Textrure Files
byte {4} - Unknown
uint32 {4} - Unknown Count2
byte {4} - Unknown
uint32 {4} - null
uint32 {4} - Number Of Mesh
uint32 {4} - =256
byte {8} - Unknown
uint32 {4} - Number Of SubMeshes In Each Mesh. Often: 1 - LowPoly
2 - MiddlePoly 3 - HighPoly Models
uint32 {4} - null
float {4} - Always = 0 except one file SorenTestAgentSmith.dcx = 90.0
uint32 {4} - null
// for each textrure file
- char {32} - Filename (null)
- uint32 {4} - Texture Width
- uint32 {4} - Texture Height
- uint32 {4} - Compression type ( =5h or =105h - DXT5 else DXT1 )
- uint32 {4} - File Size
- uint32 {4} - File ID or Timestamp?
- byte {8} - null
- uint32 {4} - Unknown. Often 0 or CDCDCDCDh. Transparency ?
byte {X} - Texture File Data. One by one for each file.
// for each bone
- char {32} - Bonename (null)
- uint32 {4} - Child bones count?
- 3 uint32 {4} - Unknown
- 6 float {4} - Unknown
byte {X} - Unknown data 1. Size of that block depends on Count1, Count2, Number of Mesh and Number Of Bones. What is it?
// for each mesh
- char {32} - Meshname (null)
- byte {12} - Unknown
- uint32 {4} - Mesh Data Size
byte {X} - Mesh data
MultiEx BMS Script
Not written yet
Notes and Comments
If a filename is too long to fit in the 32-bytes allocated for it, it is cut off at 32 bytes