ProgressionData
aka Progression
No Example
Resource names
progressiondata
Type ID
0x1000C
Category
Game-specific (Burnout Paradise)
Memory distribution
Main Memory only
Imports
Unknown
Imported by
Unknown
Editor available?
No
Previous versions Information on the Progression resource versions used in prior retail versions of Burnout Paradise.
Development Information on the Progression resource versions used during development.
The Progression resource stores the events, ranks, and opponents seen throughout Burnout Paradise, along with much of the related data. It is dependent on the Traffic Data resource for certain elements, such as event starts.
Structures
BrnProgression::ProgressionData
32-bit
Offset
Length
Type
Name
Description
Comments
0x0
0x4
uint32_t
muVersionNumber
File version
44
0x4
0x4
uint32_t
muSize
Resource size
0x8
0x4
CgsID *
mpaPlayerCarIds
Cars the player starts the game with
Leftover, actually hardcoded to the Hunter Cavalry
0xC
0x4
uint32_t
muPlayerCarIdCount
Number of starter cars
Leftover, actually hardcoded to 1
0x10
0x4
ProgressionRankData *
mpaProgressionRanks
Rank details
0x14
0x4
uint32_t
muProgressionRankCount
Number of ranks
0x18
0x4
EventJunction *
mpaEventJunctions
Junctions
0x1C
0x4
uint32_t
muEventJunctionCount
Number of junctions
0x20
0x4
RaceEventData *
mpaEvents
Events
0x24
0x4
uint32_t
muEventCount
Number of events
0x28
0x4
Rival *
mpaRivals
Rivals
0x2C
0x4
int32_t
miRivalCount
Number of rivals
0x30
0x4
OpponentBalanceData *
mpaAIBalances
AI opponent balancing data
0x34
0x4
uint32_t
muAIBalanceCount
Number of balancing data entries
0x38
0x4
EventRacerPersonality *
mpaPersonalities
AI personalities
0x3C
0x4
uint32_t
muPersonalityCount
Number of personalities
0x40
0x4
TrophyUnlockData *
mpaTrophyUnlocks
Trophy car unlocks
Carbon cars
0x44
0x4
uint32_t
muTrophyUnlockCount
Number of trophy cars
0x48
0x4
CarOpponentSet *
mpaCarOpponentSet
Per-vehicle opponent vehicle sets
0x4C
0x4
uint32_t
muCarOpponentsCount
Number of opponent sets
0x50
0x4
uint32_t
?
Number of event junctions (excluding BSI)
Remastered only, set to 120. Used in save validation
64-bit
Offset
Length
Type
Name
Description
Comments
0x0
0x4
uint32_t
muVersionNumber
File version
44
0x4
0x4
uint32_t
muSize
Resource size
0x8
0x8
CgsID *
mpaPlayerCarIds
Cars the player starts the game with
Leftover, actually hardcoded to the Hunter Cavalry
0x10
0x4
uint32_t
muPlayerCarIdCount
Number of starter cars
Leftover, actually hardcoded to 1
0x14
0x4
Padding
0x18
0x8
ProgressionRankData *
mpaProgressionRanks
Rank details
0x20
0x4
uint32_t
muProgressionRankCount
Number of ranks
0x24
0x4
Padding
0x28
0x8
EventJunction *
mpaEventJunctions
Junctions
0x30
0x4
uint32_t
muEventJunctionCount
Number of junctions
0x34
0x4
Padding
0x38
0x8
RaceEventData *
mpaEvents
Events
0x40
0x4
uint32_t
muEventCount
Number of events
0x44
0x4
Padding
0x48
0x8
Rival *
mpaRivals
Rivals
0x50
0x4
int32_t
miRivalCount
Number of rivals
0x54
0x4
Padding
0x58
0x8
OpponentBalanceData *
mpaAIBalances
AI opponent balancing data
0x60
0x4
uint32_t
muAIBalanceCount
Number of balancing data entries
0x64
0x4
Padding
0x68
0x8
EventRacerPersonality *
mpaPersonalities
AI personalities
0x70
0x4
uint32_t
muPersonalityCount
Number of personalities
0x74
0x4
Padding
0x78
0x8
TrophyUnlockData *
mpaTrophyUnlocks
Trophy car unlocks
Carbon cars
0x80
0x4
uint32_t
muTrophyUnlockCount
Number of trophy cars
0x84
0x4
Padding
0x88
0x8
CarOpponentSet *
mpaCarOpponentSet
Per-vehicle opponent vehicle sets
0x90
0x4
uint32_t
muCarOpponentsCount
Number of opponent sets
0x94
0x4
uint32_t
?
Number of event junctions
Remastered only, set to 120. Used in save validation
BrnProgression::ProgressionRankData
Offset
Length
Type
Name
Description
Comments
0x0
0x4
float32_t
mfTrafficDensityRace
0x4
0x4
float32_t
mfBurningRouteTimeScale
0x8
0x4
float32_t
mfTrafficDensityBurningRoute
0xC
0x4
float32_t
mfTrafficDensityRoadRage
0x10
0x4
float32_t
mfTrafficDensitySurvival
0x14
0x4
float32_t
mfTrafficDensityPursuit
0x18
0x4
float32_t
mfShuntStrengthRace
0x1C
0x4
float32_t
mfShuntStrengthRoadRage
0x20
0x4
float32_t
mfShuntStrengthMarkedMan
0x24
0x4
float32_t
mfLargeVehicleProbability
0x28
0x4
uint32_t
muId
GameDB ID
0x2C
0x20
float32_t[8]
maOvertakingDifficulty
0x4C
0x2
uint16_t
mu16MedalThresholdToNextRank
Number of wins required for a license upgrade
0x4E
0x2
uint16_t
mu16EventThresholdToNextRank
0x50
0x2
uint16_t
muRoadRageTakedownTarget
0x52
0x2
uint16_t
muRoadRageTime
0x54
0x2
uint16_t
muRoadRageTimeExtensions
0x56
0x2
uint16_t
muRoadRageExtensionTime
0x58
0x2
uint16_t
muRoadRageDamageLimit
0x5A
0x2
uint16_t
muRoadRageTriggerExtension
0x5C
0x1
uint8_t
muRaceRivalsNumber
0x5D
0x1
uint8_t
muGauntletRivalsNumber
0x5E
0x1
uint8_t
muRoadRageRivalsNumber
0x5F
0x1
uint8_t
muNumGiftCars
0x60
0x1
uint8_t
muNumWinsToRankUpRace
0x61
0x1
uint8_t
muNumWinsToRankUpStunt
0x62
0x1
uint8_t
muNumWinsToRankUpRoadRage
0x63
0x1
uint8_t
muNumWinsToRankUpMarkedMan
0x64
0x4
Padding
0x68
0x8
CgsID
mFreeCarForRankUpID
Vehicle unlocked at a given rank
BrnProgression::EventJunction
32-bit
Offset
Length
Type
Name
Description
Comments
0x0
0x4
uint32_t
muID
Junction GameDB ID
0x4
0x4
RaceEventData *
mpOfflineEvent
Offline event
0x8
0x4
RaceEventData *
mpOnlineEvent
Online event
0xC
0x4
RaceEventData *
Bike event
0x10
0x4
int32_t
miShotGroup
Shot group GameDB ID
Can be -1
64-bit
Offset
Length
Type
Name
Description
Comments
0x0
0x4
uint32_t
muID
Junction GameDB ID
0x4
0x4
Padding
0x8
0x8
RaceEventData *
mpOfflineEvent
Offline event
0x10
0x8
RaceEventData *
mpOnlineEvent
Online event
0x18
0x8
RaceEventData *
Bike event
0x20
0x4
int32_t
miShotGroup
Shot group GameDB ID
Can be -1
0x24
0x4
Padding
BrnProgression::RaceEventData
32-bit
Offset
Length
Type
Name
Description
Comments
0x0
0x4
uint32_t
muId
Event GameDB ID
0x4
0x4
uint32_t
muFlags
Flags
See EFlags
0x8
0x4
float32_t
mfTrafficDensity
0xC
0x4
float32_t
mfBoostEarning
0x10
0x8
CgsID
mSpecialEventCarId
Limits to specified vehicle ID
Used on Burning Routes
0x18
0x4
CheckpointData *
mpaCheckpoints
Checkpoints
0x1C
0x4
int32_t
miCheckpointCount
Number of checkpoints
0x20
0x4
float32_t
mfTimeLimitFast
0x24
0x4
float32_t
mfTimeLimitSlow
0x28
0x18
int32_t[6]
miRankScore
0x40
0x18
float32_t[6]
mfRankTime
0x58
0x4
float32_t
mfExtensionTime
0x5C
0x8C
EventStartGridSlot [7]
maStartGridSlots
0xE8
0x4
uint32_t
muStartGridCount
0xEC
0x1
uint8_t
mu8Mode
Event type
See EModeType
0xED
0x1
uint8_t
mu8OnlineMode
Online event type
See EOnlineModeType
0xEE
0x1
uint8_t
mu8StartRivalCount
0xEF
0x1
uint8_t
mu8AddRivalCount
0xF0
0x1
uint8_t
mu8TakeDownBronze
0xF1
0x1
uint8_t
mu8TakeDownSilver
0xF2
0x1
uint8_t
mu8TakeDownGold
0xF3
0x1
uint8_t
mu8DamageLimit
0xF4
0x1
uint8_t
mu8ExtensionTimeCount
0xF5
0x1
uint8_t
mu8AStarType
A* Type
See AStarType
0xF6
0x1
int8_t
mi8UnlockRank
0xF7
0x1
Padding
64-bit
Offset
Length
Type
Name
Description
Comments
0x0
0x4
uint32_t
muId
Event GameDB ID
0x4
0x4
uint32_t
muFlags
Flags
See EFlags
0x8
0x4
float32_t
mfTrafficDensity
0xC
0x4
float32_t
mfBoostEarning
0x10
0x8
CgsID
mSpecialEventCarId
Limits to specified vehicle ID
Used on Burning Routes
0x18
0x8
CheckpointData *
mpaCheckpoints
Checkpoints
0x20
0x4
int32_t
miCheckpointCount
Number of checkpoints
0x24
0x4
float32_t
mfTimeLimitFast
0x28
0x4
float32_t
mfTimeLimitSlow
0x2C
0x18
int32_t[6]
miRankScore
0x44
0x18
float32_t[6]
mfRankTime
0x5C
0x4
float32_t
mfExtensionTime
0x60
0x8C
EventStartGridSlot [7]
maStartGridSlots
0xEC
0x4
uint32_t
muStartGridCount
0xF0
0x1
uint8_t
mu8Mode
Event type
See EModeType
0xF1
0x1
uint8_t
mu8OnlineMode
Online event type
See EOnlineModeType
0xF2
0x1
uint8_t
mu8StartRivalCount
0xF3
0x1
uint8_t
mu8AddRivalCount
0xF4
0x1
uint8_t
mu8TakeDownBronze
0xF5
0x1
uint8_t
mu8TakeDownSilver
0xF6
0x1
uint8_t
mu8TakeDownGold
0xF7
0x1
uint8_t
mu8DamageLimit
0xF8
0x1
uint8_t
mu8ExtensionTimeCount
0xF9
0x1
uint8_t
mu8AStarType
A* Type
See AStarType
0xFA
0x1
int8_t
mi8UnlockRank
0xFB
0x5
Padding
BrnProgression::CheckpointData
Offset
Length
Type
Name
Description
Comments
0x0
0x4
uint32_t
muLandmarkId
Landmark GameDB ID
0x4
0x4
int32_t
miBlockSectionCount
Number of block sections
0x8
0x20
uint32_t[8]
mauBlockSectionIds
Block section GameDB IDs
BrnProgression::EventStartGridSlot
Offset
Length
Type
Name
Description
Comments
0x0
0x4
uint32_t
muOpponentIndex
0x4
0x4
uint32_t
muPersonalityIndex
0x8
0x4
int32_t
miFastAIBalanceGraphIndex
0xC
0x4
int32_t
miSlowAIBalanceGraphIndex
0x10
0x1
uint8_t
muColourIndex
0x11
0x1
uint8_t
muFlags
Flags
See EFlags
0x12
0x2
Padding
BrnProgression::Rival
Offset
Length
Type
Name
Description
Comments
0x0
0x8
CgsID
mId
GameDB ID
0x8
0x8
CgsID
mCarId
Vehicle to use
0x10
0x2
int16_t
miPersonalityIndex
0x12
0x2
int16_t
miPursuitTarget
0x14
0x1
int8_t
miDistrictIndex
0x15
0x1
int8_t
miUnlockRank
0x16
0x1
uint8_t
mu8NumMedalsToUnlock
0x17
0x1
bool
mbIsUsedForRankUpGiftCar
0x18
0x20
char[32]
macName
Rival name
BrnProgression::OpponentBalanceData
Offset
Length
Type
Name
Description
Comments
0x0
0x20
float32_t[8]
mafAheadGraphPoints
0x20
0x20
float32_t[8]
mafBehindGraphPoints
0x40
0x4
float32_t
mfCatchUpCutOffRatio
BrnProgression::EventRacerPersonality
Offset
Length
Type
Name
Description
Comments
0x0
0x4
float32_t
mfMinAggression
0x4
0x4
float32_t
mfMaxAggression
0x8
0x4
float32_t
mfSkill
0xC
0x4
float32_t
mfSpeed
BrnProgression::TrophyUnlockData
Offset
Length
Type
Name
Description
Comments
0x0
0x4
uint32_t
muNumberTrophyUnlock
Always 0
0x4
0x2
uint16_t
mu16UnlockType
See UnlockType
0x6
0x2
Padding
0x8
0x8
CgsID
mCarUnlockId
ID of vehicle to unlock
BrnProgression::CarOpponentSet
Offset
Length
Type
Name
Description
Comments
0x0
0x80
CarOpponent [8]
maCarOpponents
0x80
0x8
CgsID
mPlayerCarId
0x88
0x4
int32_t
miRank
0x8C
0x4
int32_t
miOpponentCount
BrnProgression::CarOpponent
Offset
Length
Type
Name
Description
Comments
0x0
0x8
CgsID
mCarId
0x8
0x4
int32_t
miPersonalityIndex
0xC
0x4
Padding
Enumerations
BrnProgression::RaceEventData::EFlags
Name
Value
Comments
E_FLAG_CRASHBREAKER
0x1
Unused in final game
?
0x2
Midnight ride?
?
0x4
Island event
BrnProgression::RaceEventData::EModeType
Name
Value
Comments
E_MODE_INVALID
-1
E_MODE_RACE
0
E_MODE_ROAD_RAGE
1
E_MODE_STUNT_ATTACK
2
E_MODE_SURVIVOR
3
E_MODE_BURNING_ROUTE
4
E_MODE_PURSUIT
5
E_MODE_COUNT
6
BrnProgression::RaceEventData::EOnlineModeType
Name
Value
Comments
E_ONLINE_MODE_RACE
0
E_ONLINE_MODE_ROAD_RAGE
1
E_ONLINE_MODE_BURNING_HOME_RUN
2
E_ONLINE_MODE_COUNT
3
BrnProgression::RaceEventData::AStarType
Name
Value
Comments
E_ASTAR_TYPE_EUCLIDEAN
0
E_ASTAR_TYPE_EUCLIDEAN_X_BIASED
1
E_ASTAR_TYPE_EUCLIDEAN_Y_BIASED
2
BrnProgression::EventStartGridSlot::EFlags
Name
Value
Comments
E_FLAG_CAN_DEVIATE_FROM_ROUTE
0x1
E_FLAG_CAN_TAKE_SHORTCUTS
0x2
BrnProgression::TrophyUnlockData::UnlockType
Name
Value
Comments
E_UNLOCKTYPE_NONE
0
E_UNLOCKTYPE_COMPLETE_ALL_STUNTS
1
E_UNLOCKTYPE_COMPLETE_ALL_JUMPS
2
E_UNLOCKTYPE_COMPLETE_ALL_SMASHES
3
E_UNLOCKTYPE_COMPLETE_ALL_TAKEDOWNS
4
E_UNLOCKTYPE_COMPLETE_ALL_CRASHES
5
E_UNLOCKTYPE_COMPLETE_ALL_TIMEROADRULES
6
E_UNLOCKTYPE_COMPLETE_ALL_CRASHROADRULES
7
E_UNLOCKTYPE_COMPLETE_ALL_ROADRULES
8
E_UNLOCKTYPE_COMPLETE_ALL_JUNCTIONEVENTS
9
E_UNLOCKTYPE_COMPLETE_ALL_ONLINECHALLENGE
10
E_UNLOCKTYPE_COMPLETE_ALL_RACES
11
E_UNLOCKTYPE_COMPLETE_ALL_ROADRAGES
12
E_UNLOCKTYPE_COMPLETE_ALL_BURNINGROUTES
13
E_UNLOCKTYPE_COMPLETE_ALL_ELIMINATORS
14
E_UNLOCKTYPE_COMPLETE_ALL_SURVIVORS
15
E_UNLOCKTYPE_COMPLETE_ALL_STUNTATTACK
16
E_UNLOCKTYPE_FIND_ALL_GASSTATIONS
17
E_UNLOCKTYPE_FIND_ALL_JUNKYARDS
18
E_UNLOCKTYPE_FIND_ALL_PAINTSHOPS
19
E_UNLOCKTYPE_FIND_ALL_BODYSHOPS
20
E_UNLOCKTYPE_FIND_ALL_DRIVE_THRUS
21
E_UNLOCKTYPE_NUM_MEDELS
22
E_UNLOCKTYPE_NUM_ROADRULES
23
E_UNLOCKTYPE_NUM_TIME_ROADRULES
24
E_UNLOCKTYPE_NUM_CRASH_ROADRULES
25
E_UNLOCKTYPE_NUM_NORMALTAKEDOWNS
26
E_UNLOCKTYPE_NUM_SIGNATURETAKEDOWNS
27
E_UNLOCKTYPE_NUM_JUMPS
28
E_UNLOCKTYPE_NUM_SMASHES
29
E_UNLOCKTYPE_NUM_STUNTS
30
E_UNLOCKTYPE_NUM_ONLINE_VERTICLE_TAKEDOWNS
31
E_UNLOCKTYPE_NUM_PERCENTAGE_PARALLELPARK_ONLINE
32
E_UNLOCKTYPE_NUM_OF_EACH_ONLINE_EVENT_COMPLETE
33
E_UNLOCKTYPE_NUM_MUG_SHOTS_COLLECTED
34
E_UNLOCKTYPE_COUNT
35