Progression Data/Burnout Paradise/Development

From Burnout Wiki

Versions

Versions as defined by the muVersionNumber field.

Structures

BrnProgression::ProgressionData

Version 4

Offset Length Type Name Description Comments
0x0 0x4 uint32_t muVersionNumber Resource version 4
0x4 0x4 uint32_t muSize Resource size
0x8 0x4 SavedPresetRace* Events
0xC 0x4 uint32_t muPresetRaceCount Number of events
0x10 0x4 Unknown* ? Rank data
0x14 0x4 int32_t miRankCount Number of rank entries
0x18 0x4 Rival* mpaRivals Rivals
0x1C 0x4 int32_t miRivalCount Number of rivals

Version 8

Offset Length Type Name Description Comments
0x0 0x4 uint32_t muVersionNumber Resource version 8
0x4 0x4 uint32_t muSize Resource size
0x8 0x8 CgsID ? Default player vehicle B1 Saloon
0x10 0x4 SavedRace* Events
0x14 0x4 uint32_t muRaceCount Number of events
0x18 0x4 Unknown* ? Rank data
0x1C 0x4 int32_t miRankCount Number of rank entries
0x20 0x4 Rival* mpaRivals Rivals
0x24 0x4 int32_t miRivalCount Number of rivals

BrnProgression::BaseRace

Type name from 1.0 data - actual name may be different, in particular for version 4.

Version 4

Offset Length Type Name Description Comments
0x0 0x8 CgsID mId Event ID GameDB ID
0x8 0x4 uint32_t muRank 0-1
0xC 0x4 uint32_t Laps? 1-2
0x10 0x20 char[32] macName Event name

Version 8

Offset Length Type Name Description Comments
0x0 0x20 char[32] macName Event name Always null
0x20 0x8 CgsID mId Event ID GameDB ID
0x28 0x1 uint8_t mxFlags Always 0
0x29 0x1 uint8_t muRank 0-9
0x2A 0x1 uint8_t muLaps Always 1
0x2B 0x5 uint8_t[5] maPad Padding

BrnProgression::SavedPresetRace

Version 4

Offset Length Type Name Description Comments
0x0 0x30 BaseRace Base class
0x30 0x190 CgsID[50] maLandmarkCgsIds Checkpoints GameDB IDs
0x1C0 0x4 uint32_t muNumLandmarks Number of checkpoints
0x1C4 0x4 Padding

BrnProgression::SavedRace

Version 8

Offset Length Type Name Description Comments
0x0 0x30 BaseRace Base class
0x30 0x80 CgsID[16] maLandmarkCgsIds Checkpoints GameDB IDs
0xB0 0x1 uint8_t muNumLandmarks Number of checkpoints
0xB1 0x7 uint8_t[7] maPad Padding

Unknown 0

Rank data. Actual name unknown.

Version 4

Offset Length Type Name Description Comments
0x0 0x4 uint32_t* ? Unknown integers Race indices? Unlocks?
0x4 0x4 uint32_t ? Number of unknown integers
0x8 0x4 uint32_t ? Number of violation/offence points to acquire this rank
0xC 0x20 char[32] ? Name EL_*

Version 8

Offset Length Type Name Description Comments
0x0 0x4 uint32_t* ? Unknown integers Race indices? Unlocks?
0x4 0x4 uint32_t ? Number of unknown integers
0x8 0x4 uint32_t ? Number of violation/offence points to acquire this rank
0xC 0x1E0 CgsArray<OpponentBalanceData,7u> ? Length is always 0, but there will always be 7 populated entries.
0x1EC 0x20 char[32] ? Name EL_*

BrnProgression::Rival

Versions 4-8

Offset Length Type Name Description Comments
0x0 0x8 CgsID mCarId Vehicle to use
0x8 0x4 int32_t miRank Rank 0-1
0xC 0x4 float32_t mfSpeed Speed Always 1
0x10 0x4 float32_t mfAggression Aggression Always 1
0x14 0x4 float32_t mfVolatility Volatility Always 1
0x18 0x4 float32_t mfSkill Skill Always 1
0x1C 0x2 int16_t miTakedownCount Takedown count Always 1 in v4 sample
Sequential 0x6-26 in v8 sample
0x1E 0x1 int8_t miCountyIndex County index Always -1 in v4 sample, 0-4 in v8 sample
0x1F 0x20 char[32] macName Rival name
0x3F 0x1 Padding