ICE Take Dictionary

From Burnout Wiki

ICE data is used for cameras such as race starts, Picture Paradise and Super Jumps.

Structures[edit | edit source]

CgsContainers::Dictonary<ICE::ICETakeData>[edit | edit source]

32-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0xC SimpleDictionary<ICE::ICETakeData> super_SimpleDictionary<ICE::ICETakeData>

64-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x10 SimpleDictionary<ICE::ICETakeData> super_SimpleDictionary<ICE::ICETakeData>

CgsContainers::SimpleDictionary<ICE::ICETakeData>[edit | edit source]

32-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0xC DictionaryBase super_DictionaryBase

64-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x10 DictionaryBase super_DictionaryBase

CgsContainers::DictionaryBase[edit | edit source]

32-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x4 int32_t miNumEntries Number of Dictionary entries
0x4 0x4 int32_t miDictionarySize Dictionary size (file size minus DictionaryBase length)
0x8 0x4 DictEntry* mpaIndex Dictionary entries

64-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x4 int32_t miNumEntries Number of Dictionary entries
0x4 0x4 int32_t miDictionarySize Dictionary size (file size minus DictionaryBase length)
0x8 0x8 DictEntry* mpaIndex Dictionary entries

CgsContainers::DictEntry[edit | edit source]

32-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x8 DictionaryKey mKey CRC32 hash of lowercase macTakeName
0x8 0x4 char* mpData ICE take data See ICETakeData
0xC 0x4 int32_t mxUserFlags Always 0x80000000

64-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x8 DictionaryKey mKey CRC32 hash of lowercase macTakeName
0x8 0x8 char* mpData ICE take data See ICETakeData
0x10 0x4 int32_t mxUserFlags Always 0x80000000
0x14 0x4 padding

ICE::ICETakeData[edit | edit source]

32-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x8 bTNode<ICE::ICETakeData> super_bTNode
0x8 0x4 int32_t miGuid GameDB ID
0xC 0x20 char[32] macTakeName ICE Take Name
0x2C 0x4 float32_t mfLength Take length in seconds
0x30 0x4 uint32_t muAllocated
0x34 0x30 ICEElementCount[12] mElementCounts TODO: Data after this is variable. Array of uint16s, array of floats, and camera data?

64-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x10 bTNode<ICE::ICETakeData> super_bTNode
0x10 0x4 int32_t miGuid GameDB ID
0x14 0x20 char[32] macTakeName ICE Take Name
0x34 0x4 float32_t mfLength Take length in seconds
0x38 0x4 uint32_t muAllocated
0x3C 0x30 ICEElementCount[12] mElementCounts TODO: Data after this is variable. Array of uint16s, array of floats, and camera data? PS4 has an additional value.

ICE::bTNode<ICE::ICETakeData>[edit | edit source]

32-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x8 bNode super_bNode

64-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x10 bNode super_bNode

ICE::bNode[edit | edit source]

32-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x4 bNode* Next Populated in memory
0x4 0x4 bNode* Prev Populated in memory

64-bit[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x8 bNode* Next Populated in memory
0x4 0x8 bNode* Prev Populated in memory

ICE::ICEElementCount[edit | edit source]

Offset Length Type Name Description Comments
0x0 0x2 uint16_t mu16Intervals
0x2 0x2 uint16_t mu16Keys

Typedefs[edit | edit source]

CgsContainers::DictEntry::DictionaryKey[edit | edit source]

Name Type Length Comments
DictionaryKey int64_t 0x8 CRC32 hash of lowercase macTakeName