Vehicle List/Burnout Paradise: Difference between revisions

m
Update flags again
(Add version 1.7)
m (Update flags again)
 
(19 intermediate revisions by 3 users not shown)
Line 1:
{{ParadiseResourceTypeInfobox
| name = VehicleList
| example = [[File:Paradise VehicleList Example.png|frameless|300px]]<br />A VehicleList shown in Bundle Manager.
| resourcenames = B5VehicleList
| id = 0x10005
| category = Game-specific<br />(Burnout Paradise)
| memdist = Main Memory only
| editor = Yes<br />Use [https://github.com/burninrubber0/Bundle-Manager/releases/latest Bundle Manager]
}}
 
{{subpage|Previous versions|text=Description of the Vehicle List changes since the first version of the game.}}
{{subpage|Development|text=Description of the Vehicle List changes during development of the game.}}
 
The VehicleListVehicle containsList theresource allcontains themost relevanthigh-level information foron vehicles in ''[[Burnout Paradise.]]'', Thesuch informationas istheir storedID, injunkyard \VEHICLES\VEHICLELIST.BUNDLEstats, sound IDs and canmore. beIt editedis withstored [https:in VEHICLES//githubVEHICLELIST.BUNDLE.com/burninrubber0/Bundle-Manager/releases Bundle Manager]
 
== v1.7 ==
= Junkyard stats =
All junkyard stats are controlled via the Vehicle List's GUI stat fields.
 
=== Speed/boost ===
Speed stats are based on vehicles' top speeds when not boosting; similarly, boost stats are based on the top speeds while using boost. Both use the same system for calculating stats. While the numbers are liable to vary, they are generally accurate to Paradise Cars.
 
=== VehicleListResource ===
{| class="wikitable"
! Stat !! Top speed
! Offset !! Size !! Type !! Name !! Description !! More Information !! Comments
|-
| 1 || <121 mph<br/>(<195 km/h)
| 0x0 || 0x4 || uint32_t || muNumVehicles || No. vehicles || ||
|-
| 2 || 121-132 mph<br/>(195-212 km/h)
| 0x4 || 0x4 || VehicleListEntry * || mpEntries || Vehicles offset || VehicleListEntry format ||
|-
| 3 || 133-144 mph<br/>(214-232 km/h)
| 0x8 || 0x8 || uint64_t || mu16BytePad || padding || ||
|}
=== VehicleListEntry ===
{| class="wikitable"
! Offset !! Size !! Type !! Name !! Description !! More Information !! Comments
|-
| 4 || 145-155 mph<br/>(233-249 km/h)
| 0x0 || 0x8 || CgsID || mId || Vehicle ID || Decodes to CarID e.g. XASBSCB1 || Use encdec.rb or BurnoutHasher to decode
|-
| 5 || 156-167 mph<br/>(251-269 km/h)
| 0x8 || 0x8 || CgsID || mParentId || Parent vehicle ID || Decodes to CarID e.g. PASBSC01 || Use encdec.rb or BurnoutHasher to decode
|-
| 6 || 168-178 mph<br/>(270-286 km/h)
| 0x10 || 0x20 || char[32] || mDefaultWheelName || Wheel name || ||
|-
| 7 || 179-187 mph<br/>(288-301 km/h)
| 0x30 || 0x40 || char[64] || macVehicleName || Vehicle name || ||
|-
| 8 || 188-194 mph<br/>(303-312 km/h)
| 0x70 || 0x20 || char[32] || macManufacturerName || Manufacturer name || ||
|-
| 9 || 195-198 mph<br/>(314-319 km/h)
| 0x90 || 0xC || VehicleListEntryGamePlayData || mGamePlayData || || GamePlayData Format ||
|-
| 10 || >198 mph<br/>(>319 km/h)
| 0x9C || 0x4 || || || padding || ||
|-
| 0xA0 || 0x8 || AttribSysCollectionKey || mAttribCollectionKey || burnoutcarasset ID || burnoutcarasset collection name || lookup8 encoded in AttribSys
|-
| 0xA8 || 0x40 || VehicleListEntryAudioData || mAudioData || || AudioData Format ||
|-
| 0xE8 || 0x10 || ? || ? || ? || || Always null
|-
| 0xF8 || 0x4 || uint32_t || || Junkyard Category || 0x00000001 (Bit 0) = Paradise Cars || "By default, only WIP secondary finishes have no category. Primary finishes with no category disappear from the Junkyard. Vehicles can be in multiple categories by combining bits e.g. 01000001 = Paradise Cars+Cop Cars"
|-
| || || || || || 0x00000002 (Bit 1) = Paradise Bikes ||
|-
| || || || || || 0x00000004 (Bit 2) = Online Cars ||
|-
| || || || || || 0x00000008 (Bit 3) = Toy Vehicles ||
|-
| || || || || || 0x00000010 (Bit 4) = Legendary Cars ||
|-
| || || || || || 0x00000020 (Bit 5) = Boost Special Cars ||
|-
| || || || || || 0x00000040 (Bit 6) = Cop Cars ||
|-
| || || || || || 0x00000080 (Bit 7) = Big Surf Island Cars ||
|-
| High 0xFC || 0x1 || uint8_t || muCarType || Vehicle Type || 0 = Car ||
|-
| || || || || || 1 = Bike ||
|-
| || || || || || 2 = Plane ||
|-
| Low 0xFC || || || || Boost Type || 0 = Speed ||
|-
| || || || || || 1 = Aggression ||
|-
| || || || || || 2 = Stunt/Switchable ||
|-
| || || || || || 3 = None ||
|-
| || || || || || 4 = Locked ||
|-
| 0xFD || 0x1 || uint8_t || muLiveryType || Finish Type || 00 = Primary finish (primary vehicle) || E_LIVERY_DEFAULT in ELiveryType
|-
| || || || || || 01 = Secondary finish || E_LIVERY_COLOUR in ELiveryType
|-
| || || || || || 02 = Primary finish (Burning Route vehicle) || E_LIVERY_PATTERN in ELiveryType
|-
| || || || || || 03 = Platinum finish || E_LIVERY_SILVER in ELiveryType
|-
| || || || || || 04 = Gold finish || E_LIVERY_GOLD in ELiveryType
|-
| || || || || || 05 = Community finish || Tiger GT/Tempesta Dream excluded from 05
|-
| 0xFE || 0x1 || uint8_t || muTopSpeedNormal || MaxSpeed || Controlled by AttribSys || Default range: 100-201 (dec)
|-
| 0xFF || 0x1 || uint8_t || muTopSpeedBoost || MaxBoostSpeed || Controlled by AttribSys || Default range: 120-200 (dec)
|-
| 0x100 || 0x1 || uint8_t || muTopSpeedNormalGUIStat || Speed Rating || Speed Stat Table ||
|-
| 0x101 || 0x1 || uint8_t || muTopSpeedBoostGUIStat || Boost Rating || Speed Stat Table ||
|-
| 0x102 || 0x1 || uint8_t || muColourIndex || Default Color || Type 00/01/02 range: 00-18 || Info is for colors listed in PlayerCarColours file
|-
| || || || || || Type 03 range: 00-01 ||
|-
| || || || || || Type 04 range: 00-07 ||
|-
| 0x103 || 0x1 || uint8_t || muPaletteIndex || Default Color Type || 00 = Gloss || Info is for types listed in PlayerCarColours file
|-
| || || || || || 01 = Metallic ||
|-
| || || || || || 02 = Pearlescent ||
|-
| || || || || || 03 = Gold/Platinum ||
|-
| || || || || || 04 = Unused ||
|-
| 0x104 || 0x4 || || || padding || ||
|}
 
=== GamePlayData ===
=== Strength ===
Unlike the Speed and Boost stats, the Strength stat is not based on any vehicle attribute(s). Instead, it is used as the determining value for how many times a vehicle has to wreck to lose a Marked Man or Road Rage event. It has no bearing on the actual strength of the vehicle in crashes or takedowns and appears to have been chosen arbitrarily by Criterion.
 
{| class="wikitable"
! Stat !! Crashes to lose event
! Offset !! Size !! Type !! Name !! Description !! More Information !! Comments
|-
| 1 || 2 crashes
| 0x0 || 0x4 || float32_t || mfDamageLimit || Damage Limit || Always 1 ||
|-
| 2 || 2 crashes
| 0x4 || 0x4 || uint32_t || mxFlags || 0x00000001 (Bit 0) = IsRaceVehicle || Selectability || "Changes: 1.0: Only bits 0-6 used 1.3: Bits 7-10 added, never set. WIP (bit 11), V1.0 (bit 12), and V1.3 (bit 13) added 1.4: Bit 14 (V1.4) added 1.6: Bit 7 used, always set. First car within a speed range (bit 8) used. 1.7: Bits 4-8 moved to bits 3-7. Switchable boost (bit 8) used. V1.7 (bit 17) added. 1.8: V1.8 (bit 18) added. 1.9: V1.9 (bit 19) added. Bit 7 excludes all but main cars. See the Speed Stats sheet for details on ratings."
|-
| 3 || 3 crashes
| || || || || 0x00000002 (Bit 1) = CanCheckTraffic? || Always 0 ||
|-
| 4 || 4 crashes
| || || || || 0x00000004 (Bit 2) = CanBeChecked? || Always 0 ||
|-
| 5 || 4 crashes
| || || || || 0x00000008 (Bit 3) = IsTrailer || ||
|-
| 6 || 4 crashes
| || || || || 0x00000010 (Bit 4) = CanTowTrailer || ArticCabs have this set ||
|-
| 7 || 4 crashes
| || || || || 0x00000020 (Bit 5) = CanBePainted || Color changeability ||
|-
| 8 || 5 crashes
| || || || || 0x00000040 (Bit 6) = ? || Always 1 ||
|-
| 9 || 5 crashes
| || || || || 0x00000080 (Bit 7) = First car within a speed range || ||
|-
| 10 || 5 crashes
| || || || || 0x00000100 (Bit 8) = Has Switchable Boost || ||
|-
| || || || || 0x00000200 (Bit 9) = ? || Always 0 ||
|-
| || || || || 0x00000400 (Bit 10) = ? || Versioning. Always 0 ||
|-
| || || || || 0x00000800 (Bit 11) = Is WIP/dev || ||
|-
| || || || || 0x00001000 (Bit 12) = Is from 1.0 || Paradise Cars ||
|-
| || || || || 0x00002000 (Bit 13) = Is from 1.3 || Online Cars/Community Cars ||
|-
| || || || || 0x00004000 (Bit 14) = Is from 1.4 || Paradise Bikes ||
|-
| || || || || 0x00008000 (Bit 15) = Is from 1.5 || ||
|-
| || || || || 0x00010000 (Bit 16) = Is from 1.6 || ||
|-
| || || || || 0x00020000 (Bit 17) = Is from 1.7 || Toys/Legendary Cars/Boost Specials ||
|-
| || || || || 0x00040000 (Bit 18) = Is from 1.8 || Cop Cars ||
|-
| || || || || 0x00080000 (Bit 19) = Is from 1.9 || Island Cars ||
|-
| 0x8 || 0x1 || uint8_t || Length || Boost Length || 00 = None || Default values listed.
|-
| || || || || || 03 = Aggression ||
|-
| || || || || || 04 = Speed ||
|-
| || || || || || 07 = Stunt ||
|-
| 0x9 || 0x1 || uint8_t || || Rank required || 00 = Learner's Permit ||
|-
| || || || || || 01 = D Class License ||
|-
| || || || || || 02 = C Class License ||
|-
| || || || || || 03 = B Class License ||
|-
| || || || || || 04 = A Class License ||
|-
| || || || || || 05 = Burnout License ||
|-
| 0xA || 0x1 || uint8_t || Capacity || Boost Capacity || "00 = Default (matches 05) Traffic cars use different values"
|-
| 0xB || 0x1 || uint8_t || || Strength Rating || ||
|}
 
=== AudioData ===
= Structures =
=== BrnResource::VehicleListResource ===
==== 32-bit ====
{| class="wikitable"
! Offset !! SizeLength !! Type !! Name !! Description !! More Information !! Comments
|-
| 0x0 || 0x4 || uint32_t || muNumVehicles || Number of vehicles ||
| 0x0 || 0x8 || CgsID || mExhaustName || Exhaust CgsID || Decodes to engine ID e.g. DRAG_EX || Use encdec.rb or BurnoutHasher to decode
|-
| 0x4 || 0x4 || [[#BrnResource::VehicleListEntry|VehicleListEntry]]* || mpEntries || Vehicles ||
| 0x8 || 0x8 || AttribSysCollectionKey || mExhaustEntityKey || Exhaust ID || Exhaust vehicleengine collection name || lookup8 encoded in AttribSys. Used under SoundExhaustAsset and ExhaustEntityKey.
|-
| 0x8 || 0x8 || uint64_t || mu16BytePad || Padding ||
| 0x10 || 0x8 || AttribSysCollectionKey || mEngineEntityKey || Engine ID || Engine vehicleengine collection name || lookup8 encoded in AttribSys. Used under SoundEngineAsset and EngineEntityKey.
|-
| 0x18 || 0x8 || CgsID || mEngineName || Engine CgsID || Decodes to engine ID e.g. DRAG_ENG || Use encdec.rb or BurnoutHasher to decode
|-
| 0x20 || 0x4 || Name || mRivalUnlockName || Class Unlock Stream Hash || BFA57004 = SuperClassUnlock ||
|-
| || || || || || EF6F3448 = MuscleClassUnlock ||
|-
| || || || || || D9917B81 = F1ClassUnlock ||
|-
| || || || || || C9D8E2A3 = TunerClassUnlock ||
|-
| || || || || || 655484B3 = HotRodClassUnlock ||
|-
| || || || || || E99AE3EB = RivalGen ||
|-
| 0x24 || 0x4 || || || padding || ||
|-
| 0x28 || 0x8 || AttribSysCollectionKey || mWonCarVoiceOverKey || Car Shutdown Streams || languagestreamconfiguration collection name in BURNOUTGLOBALDATA || Contains 8 CgsSoundPlaybackHashes to identify CAR_SHUTDOWN streams.
|-
| 0x30 || 0x8 || AttribSysCollectionKey || mRivalReleasedVoiceOverKey || Car Released Streams || languagestreamconfiguration collection name in BURNOUTGLOBALDATA || Contains 8 CgsSoundPlaybackHashes to identify CAR_RELEASED streams.
|-
| 0x38 || 0x4 || uint32_t || muiAIMusicLoopContentSpec || "AI Music Stream Hash Name hash of full gamedb path" || 9D3C81A9 = AI_Muscle_music1 ||
|-
| || || || || || A7AE72CB = AI_Truck_music1 ||
|-
| || || || || || 4B944D28 = AI_Tuner_muisc1 ||
|-
| || || || || || 09235CD9 = AI_Sedan_music1 ||
|-
| || || || || || E9901A8A = AI_Exotic_music1 ||
|-
| || || || || || DD342AB1 = AI_Super_muisc1 ||
|-
| 0x3C || 0x1 || uint8_t || muiAIExhaustIndex || AI Engine Stream || "01 = AIROD_EX 02 = AI_CIVIC_EX 03 = AI_GT_ENG 04 = AI_MUST_EX 05 = AI_F1_EX"
|-
| 0x3D || 0x1 || uint8_t || muiAIExhaustIndex2ndPick || AI Engine Stream 2 || ||
|-
| 0x3E || 0x1 || uint8_t || muiAIExhaustIndex3rdPick || AI Engine Stream 3 || ||
|-
| 0x3F || 0x1 || || || padding || ||
|}
=== SpeedStats (MPH) ===
 
==== 64-bit ====
{| class="wikitable"
! Offset !! 1Length !! 2Type !! 3Name !! 4Description !! 5 !! 6 !! 7 !! 8 !! 9 !! 10Comments
|-
| 0x0 || 0x8 || [[#BrnResource::VehicleListEntry|VehicleListEntry]]* || mpEntries || Vehicles ||
| Speed/Boost || ≤120 || 121-130 || 131-140 || 141-150 || 151-160 || 161-170 || 171-180 || 181-190 || 191-199 || ≥200
|}
 
== v1.0 ==
 
=== VehicleListResource ===
 
{| class="wikitable"
! Offset !! Size !! Type !! Name !! Description !! More Information !! Comments
|-
| 0x00x8 || 0x4 || uint32_t || muNumVehicles || No.Number of vehicles || ||
|-
| 0x40xC || 0x4 || VehicleListEntry *uint32_t || mpEntriesmu16BytePad || Vehicles offset || VehicleListEntry formatPadding ||
|-
| 0x8 || 0x8 || uint64_t || mu16BytePad || padding || ||
|}
 
=== BrnResource::VehicleListEntry ===
 
{| class="wikitable"
! Offset !! SizeLength !! Type !! Name !! Description !! More Information !! Comments
|-
| 0x0 || 0x8 || [[CgsID]] || mId || Vehicle ID || Decodes to CarIDcar ID, e.g., XASBSCB1 || Use encdec.rb or BurnoutHasher to decode
|-
| 0x8 || 0x8 || [[CgsID ]]|| mParentId || Parent vehicle ID || Decodes to CarIDcar ID, e.g., PASBSC01 || Use encdec.rb or BurnoutHasher to decode
|-
| 0x10 || 0x20 || char[32] || mDefaultWheelName || Wheel name || ||
|-
| 0x30 || 0x40 || char[64] || macVehicleName || Vehicle name || ||
|-
| 0x70 || 0x20 || char[32] || macManufacturerName || Manufacturer name || ||
|-
| 0x90 || 0xC || [[#BrnResource::VehicleListEntryGamePlayData|VehicleListEntryGamePlayData]] || mGamePlayData || || GamePlayData Format ||
|-
| 0x9C || 0x4 || || || padding || Padding ||
|-
| 0xA0 || 0x8 || [[#CgsAttribSys::AttribSysCollectionKey|AttribSysCollectionKey]] || mAttribCollectionKey || burnoutcarasset IDcollection ||name burnoutcarasset(gamedb collection nameID) || lookup8 encoded in vehicle AttribSys
|-
| 0xA8 || 0x40 || [[#BrnResource::VehicleListEntryAudioData|VehicleListEntryAudioData]] || mAudioData || || AudioData Format ||
|-
| 0xE8 || 0x10x10 || uint8_t? || muCarType? || Boost TypePlane-related? || 0 = Speed ||Always null
|-
| 0xF8 || 0x4 || uint32_t || ? || Junkyard category || By default, only WIP secondary finishes have no category. Primary finishes with no category disappear from the Junkyard. See [[#Category|category]]
| || || || || || 1 = Aggression ||
|-
| 0xFC || 0x1 || uint8_t || muCarType || Vehicle and boost type || High nibble is vehicle type, low nibble is boost type. Switchable boost is set by the vehicle flags but will default to the type selected here. See [[#Vehicle type|vehicle type]] and [[#BrnResource::ECarType|ECarType]]
| || || || || || 2 = Stunt ||
|-
| 0xE90xFD || 0x1 || uint8_t || muLiveryType || Finish Typetype || 00 = Primary finish (primary vehicle)See [[#BrnResource::VehicleListEntry::ELiveryType|| E_LIVERY_DEFAULT in ELiveryType]]
|-
| 0xFE || 0x1 || uint8_t || muTopSpeedNormal || MaxSpeed ||from 01 = Secondary finishAttribSys || E_LIVERY_COLOUR in ELiveryType
|-
| 0xFF || 0x1 || uint8_t || muTopSpeedBoost || MaxBoostSpeed from AttribSys ||
| || || || || || 02 = Primary finish (Burning Route vehicle) || E_LIVERY_PATTERN in ELiveryType
|-
| 0x100 || 0x1 || uint8_t || muTopSpeedNormalGUIStat || Junkyard speed stat ||
| || || || || || 03 = Platinum finish || E_LIVERY_SILVER in ELiveryType
|-
| 0x101 || 0x1 || uint8_t || muTopSpeedBoostGUIStat || Junkyard ||boost 04 = Gold finishstat || E_LIVERY_GOLD in ELiveryType
|-
| 0xEA0x102 || 0x1 || uint8_t || muTopSpeedNormalmuColourIndex || MaxDefault Speedcolor || Controlled by AttribSysindex || Default range: 137-180 (dec)
|-
| 0xEB0x103 || 0x1 || uint8_t || muTopSpeedBoostmuPaletteIndex || MaxDefault Boostcolor Speedtype || Controlled by AttribSysindex || Default range: 160-200 (dec)
|-
| 0xEC0x104 || 0x10x4 || uint8_t || muTopSpeedNormalGUIStat || Speed Rating || Speed Stat TablePadding ||
|}
 
=== BrnResource::VehicleListEntryGamePlayData ===
{| class="wikitable"
! Offset !! Length !! Type !! Name !! Description !! Comments
|-
| 0xED0x0 || 0x10x4 || uint8_tfloat32_t || muTopSpeedBoostGUIStatmfDamageLimit || BoostDamage Ratinglimit || Speed Stat Table ||Always 1
|-
| 0x4 || 0x4 || uint32_t || mxFlags || Vehicle flags || See [[#BrnResource::VehicleListEntryGamePlayData::EFlags|flags]]
| 0xEE || 0x1 || uint8_t || muColourIndex || Default Color || Type 00/01/02 range: 00-18 || Info is for colors listed in PlayerCarColours file
|-
| 0x8 || 0x1 || uint8_t || Length || Boost || Type 03 range:bar 00-01length ||
|-
| 0xEF0x9 || 0x1 || uint8_t || muPaletteIndex? || DefaultRank Colorrequired Typefor unlock || 00 = GlossSee [[#Rank|| Info is for types listed in PlayerCarColours filerank]]
|-
| 0xA || 0x1 || uint8_t || Capacity || Boost capacity || 01The =default Metallic(0) ||matches 5
|-
| 0xB || 0x1 || uint8_t || ? || Junkyard || 02 =strength Pearlescentstat ||
|-
| || || || || || 03 = Gold/Platinum ||
|}
 
=== BrnResource::VehicleListEntryAudioData ===
=== GamePlayData ===
 
{| class="wikitable"
! Offset !! SizeLength !! Type !! Name !! Description !! More Information !! Comments
|-
| 0x0 || 0x40x8 || float32_t[[CgsID]] || mfDamageLimitmExhaustName || DamageExhaust LimitCgsID || AlwaysDecodes 1to ||engine ID, e.g., DRAG_EX
|-
| 0x8 || 0x8 || [[#CgsAttribSys::AttribSysCollectionKey|AttribSysCollectionKey]] || mExhaustEntityKey || Exhaust ID || Exhaust vehicleengine collection name (gamedb ID). lookup8 encoded in AttribSys. Used under SoundExhaustAsset and ExhaustEntityKey
| 0x4 || 0x4 || uint32_t || mxFlags || 0x00000001 (Bit 0) = IsRaceVehicle || Selectability ||
|-
| 0x10 || 0x8 || [[#CgsAttribSys::AttribSysCollectionKey|AttribSysCollectionKey]] || mEngineEntityKey || Engine ID || Engine vehicleengine collection name (gamedb ID). lookup8 encoded in AttribSys. Used under SoundEngineAsset and EngineEntityKey
| || || || || 0x00000002 (Bit 1) = IsTrafficVehicle? || Always 0 ||
|-
| 0x18 || 0x8 || [[CgsID]]|| mEngineName || 0x00000004Engine (BitCgsID 2)|| =Decodes CanCheckTraffic?to ||engine AlwaysID, 0 ||e.g., DRAG_ENG
|-
| 0x20 || 0x4 || Name || mRivalUnlockName || 0x00000008Class (Bitunlock 3) = CanBeChecked?stream || AlwaysSee 0[[#Class unlock stream||class unlock stream]]
|-
| 0x24 || 0x4 || || || 0x00000010 (Bit 4) = IsTrailer || Padding ||
|-
| 0x28 || 0x8 || [[#CgsAttribSys::AttribSysCollectionKey|AttribSysCollectionKey]] || mWonCarVoiceOverKey || Car shutdown streams || languagestreamconfiguration collection name in BURNOUTGLOBALDATA. Contains 8 CgsSoundPlaybackHashes to identify CAR_SHUTDOWN streams
| || || || || 0x00000020 (Bit 5) = CanTowTrailer || ArticCabs have this set ||
|-
| 0x30 || 0x8 || [[#CgsAttribSys::AttribSysCollectionKey|AttribSysCollectionKey]] || mRivalReleasedVoiceOverKey || Car released streams || languagestreamconfiguration collection name in BURNOUTGLOBALDATA. Contains 8 CgsSoundPlaybackHashes to identify CAR_RELEASED streams
| || || || || 0x00000040 (Bit 6) = CanBePainted || Color changeability ||
|-
| 0x80x38 || 0x10x4 || uint8_tuint32_t || LengthmuiAIMusicLoopContentSpec || BoostAI Lengthmusic stream || 00See =[[#AI Nonemusic stream|| DefaultAI valuesmusic listed.stream]]
|-
| 0x3C || 0x1 || uint8_t || muiAIExhaustIndex || AI Engine Stream || 03See =[[#AI Aggressionengine stream||AI engine stream]]
|-
| 0x3D || 0x1 || uint8_t || muiAIExhaustIndex2ndPick || AI Engine Stream 2 || 04See =[[#AI Speedengine stream||AI engine stream]]
|-
| 0x3E || 0x1 || uint8_t || muiAIExhaustIndex3rdPick || AI Engine Stream 3 || 07See =[[#AI Stuntengine stream||AI engine stream]]
|-
| 0x90x3F || 0x1 || uint8_t || || Rank required || 00 = Learner's PermitPadding ||
|}
 
=== CgsAttribSys::AttribSysCollectionKey ===
{| class="wikitable"
! Offset !! Length !! Type !! Name !! Description !! Comments
|-
| 0x0 || 0x8 || int64_t || miAssetGuid || || 01 = D Class License ||
|-
| || || || || || 02 = C Class License ||
|-
| || || || || || 03 = B Class License ||
|-
| || || || || || 04 = A Class License ||
|-
| || || || || || 05 = Burnout License ||
|-
| 0xA || 0x1 || uint8_t || Capacity || Boost Capacity || "00 = Default (matches 05) Traffic cars use different values"
|-
| 0xB || 0x1 || uint8_t || || Strength Rating || ||
|}
 
= Enumerations =
=== AudioData ===
=== Category ===
 
{| class="wikitable"
! Offset !! Size !! Type !! Name !! Description !! More InformationValue !! Comments
|-
| ? || 0x1 || Paradise Cars
| 0x0 || 0x8 || CgsID || mExhaustName || Exhaust CgsID || Decodes to engine ID e.g. DRAG_EX || Use encdec.rb or BurnoutHasher to decode
|-
| ? || 0x2 || Paradise Bikes
| 0x8 || 0x8 || AttribSysCollectionKey || mExhaustEntityKey || Exhaust ID || Exhaust vehicleengine collection name || lookup8 encoded in AttribSys. Used under SoundExhaustAsset and ExhaustEntityKey.
|-
| ? || 0x4 || Online Cars
| 0x10 || 0x8 || AttribSysCollectionKey || mEngineEntityKey || Engine ID || Engine vehicleengine collection name || lookup8 encoded in AttribSys. Used under SoundEngineAsset and EngineEntityKey.
|-
| ? || 0x8 || Toy Vehicles
| 0x18 || 0x8 || CgsID || mEngineName || Engine CgsID || Decodes to engine ID e.g. DRAG_ENG || Use encdec.rb or BurnoutHasher to decode
|-
| ? || 0x10 || Legendary Cars
| 0x20 || 0x4 || Name || mRivalUnlockName || Class Unlock Stream Hash || BFA57004 = SuperClassUnlock ||
|-
| ? || 0x20 || Boost Special Cars
| || || || || || EF6F3448 = MuscleClassUnlock ||
|-
| ? || 0x40 || Cop Cars
| || || || || || D9917B81 = F1ClassUnlock ||
|-
| ? || 0x80 || Big Surf Island Cars
| || || || || || C9D8E2A3 = TunerClassUnlock ||
|-
| || || || || || 655484B3 = HotRodClassUnlock ||
|-
| || || || || || E99AE3EB = RivalGen ||
|-
| 0x24 || 0x4 || || || padding || ||
|-
| 0x28 || 0x8 || AttribSysCollectionKey || mWonCarVoiceOverKey || Car Shutdown Streams || languagestreamconfiguration collection name in BURNOUTGLOBALDATA || Contains 8 CgsSoundPlaybackHashes to identify CAR_SHUTDOWN streams.
|-
| 0x30 || 0x8 || AttribSysCollectionKey || mRivalReleasedVoiceOverKey || Car Released Streams || languagestreamconfiguration collection name in BURNOUTGLOBALDATA || Contains 8 CgsSoundPlaybackHashes to identify CAR_RELEASED streams.
|-
| 0x38 || 0x4 || uint32_t || muiAIMusicLoopContentSpec || AI Music Stream Hash Name hash of full gamedb path" || 9D3C81A9 = AI_Muscle_music1 ||
|-
| || || || || || A7AE72CB = AI_Truck_music1 ||
|-
| || || || || || 4B944D28 = AI_Tuner_muisc1 ||
|-
| || || || || || 09235CD9 = AI_Sedan_music1 ||
|-
| || || || || || E9901A8A = AI_Exotic_music1 ||
|-
| || || || || || DD342AB1 = AI_Super_muisc1 ||
|-
| 0x3C || 0x1 || uint8_t || muiAIExhaustIndex || AI Engine Stream || 01 = AIROD_EX 02 = AI_CIVIC_EX 03 = AI_GT_ENG 04 = AI_MUST_EX 05 = AI_F1_EX" ||
|-
| 0x3D || 0x1 || uint8_t || muiAIExhaustIndex2ndPick || AI Engine Stream 2 || ||
|-
| 0x3E || 0x1 || uint8_t || muiAIExhaustIndex3rdPick || AI Engine Stream 3 || ||
|-
| 0x3F || 0x1 || || || padding || ||
|}
 
=== SpeedStatsVehicle (MPH)type ===
 
{| class="wikitable"
! Name !! Value !! Comments
! || 1 || 2 || 3 || 4 || 5 || 6 || 7 || 8 || 9 || 10
|-
| ? || 0 || Car
| Speed || &lt;140 || 140-144 || 145-149 || 150-154 || 155-159 || 160-164 || 165-169 || 170-174 || 175-179 || ≥180
|-
| ? || 1 || Bike
| Boost || &lt;160 || 160-164 || 165-169 || 170-174 || 175-179 || 180-184 || 185-189 || 190-194 || 195-199 || ≥200
|}
 
== v1.3 ==
 
=== VehicleListResource ===
 
{| class="wikitable"
! Offset !! Size !! Type !! Name !! Description !! More Information !! Comments
|-
| ? || 2 || Plane
| 0x0 || 0x4 || uint32_t || muNumVehicles || No. vehicles || ||
|-
| 0x4 || 0x4 || VehicleListEntry * || mpEntries || Vehicles offset || VehicleListEntry format ||
|-
| 0x8 || 0x8 || uint64_t || mu16BytePad || padding || ||
|}
 
=== VehicleListEntryBrnResource::ECarType ===
 
{| class="wikitable"
! Offset !! Size !! Type !! Name !! Description !! More InformationValue !! Comments
|-
| E_CARTYPE_DANGER || 0 || Speed
| 0x0 || 0x8 || CgsID || mId || Vehicle ID || Decodes to CarID e.g. XASBSCB1 || Use encdec.rb or BurnoutHasher to decode
|-
| E_CARTYPE_AGGRESSION || 1 || Aggression
| 0x8 || 0x8 || CgsID || mParentId || Parent vehicle ID || Decodes to CarID e.g. PASBSC01 || Use encdec.rb or BurnoutHasher to decode
|-
| E_CARTYPE_STUNTS || 2 || Stunt
| 0x10 || 0x20 || char[32] || mDefaultWheelName || Wheel name || ||
|-
| ? || 3 || None
| 0x30 || 0x40 || char[64] || macVehicleName || Vehicle name || ||
|-
| ? || 4 || Locked
| 0x70 || 0x20 || char[32] || macManufacturerName || Manufacturer name || ||
|-
| E_CARTYPE_INVALID || 5 ||
| 0x90 || 0xC || VehicleListEntryGamePlayData || mGamePlayData || || GamePlayData Format ||
|-
| 0x9C || 0x4 || || || paddingE_CARTYPE_COUNT || 5 ||
|}
 
=== BrnResource::VehicleListEntry::ELiveryType ===
{| class="wikitable"
! Name !! Value !! Comments
|-
| E_LIVERY_DEFAULT || 0 || Primary finish (primary vehicle)
| 0xA0 || 0x8 || AttribSysCollectionKey || mAttribCollectionKey || burnoutcarasset ID || burnoutcarasset collection name || lookup8 encoded in AttribSys
|-
| E_LIVERY_COLOUR || 1 || Secondary finish
| 0xA8 || 0x40 || VehicleListEntryAudioData || mAudioData || || AudioData Format ||
|-
| E_LIVERY_PATTERN || 2 || Primary finish (Burning Route vehicle)
| 0xE8 || 0x1 || uint8_t || muCarType || Boost Type || 0 = Speed ||
|-
| E_LIVERY_SILVER || 3 || Platinum finish
| || || || || || 1 = Aggression ||
|-
| E_LIVERY_GOLD || 4 || Gold || || || 2 = Stunt || finish
|-
| ? || 5 || Community ||finish (excluding ||Tiger GT/Tempesta || 3 = None || Dream)
|-
| 0xE9 || 0x1 || uint8_t || muLiveryType || Finish Type || 00 = Primary finish (primary vehicle) || E_LIVERY_DEFAULT in ELiveryType
|-
| || || || || || 01 = Secondary finish || E_LIVERY_COLOUR in ELiveryType
|-
| || || || || || 02 = Primary finish (Burning Route vehicle) || E_LIVERY_PATTERN in ELiveryType
|-
| || || || || || 03 = Platinum finish || E_LIVERY_SILVER in ELiveryType
|-
| || || || || || 04 = Gold finish || E_LIVERY_GOLD in ELiveryType
|-
| || || || || || 05 = Community finish || Tiger GT/Tempesta Dream excluded from 05
|-
| 0xEA || 0x1 || uint8_t || muTopSpeedNormal || MaxSpeed || Controlled by AttribSys || Default range: 137-201 (dec)
|-
| 0xEB || 0x1 || uint8_t || muTopSpeedBoost || MaxBoostSpeed || Controlled by AttribSys || Default range: 160-200 (dec)
|-
| 0xEC || 0x1 || uint8_t || muTopSpeedNormalGUIStat || Speed Rating || Speed Stat Table ||
|-
| 0xED || 0x1 || uint8_t || muTopSpeedBoostGUIStat || Boost Rating || Speed Stat Table ||
|-
| 0xEE || 0x1 || uint8_t || muColourIndex || Default Color || Type 00/01/02 range: 00-18 || Info is for colors listed in PlayerCarColours file
|-
| || || || || || Type 03 range: 00-01 ||
|-
| 0xEF || 0x1 || uint8_t || muPaletteIndex || Default Color Type || 00 = Gloss || Info is for types listed in PlayerCarColours file
|-
| || || || || || 01 = Metallic ||
|-
| || || || || || 02 = Pearlescent ||
|-
| || || || || || 03 = Gold/Platinum ||
|}
 
=== BrnResource::VehicleListEntryGamePlayData::EFlags ===
=== GamePlayData ===
 
{| class="wikitable"
! Offset !! Size !! Type !! Name !! Description !! More InformationValue !! Comments
|-
| E_FLAG_IS_RACE_VEHICLE || 0x1 || Used to differentiate between player and traffic cars.<br>Allows selecting this vehicle in the junkyard
| 0x0 || 0x4 || float32_t || mfDamageLimit || Damage Limit || Always 1 ||
|-
| E_FLAG_CAN_CHECK_TRAFFIC || 0x2 || Can check traffic.<br>Always 0
| 0x4 || 0x4 || uint32_t || mxFlags || 0x00000001 (Bit 0) = IsRaceVehicle || Selectability || "Changes: 1.0: Only bits 0-6 used 1.3: Bits 7-10 added, never set. WIP (bit 11), V1.0 (bit 12), and V1.3 (bit 13) added"
|-
| E_FLAG_CAN_BE_CHECKED || 0x4 || Can be checked like traffic.<br>Always 0
| || || || || 0x00000002 (Bit 1) = IsTrafficVehicle? || Always 0 ||
|-
| E_FLAG_IS_TRAILER || 0x8 || Is a trailer.<br>Trailers have this set
| || || || || 0x00000004 (Bit 2) = CanCheckTraffic? || Always 0 ||
|-
| E_FLAG_CAN_TOW_TRAILER || 0x10 || Is an articulated cab that can tow a trailer.<br>ArticCabs have this set
| || || || || 0x00000008 (Bit 3) = CanBeChecked? || Always 0 ||
|-
| E_FLAG_CAN_BE_PAINTED? || 0x20 || Allows the vehicle to be painted
| || || || || 0x00000010 (Bit 4) = IsTrailer || ||
|-
| ? || 0x40 || Unknown. Always 1
| || || || || 0x00000020 (Bit 5) = CanTowTrailer || ArticCabs have this set ||
|-
| ? || 0x80 || Is the first car within a certain speed range
| || || || || 0x00000040 (Bit 6) = CanBePainted || Color changeability ||
|-
| ? || 0x100 || Has switchable boost
| || || || || 0x00000080 (Bit 7) = ? || Always 0 ||
|-
| ? || 0x200 || || || 0x00000100 (Bit 8) = ? ||Unknown. Always 0 ||
|-
| ? || 0x400 || || || 0x00000200 (Bit 9) = ? ||Versioning. Always 0 ||
|-
| ? || 0x800 || Is WIP/dev
| || || || || 0x00000400 (Bit 10) = ? || Versioning. Always 0 ||
|-
| ? || 0x1000 || Is ||from 1.0. ||Used 0x00000800on (Bit 11) = Is WIP/dev || ||Paradise Cars
|-
| ? || 0x2000 || || || 0x00001000 (Bit 12) = Is from 1.03. ||Used Paradiseon Online Cars/Community || Cars
|-
| ? || 0x4000 || || || 0x00002000 (Bit 13) = Is from 1.34. ||Used Onlineon Cars/Community Cars ||Paradise Bikes
|-
| ? || 0x8000 || Is from 1.5
| 0x8 || 0x1 || uint8_t || Length || Boost Length || 00 = None || Default values listed.
|-
| ? || 0x10000 || Is || || || 03 = Aggression ||from 1.6
|-
| ? || 0x20000 || Is ||from 1.7. ||Used on ||Toys/Legendary 04 = Speed ||Cars/Boost Specials
|-
| ? || 0x40000 || Is ||from 1.8. ||Used on || 07 = Stunt ||Cop Cars
|-
| ? || 0x80000 || Is from 1.9. Used on Island Cars
| 0x9 || 0x1 || uint8_t || || Rank required || 00 = Learner's Permit ||
|-}
 
| || || || || || 01 = D Class License ||
=== Rank ===
|-
{| class="wikitable"
| || || || || || 02 = C Class License ||
! Name !! Value !! Comments
|-
| ? || 0 || Learner's Permit
| || || || || || 03 = B Class License ||
|-
| ? || 1 || || || || 04 = AD Class License ||
|-
| ? || 2 || C || || || 05 = BurnoutClass License ||
|-
| ? || 3 || B Class License
| 0xA || 0x1 || uint8_t || Capacity || Boost Capacity || "00 = Default (matches 05) Traffic cars use different values"
|-
| ? || 4 || A || || || ||Class License
|-
| ? || 5 || Burnout License
| 0xB || 0x1 || uint8_t || || Strength Rating || ||
|}
 
=== AudioDataAI engine stream ===
From <code>BrnSound::Vehicles::KAPC_DEBUG_AI_EXHAUST_NAME</code>.
 
{| class="wikitable"
! Offset !! Size !! Type !! Name !! Description !! More InformationValue !! Comments
|-
| AIROD_EX || 1 ||
| 0x0 || 0x8 || CgsID || mExhaustName || Exhaust CgsID || Decodes to engine ID e.g. DRAG_EX || Use encdec.rb or BurnoutHasher to decode
|-
| AI_CIVIC_EX || 2 ||
| 0x8 || 0x8 || AttribSysCollectionKey || mExhaustEntityKey || Exhaust ID || Exhaust vehicleengine collection name || lookup8 encoded in AttribSys. Used under SoundExhaustAsset and ExhaustEntityKey.
|-
| AI_GT_ENG || 3 ||
| 0x10 || 0x8 || AttribSysCollectionKey || mEngineEntityKey || Engine ID || Engine vehicleengine collection name || lookup8 encoded in AttribSys. Used under SoundEngineAsset and EngineEntityKey.
|-
| AI_MUST_EX || 4 ||
| 0x18 || 0x8 || CgsID || mEngineName || Engine CgsID || Decodes to engine ID e.g. DRAG_ENG || Use encdec.rb or BurnoutHasher to decode
|-
| AI_F1_EX || 5 ||
| 0x20 || 0x4 || Name || mRivalUnlockName || Class Unlock Stream Hash || BFA57004 = SuperClassUnlock ||
|-
| AI_BIKE_EX || 6 ||
| || || || || || EF6F3448 = MuscleClassUnlock ||
|}
 
= Streams =
=== Class unlock stream ===
{| class="wikitable"
! Name !! Hash !! Comments
|-
| SuperClassUnlock || 0xBFA57004 ||
| || || || || || D9917B81 = F1ClassUnlock ||
|-
| MuscleClassUnlock || 0xEF6F3448 ||
| || || || || || C9D8E2A3 = TunerClassUnlock ||
|-
| F1ClassUnlock || 0xD9917B81 ||
| || || || || || 655484B3 = HotRodClassUnlock ||
|-
| TunerClassUnlock || 0xC9D8E2A3 ||
| || || || || || E99AE3EB = RivalGen ||
|-
| HotRodClassUnlock || 0x655484B3 ||
| 0x24 || 0x4 || || || padding || ||
|-
| RivalGen || 0xE99AE3EB ||
| 0x28 || 0x8 || AttribSysCollectionKey || mWonCarVoiceOverKey || Car Shutdown Streams || languagestreamconfiguration collection name in BURNOUTGLOBALDATA || Contains 8 CgsSoundPlaybackHashes to identify CAR_SHUTDOWN streams.
|}
 
=== AI music stream ===
{| class="wikitable"
! Name !! Hash !! Comments
|-
| AI_Muscle_music1 || 0x9D3C81A9 ||
| 0x30 || 0x8 || AttribSysCollectionKey || mRivalReleasedVoiceOverKey || Car Released Streams || languagestreamconfiguration collection name in BURNOUTGLOBALDATA || Contains 8 CgsSoundPlaybackHashes to identify CAR_RELEASED streams.
|-
| AI_Truck_music1 || 0xA7AE72CB ||
| 0x38 || 0x4 || uint32_t || muiAIMusicLoopContentSpec || "AI Music Stream Hash Name hash of full gamedb path" || 9D3C81A9 = AI_Muscle_music1 ||
|-
| AI_Tuner_muisc1 || 0x4B944D28 ||
| || || || || || A7AE72CB = AI_Truck_music1 ||
|-
| AI_Sedan_music1 || 0x09235CD9 ||
| || || || || || 4B944D28 = AI_Tuner_muisc1 ||
|-
| || || || || || 09235CD9 = AI_Sedan_music1 ||
|-
| || || || || || E9901A8A = AI_Exotic_music1 ||
|-
| || || || || || DD342AB1 = AI_Super_muisc1 ||
|-
| 0x3C || 0x1 || uint8_t || muiAIExhaustIndex || AI Engine Stream || "01 = AIROD_EX 02 = AI_CIVIC_EX 03 = AI_GT_ENG 04 = AI_MUST_EX 05 = AI_F1_EX"
 
|-
| 0x3D || 0x1 || uint8_t || muiAIExhaustIndex2ndPick || AI Engine Stream 2 || ||
|-
| 0x3E || 0x1 || uint8_t || muiAIExhaustIndex3rdPick || AI Engine Stream 3 || ||
|-
| 0x3F || 0x1 || || || padding || ||
|}
 
=== SpeedStats (MPH) ===
{| class="wikitable"
! !! 1 !! 2 !! 3 !! 4 !! 5 !! 6 !! 7 !! 8 !! 9 !! 10
|-
| AI_Exotic_music1 || 0xE9901A8A ||
| Speed || <140 || 140-144 || 145-149 || 150-154 || 155-159 || 160-164 || 165-169 || 170-174 || 175-179 || ≥180
|-
| AI_Super_muisc1 || 0xDD342AB1 ||
| Boost || <160 || 160-164 || 165-169 || 170-174 || 175-179 || 180-184 || 185-189 || 190-194 || 195-199 || ≥200
|}