Hi !!!
Here's a quick update of what I've been onto and asking
for some help (btw Marltoro did some great stuff in the meantime but I'll let him unveil his work)
Getting closer than ever to deciphering DMD format:Here's the parsed content and I'll explain what is it and what we're trying to figure out,
- collections are models in a file, here it's CARS.DMD, there are 13 but I didn't have enough space in this post
- DMD0107 is a mesh-container, that is, contains models and coincidentally other mesh containers (don't worry about that)
- DMD040B according to Marltoro contains the coordinates of a model (u still here ?)
- DMD020X currently is unknown, but honestly does not really sound challenging to me because it's stable
- DMDE457 is THE question, currently we're trying to understand these numbers, as you can see there seems to be some link between them (look before/after)
- DMD00FF is THE stuff (models you're gonna see on screen)
Once we figure that, IMO it'll be a milestone because then we'd have a simple and easy to use DMD parser, there will be other hurdles but at this point surface has been scratched and it is much less
intimidating.
So whatever idea/remark that might pop inside you is welcome, you don't have to be a code guru, actually advices from external persons is valuable because they're laid-back about the subject (I'm drowning in all this hex codes actually).
Thanks
Code:Target: ..\.data\.psx\tm1ps\uadmd\cars.dmd
Collection 0:
DMD0107
DMD040B
DMD0107
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMD00FF
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMD00FF
DMDE457, Unknown1: 90000, Unknown2: 22500
DMD00FF
DMDE457, Unknown1: 360000, Unknown2: 90000
DMD00FF
DMDE457, Unknown1: 3240000, Unknown2: 360000
DMD00FF
DMD020X
DMDE457, Unknown1: 360000, Unknown2: 0
DMD0107
DMD00FF
DMD020X
DMDE457, Unknown1: 3240000, Unknown2: 0
DMD0107
DMD00FF
DMD00FF
Collection 1:
DMD0107
DMD040B
DMD0107
DMD020X
DMDE457, Unknown1: 62500, Unknown2: 0
DMD00FF
DMD020X
DMDE457, Unknown1: 15625, Unknown2: 0
DMD00FF
DMDE457, Unknown1: 62500, Unknown2: 15625
DMD00FF
DMD020X
DMDE457, Unknown1: 250000, Unknown2: 62500
DMD00FF
DMD020X
DMDE457, Unknown1: 2250000, Unknown2: 250000
DMD00FF
DMD020X
DMDE457, Unknown1: 250000, Unknown2: 0
DMD0107
DMD00FF
DMD020X
DMDE457, Unknown1: 2250000, Unknown2: 0
DMD0107
DMD00FF
DMD00FF
Collection 2:
DMD0107
DMD040B
DMD0107
DMD0107
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMD00FF
DMDE457, Unknown1: 122500, Unknown2: 22500
DMD00FF
DMDE457, Unknown1: 490000, Unknown2: 122500
DMD00FF
DMDE457, Unknown1: 4410000, Unknown2: 490000
DMD00FF
DMD020X
DMDE457, Unknown1: 122500, Unknown2: 0
DMD0107
DMD00FF
DMD020X
DMDE457, Unknown1: 4410000, Unknown2: 0
DMD0107
DMD00FF
DMD00FF
DMD0107
DMD0107
DMD0107
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMDE457, Unknown1: 2097929, Unknown2: 65537
DMD00FF
DMDE457, Unknown1: 90000, Unknown2: 22500
DMD00FF
DMD040B
DMD0107
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMDE457, Unknown1: 2097929, Unknown2: 65537
DMD00FF
DMDE457, Unknown1: 90000, Unknown2: 22500
DMD00FF
Collection 3:
DMD0107
DMD040B
DMD0107
DMD0107
DMD0107
DMD050B
DMD0107
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMD00FF
DMDE457, Unknown1: 5062500, Unknown2: 22500
DMD00FF
DMD050B
DMD0107
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMD00FF
DMDE457, Unknown1: 5062500, Unknown2: 22500
DMD00FF
DMD050B
DMD0107
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMD00FF
DMDE457, Unknown1: 5062500, Unknown2: 22500
DMD00FF
DMD050B
DMD0107
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMD00FF
DMDE457, Unknown1: 5062500, Unknown2: 22500
DMD00FF
DMD0107
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMD00FF
DMD020X
DMDE457, Unknown1: 140625, Unknown2: 22500
DMD00FF
DMD020X
DMDE457, Unknown1: 562500, Unknown2: 140625
DMD00FF
DMD020X
DMDE457, Unknown1: 5062500, Unknown2: 562500
DMD00FF
DMD020X
DMDE457, Unknown1: 562500, Unknown2: 0
DMD0107
DMD00FF
DMD020X
DMDE457, Unknown1: 5062500, Unknown2: 0
DMD0107
DMD00FF
DMD00FF
Collection 4:
DMD0107
DMD040B
DMD0107
DMD020X
DMDE457, Unknown1: 62500, Unknown2: 0
DMD00FF
DMD020X
DMDE457, Unknown1: 250000, Unknown2: 62500
DMD00FF
DMD020X
DMDE457, Unknown1: 2250000, Unknown2: 250000
DMD00FF
DMD020X
DMDE457, Unknown1: 2250000, Unknown2: 0
DMD0107
DMD00FF
DMD020X
DMDE457, Unknown1: 2250000, Unknown2: 0
DMD0107
DMD00FF
DMD00FF
Collection 5:
DMD0107
DMD040B
DMD0107
DMD020X
DMDE457, Unknown1: 62500, Unknown2: 0
DMD00FF
DMD020X
DMDE457, Unknown1: 250000, Unknown2: 62500
DMD00FF
DMD020X
DMDE457, Unknown1: 2250000, Unknown2: 250000
DMD00FF
DMD020X
DMDE457, Unknown1: 250000, Unknown2: 0
DMD0107
DMD00FF
DMD020X
DMDE457, Unknown1: 2250000, Unknown2: 0
DMD0107
DMD00FF
DMD00FF
Collection 6:
DMD0107
DMD040B
DMD0107
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMD00FF
DMD020X
DMDE457, Unknown1: 22500, Unknown2: 0
DMD00FF
DMDE457, Unknown1: 90000, Unknown2: 22500
DMD00FF
DMDE457, Unknown1: 360000, Unknown2: 90000
DMD00FF
DMDE457, Unknown1: 3240000, Unknown2: 360000
DMD00FF
DMD020X
DMDE457, Unknown1: 360000, Unknown2: 0
DMD0107
DMD00FF
DMD020X
DMDE457, Unknown1: 3240000, Unknown2: 0
DMD0107
DMD00FF
DMD00FF
Collection 7:
DMD0107
DMD040B
DMD0107
DMD020X
DMDE457, Unknown1: 10000, Unknown2: 0
DMD00FF
DMDE457, Unknown1: 22500, Unknown2: 10000
DMD00FF
DMD020X
DMDE457, Unknown1: 62500, Unknown2: 22500
DMD00FF
DMD020X
DMDE457, Unknown1: 250000, Unknown2: 62500
DMD00FF
DMD020X
DMDE457, Unknown1: 2250000, Unknown2: 250000
DMD00FF
DMD020X
DMDE457, Unknown1: 250000, Unknown2: 0
DMD0107
DMD00FF
DMD020X
DMDE457, Unknown1: 2250000, Unknown2: 0
DMD0107
DMD0107
DMD00FF
Collection 8:
DMD0107
DMD040B
DMD0107
DMD020X
DMDE457, Unknown1: 6400, Unknown2: 0
DMD00FF
DMDE457, Unknown1: 22500, Unknown2: 6400
DMD00FF
DMDE457, Unknown1: 62500, Unknown2: 22500
DMD00FF
DMDE457, Unknown1: 250000, Unknown2: 62500
DMD00FF
DMDE457, Unknown1: 2250000, Unknown2: 250000
DMD00FF
DMD020X
DMDE457, Unknown1: 250000, Unknown2: 0
DMD0107
DMD00FF
.. trimmed
PS to make it clear, what you're looking at it is a hierarchy, that means whenever a text is indented,
it is a child of the parent above