EvilEngine/CSN
Header, Raw Data and TimeChunks are all aligned to 2048 bytes.
Entries in TimeChunks are aligned to 16 bytes?
CSN | |
---|---|
Cutscene | |
Type | Binary |
Games used | Night of 100 Frights Battle for Bikini Bottom |
Alignment
Format
The asset data starts with a main header, which is also present in the CTOC asset.
Raw Data
This section contains all MODL and JDTM assets. Its size and offset are defined in the main header.
TimeChunk
Every timechunk has a 0x10 byte header:
Offset | Type | Variable | Description |
---|---|---|---|
0x00 | float | StartTime | |
0x04 | float | EndTime | |
0x08 | uint | NumData | Number of entries. |
0x0C | uint | ChunkIndex | TimeChunk index (starts with 0). |
The entries have the following structure:
xCutsceneData
Offset | Type | Variable | Description |
---|---|---|---|
0x00 | uint | DataType |
|
0x04 | AssetID | AssetID | AssetID of entry. |
0x08 | uint | ChunkSize | Size of data, relative to end of this header. |
0x0C | uint | FileOffset | Starting position of data, relative to end of this header. |
Sound
Offset | Type | Variable | Description |
---|---|---|---|
0x00 | xCutsceneData Header | ||
0x10 | SNDS (Scooby/BFBB) |
Animation
Offset | Type | Variable | Description |
---|---|---|---|
0x00 | xCutsceneData Header | ||
0x10 | uint32 | RootIndex | |
0x14 | float[3] | Translate | Starting position. |
0x20 | ANIM |
Camera
Camera is different in Night of 100 Frights. This is BFBB/TSSM/Incredibles only.
Offset | Type | Variable | Description |
---|---|---|---|
0x00 | xCutsceneData Header | ||
0x10 | uint32 | Amount of frames. | |
0x14 | FLY (Big-Endian on Gamecube) |
JDTA
Offset | Type | Variable | Description |
---|---|---|---|
0x00 | xCutsceneData Header | ||
0x10 | Unknown |
MorphTarget
Offset | Type | Variable | Description |
---|---|---|---|
0x00 | xCutsceneData Header | ||
0x10 | Unknown | ||
MPHT |