Free Game Research Forum | Official QuickBMS support | twitter @zenhax | SSL HTTPS://zenhax.com
It is currently Sun Feb 28, 2021 7:11 pm

All times are UTC

Post new topic  Reply to topic  [ 2 posts ] 
Author Message
PostPosted: Mon Feb 22, 2021 4:01 pm 
User avatar

Joined: Mon Feb 22, 2021 3:54 pm
Posts: 2
Hi, I've currently been working on figuring out the format of the OVL files used in Dog's Life for ps2. Right now me and the other person working on it, DKDave, have figured out somewhat of the format, but still need to figure out the rest of the data tables. I've provided our current notes and a sample file to look at. Thanks in advance!

HEADER - 12 bytes

0x00    Int    Count1: Number of textures ?
0x04    Int    Count2: Number of ?
0x08    Int    Count3: Number of entries in Table 1

TABLE 1 - Count3 * 0x14

TABLE 2 - Int Count + (Count * 0x20)

TABLE 3 - Count1 * 0x40

TABLE 4 - Count3 * 0x28

[some other table(s)]

TABLE - Int Count + (Count * 0x8)

TABLE - Count3 * 0x30

TABLE - (Table 2 count) * 0x10

TABLE - Count1 * 0x64 (some entries are variable size) [This is a texture info table, with widths, heights, and other info]

TABLE - Count3 * 0x10

[some other table]

Followed by textures, meshes and other data

File comment: OVL File
5.7z [248.83 KiB]
Downloaded 13 times
PostPosted: Tue Feb 23, 2021 5:27 pm 
User avatar

Joined: Mon Feb 22, 2021 3:54 pm
Posts: 2
Here is the notes for the model format right now, also.

Header - 12 bytes:

0x00    Short    Always seems to be 0xFFFF
0x02    UShort    Number of face sections in this mesh
0x04    UShort    Number of total face entries
0x06    UShort    Number of vertices
0x08    UInt    Always seems to be 0x0000411c

Next follows a table of face sections - 1 UShort per entry.  This is the number of face indices in each part.  They should add up to the total number of face entries in the header.

Then follows the actual face index data - 1 Short per index value

Then follows the vertex data - 0x34 bytes per entry as follows:

* NOTE: Sometimes there is an extra 2 bytes before the vertex data starts - it doesn't seem to be for alignment purposes, so not sure how to calculate it automatically.

0x00    Float    X Coord
0x04    Float    Y Coord
0x08    Float    Z Coord
0x0c    ?
0x10    ?
0x14    ?
0x18    ?
0x1c    ?
0x20    Float    Normal X
0x24    Float    Normal Y
0x28    Float    Normal Z
0x2c    Float    UV X
0x30    Float    UV Y

Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 2 posts ] 

All times are UTC

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Powered by phpBB® Forum Software © phpBB Limited