Burnout Game Data (Takedown-Dominator): Difference between revisions
Content added Content deleted
AcuteSyntax (talk | contribs) |
AcuteSyntax (talk | contribs) No edit summary |
||
Line 28: | Line 28: | ||
| 0x00 || Version number || uint || 0x11 |
| 0x00 || Version number || uint || 0x11 |
||
|- |
|- |
||
| 0x08 || Stage data IDs || GtID[] || || |
| 0x08 || Stage data IDs || [[GtID]][] || || |
||
|- |
|- |
||
| 0x648 || Stage data offsets || [[Burnout_Game_Data#Stage_Data|Stage Data]]*[] || |
| 0x648 || Stage data offsets || [[Burnout_Game_Data#Stage_Data|Stage Data]]*[] || |
||
Line 36: | Line 36: | ||
| 0x96C || Single race data offset || [[Burnout_Game_Data#Single_Race_Data|Single Race Data]]* || || |
| 0x96C || Single race data offset || [[Burnout_Game_Data#Single_Race_Data|Single Race Data]]* || || |
||
|- |
|- |
||
| 0x970 || Track data offset || Track Data* || || |
| 0x970 || Track data offset || [[Burnout_Game_Data#Track_Data|Track Data]]* || || |
||
|- |
|- |
||
| 0x974 || Traffic data offset || Traffic Data* || || |
| 0x974 || Traffic data offset || Traffic Data* || || |
||
Line 42: | Line 42: | ||
| 0x978 || Traffic lanes data offset || Traffic Lanes Data* || || |
| 0x978 || Traffic lanes data offset || Traffic Lanes Data* || || |
||
|- |
|- |
||
| 0x97C || AI lanes data offset || AI Lanes Data* |
| 0x97C || AI lanes data offset || [[Burnout_Game_Data#AI_Lanes_Data|AI Lanes Data]]* || || |
||
|- |
|- |
||
| 0x980 || Camera data offset || Camera Data* || || |
| 0x980 || Camera data offset || Camera Data* || || |
||
Line 98: | Line 98: | ||
|- |
|- |
||
| 0x3E1 || Crash golf par || int8 || || |
| 0x3E1 || Crash golf par || int8 || || |
||
|- |
|||
| 0x3E4 || Pad || uint8[] || || |
|||
|- |
|||
| 0x3E8 || Crash golf target || int || || |
|||
|} |
|} |
||
Line 144: | Line 148: | ||
|- |
|- |
||
| 0x2010 || Driver count || int[9] || || |
| 0x2010 || Driver count || int[9] || || |
||
|} |
|||
=== Track Data === |
|||
{| class="wikitable" |
|||
! Offset |
|||
! Name |
|||
! Type |
|||
! Value |
|||
! Notes |
|||
|- |
|||
| 0x00 || Start positions || [[Burnout_Game_Data#Start_Position|Start Position]][6] || || |
|||
|- |
|||
| 0x1E0 || Start lines || Start Line || || |
|||
|- |
|||
| 0x2E0 || Finish lines || Finish Line || || |
|||
|- |
|||
| 0x470 || Signature takedowns offset || [[Burnout_Game_Data#Signature_Takedown|Signature Takedown]]*[] || || |
|||
|- |
|||
| 0x474 || Crash Mode pickups offset || Crash Pickup*[] || || |
|||
|- |
|||
| 0x478 || Crash Mode ramps offset || Crash Ramp*[] || || |
|||
|- |
|||
| 0x47C || Version number || uint || 0x08 || |
|||
|- |
|||
| 0x480 || Intro sequences || int[] || || |
|||
|- |
|||
| 0x488 || Start line count || int || || |
|||
|- |
|||
| 0x48C || Finish line count || int || || |
|||
|- |
|||
| 0x490 || Split time checkpoint count || int || || |
|||
|- |
|||
| 0x494 || Signature takedown count || int || || |
|||
|- |
|||
| 0x498 || Crash Mode pickup count || int || || |
|||
|- |
|||
| 0x49C || Crash Mode ramp count || int || || |
|||
|} |
|||
==== Start Position ==== |
|||
{| class="wikitable" |
|||
! Offset |
|||
! Name |
|||
! Type |
|||
! Value |
|||
! Notes |
|||
|- |
|||
| 0x00 || Matrix || Matrix3x4 || || |
|||
|- |
|||
| 0x40 || Stream unit index || int || || |
|||
|- |
|||
| 0x44 || AI lane index || int || || |
|||
|- |
|||
| 0x48 || AI lane segment index || int || || |
|||
|- |
|||
| 0x4C || Pad || int || || |
|||
|} |
|||
==== Signature Takedown ==== |
|||
{| class="wikitable" |
|||
! Offset |
|||
! Name |
|||
! Type |
|||
! Value |
|||
! Notes |
|||
|- |
|||
| 0x00 || Matrix || Matrix3x4 || || |
|||
|- |
|||
| 0x40 || Type || ESignatureTakedownType || || |
|||
|} |
|||
=== AI Lanes Data === |
|||
{| class="wikitable" |
|||
! Offset |
|||
! Name |
|||
! Type |
|||
! Value |
|||
! Notes |
|||
|- |
|||
| 0x00 || Lane data version number || int || 0x07 || |
|||
|- |
|||
| 0x04 || Lane count || int || || |
|||
|- |
|||
| 0x08 || Slice count || int || || |
|||
|- |
|||
| 0x0C || Environment slice count || int || || |
|||
|- |
|||
| 0x10 || Corner count || int || || |
|||
|- |
|||
| 0x14 || Checkpoint count || int || || |
|||
|- |
|||
| 0x18 || Crossover slice count || int || || |
|||
|- |
|||
| 0x1C || Lanes offset || [[Burnout_Game_Data#AI_Lane|AI Lane]]*[] || || Pointer to an array of AI Lanes |
|||
|- |
|||
| 0x20 || Slices offset || [[Burnout_Game_Data#Slice|Slice]]*[] || || Pointer to an array of Slices |
|||
|- |
|||
| 0x24 || Environment slices offset || [[Burnout_Game_Data#Environment_Slice|Environment Slice]]*[] || || Pointer to an array of Environment Slices |
|||
|- |
|||
| 0x28 || Corners offset || Corner*[] || || Pointer to an array of Corners |
|||
|- |
|||
| 0x2C || Crossover slices offset || Crossover Slice*[] || || Pointer to an array of Crossover Slices |
|||
|- |
|||
| 0x30 || Nodes offset || Node*[] || || Pointer to an array of Nodes |
|||
|- |
|||
| 0x34 || Checkpoints || [[Burnout_Game_Data#AI_Checkpoint|AI Checkpoint]][] || || |
|||
|- |
|||
| 0xB4 || Color occluded || int || || |
|||
|- |
|||
| 0xB4 || Color visible || int || || |
|||
|} |
|||
==== AI Checkpoint ==== |
|||
{| class="wikitable" |
|||
! Offset |
|||
! Name |
|||
! Type |
|||
! Value |
|||
! Notes |
|||
|- |
|||
| 0x00 || Distance || float || || |
|||
|- |
|||
| 0x04 || Minimum time || float || || |
|||
|- |
|||
| 0x08 || Maximum time || float || || |
|||
|- |
|||
| 0x0C || Slice || uint16 || || |
|||
|- |
|||
| 0x0E || Pad || uint16 || || |
|||
|} |
|||
==== AI Lane ==== |
|||
{| class="wikitable" |
|||
! Offset |
|||
! Name |
|||
! Type |
|||
! Value |
|||
! Notes |
|||
|- |
|||
| 0x00 || Data || word* || || |
|||
|- |
|||
| 0x04 || Index || int || || |
|||
|} |
|||
==== Slice ==== |
|||
{| class="wikitable" |
|||
! Offset |
|||
! Name |
|||
! Type |
|||
! Value |
|||
! Notes |
|||
|- |
|||
| 0x00 || Cumulative length || float || || |
|||
|- |
|||
| 0x04 || Indicator || uint8 || || |
|||
|- |
|||
| 0x05 || Weather intensity || uint8 || || |
|||
|- |
|||
| 0x06 || Pad 1 || int8 || || |
|||
|- |
|||
| 0x07 || Pad 2 || int8 || || |
|||
|} |
|||
==== Environment Slice ==== |
|||
''Not to be confused with [[Environment Track Data]].'' |
|||
{| class="wikitable" |
|||
! Offset |
|||
! Name |
|||
! Type |
|||
! Value |
|||
! Notes |
|||
|- |
|||
| 0x00 || Slice index || int || || |
|||
|- |
|||
| 0x04 || Sky bloom color RGB || uint8[3] || || |
|||
|- |
|||
| 0x07 || Sky color intensity || uint8 || || |
|||
|- |
|||
| 0x08 || Specular color RGB || uint8[3] || || |
|||
|- |
|||
| 0x0B || Specular intensity || uint8 || || |
|||
|- |
|||
| 0x0C || Cloud color RGB || uint8[3] || || |
|||
|- |
|||
| 0x0F || World brightness intensity || uint8 || || |
|||
|- |
|||
| 0x10 || Bloom threshold || uint8 || || |
|||
|- |
|||
| 0x11 || World bloom intensity || uint8 || || |
|||
|- |
|||
| 0x12 || Environment map intensity || uint8 || || |
|||
|- |
|||
| 0x13 || Cloud intensity || uint8 || || |
|||
|- |
|||
| 0x14 || Flags || int || || |
|||
|} |
|} |
Revision as of 19:04, 28 April 2021
The Burnout Game Data format contains configuration data and settings for a given track, such as traffic density levels, whether the track is forward or reverse, spawn coordinates for player and traffic vehicles, the start/end location of a lap, signature takedown data, and much more. It uses the extension .BGD
.
This page documents the BGD version used by the Takedown-era Burnout games; see the Burnout 2 Game Data page for documentation of the rather different and much older version of the format used by Burnout 2: Point of Impact.
Versions
BGD uses a single number at the very start of the file to indicate its version.
Version | |||||||
---|---|---|---|---|---|---|---|
0x07 | 0x08 | 0x09 | 0x10 | 0x11 | 0x13 | 0x0B | |
Date | Apr 2004 | Jun 2004 | Jul 2004 | May 2005 | Jul 2005 | Jan 2007 | Feb 2007 |
Games | Takedown (Early Demo) | Takedown (Preview Build) | Takedown Legends |
Revenge (2005, Early Demo) | Revenge (2005) | Dominator(PS2) | Dominator(PSP) |
Layout (Version 0x11)
Game Data
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Version number | uint | 0x11 | |
0x08 | Stage data IDs | GtID[] | ||
0x648 | Stage data offsets | Stage Data*[] | ||
0x968 | Stage count | int | ||
0x96C | Single race data offset | Single Race Data* | ||
0x970 | Track data offset | Track Data* | ||
0x974 | Traffic data offset | Traffic Data* | ||
0x978 | Traffic lanes data offset | Traffic Lanes Data* | ||
0x97C | AI lanes data offset | AI Lanes Data* | ||
0x980 | Camera data offset | Camera Data* | ||
0x984 | Detour data offset | Detour Data* |
Stage Data
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Drivers | AI Driver[6] | Array of 6 driver data blocks; each block is 0x98 in length. | |
0x390 | Track ID | GtID | ||
0x398 | Stage ID | GtID | ||
0x3A0 | Gold medal threshold | float | ||
0x3A4 | Silver medal threshold | float | ||
0x3A8 | Bronze medal threshold | float | ||
0x3AC | Time limit | float | ||
0x3B0 | Driver count | int | 0x06 | |
0x3B4 | Lap count | int | ||
0x3B8 | Track data size | int32 | ||
0x3BC | Track data offset | Track Data* | ||
0x3C0 | Traffic data size | int32 | ||
0x3C4 | Traffic data offset | Traffic Data* | ||
0x3C8 | Traffic lanes size | int32 | ||
0x3CC | Traffic lanes offset | Traffic Lanes Data* | ||
0x3D0 | AI lanes size | int32 | ||
0x3D4 | AI lanes offset | AI Lanes Data* | ||
0x3D8 | Camera data size | int32 | ||
0x3DC | Camera data offset | Camera Data* | ||
0x3E0 | Hard start | uint8 | ||
0x3E1 | Crash golf par | int8 | ||
0x3E4 | Pad | uint8[] | ||
0x3E8 | Crash golf target | int |
AI Driver
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Vehicle class ID | GtID | ||
0x08 | Vehicle ID | GtID | ||
0x10 | Minimum split values | float[16] | ||
0x50 | Maximum split values | float[16] | ||
0x90 | Aggression | uint8 | ||
0x91 | Maximum aggression | uint8 | ||
0x92 | Delta aggression | uint8 | ||
0x93 | Catchup tailoff | uint8 | ||
0x94 | Vehicle color | int8 | ||
0x95 | Takedown difficulty | int8 | ||
0x96 | Flags | int8 | ||
0x97 | Difficulty | uint8 |
Single Race Data
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Driver arrays | AI Driver[9][6] | ||
0x2010 | Driver count | int[9] |
Track Data
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Start positions | Start Position[6] | ||
0x1E0 | Start lines | Start Line | ||
0x2E0 | Finish lines | Finish Line | ||
0x470 | Signature takedowns offset | Signature Takedown*[] | ||
0x474 | Crash Mode pickups offset | Crash Pickup*[] | ||
0x478 | Crash Mode ramps offset | Crash Ramp*[] | ||
0x47C | Version number | uint | 0x08 | |
0x480 | Intro sequences | int[] | ||
0x488 | Start line count | int | ||
0x48C | Finish line count | int | ||
0x490 | Split time checkpoint count | int | ||
0x494 | Signature takedown count | int | ||
0x498 | Crash Mode pickup count | int | ||
0x49C | Crash Mode ramp count | int |
Start Position
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Matrix | Matrix3x4 | ||
0x40 | Stream unit index | int | ||
0x44 | AI lane index | int | ||
0x48 | AI lane segment index | int | ||
0x4C | Pad | int |
Signature Takedown
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Matrix | Matrix3x4 | ||
0x40 | Type | ESignatureTakedownType |
AI Lanes Data
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Lane data version number | int | 0x07 | |
0x04 | Lane count | int | ||
0x08 | Slice count | int | ||
0x0C | Environment slice count | int | ||
0x10 | Corner count | int | ||
0x14 | Checkpoint count | int | ||
0x18 | Crossover slice count | int | ||
0x1C | Lanes offset | AI Lane*[] | Pointer to an array of AI Lanes | |
0x20 | Slices offset | Slice*[] | Pointer to an array of Slices | |
0x24 | Environment slices offset | Environment Slice*[] | Pointer to an array of Environment Slices | |
0x28 | Corners offset | Corner*[] | Pointer to an array of Corners | |
0x2C | Crossover slices offset | Crossover Slice*[] | Pointer to an array of Crossover Slices | |
0x30 | Nodes offset | Node*[] | Pointer to an array of Nodes | |
0x34 | Checkpoints | AI Checkpoint[] | ||
0xB4 | Color occluded | int | ||
0xB4 | Color visible | int |
AI Checkpoint
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Distance | float | ||
0x04 | Minimum time | float | ||
0x08 | Maximum time | float | ||
0x0C | Slice | uint16 | ||
0x0E | Pad | uint16 |
AI Lane
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Data | word* | ||
0x04 | Index | int |
Slice
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Cumulative length | float | ||
0x04 | Indicator | uint8 | ||
0x05 | Weather intensity | uint8 | ||
0x06 | Pad 1 | int8 | ||
0x07 | Pad 2 | int8 |
Environment Slice
Not to be confused with Environment Track Data.
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Slice index | int | ||
0x04 | Sky bloom color RGB | uint8[3] | ||
0x07 | Sky color intensity | uint8 | ||
0x08 | Specular color RGB | uint8[3] | ||
0x0B | Specular intensity | uint8 | ||
0x0C | Cloud color RGB | uint8[3] | ||
0x0F | World brightness intensity | uint8 | ||
0x10 | Bloom threshold | uint8 | ||
0x11 | World bloom intensity | uint8 | ||
0x12 | Environment map intensity | uint8 | ||
0x13 | Cloud intensity | uint8 | ||
0x14 | Flags | int |