Vehicle List/Burnout Paradise: Difference between revisions

m
Update flags again
m (Updated common data type links.)
m (Update flags again)
 
(8 intermediate revisions by 2 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 Vehicle List resource contains most high-level information on vehicles in ''[[Burnout Paradise]]'', such as their ID, junkyard stats, sound IDs and more. It is stored in VEHICLES/VEHICLELIST.BUNDLE.
 
= Junkyard stats =
Line 34 ⟶ 45:
 
=== Strength ===
Unlike the speedSpeed and boostBoost stats, the strengthStrength 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"
Line 68 ⟶ 79:
| 0x0 || 0x4 || uint32_t || muNumVehicles || Number of vehicles ||
|-
| 0x4 || 0x4 || [[#BrnResource::VehicleListEntry | VehicleListEntry]]* || mpEntries || Vehicles ||
|-
| 0x8 || 0x8 || uint64_t || mu16BytePad || paddingPadding ||
|}
 
Line 77 ⟶ 88:
! Offset !! Length !! Type !! Name !! Description !! Comments
|-
| 0x0 || 0x8 || [[#BrnResource::VehicleListEntry | VehicleListEntry]]* || mpEntries || Vehicles ||
|-
| 0x8 || 0x4 || uint32_t || muNumVehicles || Number of vehicles ||
|-
| 0xC || 0x4 || uint32_t || mu16BytePad || paddingPadding ||
|}
 
Line 98 ⟶ 109:
| 0x70 || 0x20 || char[32] || macManufacturerName || Manufacturer name ||
|-
| 0x90 || 0xC || [[#BrnResource::VehicleListEntryGamePlayData | VehicleListEntryGamePlayData]] || mGamePlayData || ||
|-
| 0x9C || 0x4 || || || paddingPadding ||
|-
| 0xA0 || 0x8 || [[#CgsAttribSys::AttribSysCollectionKey | AttribSysCollectionKey]] || mAttribCollectionKey || burnoutcarasset collection name (gamedb ID) || lookup8 encoded in vehicle AttribSys
|-
| 0xA8 || 0x40 || [[#BrnResource::VehicleListEntryAudioData | VehicleListEntryAudioData]] || mAudioData || ||
|-
| 0xE8 || 0x10 || ? || ? || Plane-related? || 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]]
|-
| 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]]
|-
| 0xFD || 0x1 || uint8_t || muLiveryType || Finish type || See [[#BrnResource::VehicleListEntry::ELiveryType | ELiveryType]]
|-
| 0xFE || 0x1 || uint8_t || muTopSpeedNormal || MaxSpeed from AttribSys ||
Line 126 ⟶ 137:
| 0x103 || 0x1 || uint8_t || muPaletteIndex || Default color type index ||
|-
| 0x104 || 0x4 || || || paddingPadding ||
|}
 
Line 135 ⟶ 146:
| 0x0 || 0x4 || float32_t || mfDamageLimit || Damage limit || Always 1
|-
| 0x4 || 0x4 || uint32_t || mxFlags || Vehicle flags || See [[#Vehicle flags BrnResource::VehicleListEntryGamePlayData::EFlags| flags]]
|-
| 0x8 || 0x1 || uint8_t || Length || Boost bar length ||
|-
| 0x9 || 0x1 || uint8_t || ? || Rank required for unlock || See [[#Rank | rank]]
|-
| 0xA || 0x1 || uint8_t || Capacity || Boost capacity || The default (0) matches 5
Line 152 ⟶ 163:
| 0x0 || 0x8 || [[CgsID]] || mExhaustName || Exhaust CgsID || Decodes to 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
|-
| 0x10 || 0x8 || [[#CgsAttribSys::AttribSysCollectionKey | AttribSysCollectionKey]] || mEngineEntityKey || Engine ID || Engine vehicleengine collection name (gamedb ID). lookup8 encoded in AttribSys. Used under SoundEngineAsset and EngineEntityKey
|-
| 0x18 || 0x8 || [[CgsID]]|| mEngineName || Engine CgsID || Decodes to engine ID, e.g., DRAG_ENG
|-
| 0x20 || 0x4 || Name || mRivalUnlockName || Class unlock stream || See [[#Class unlock stream | class unlock stream]]
|-
| 0x24 || 0x4 || || || paddingPadding ||
|-
| 0x28 || 0x8 || [[#CgsAttribSys::AttribSysCollectionKey | AttribSysCollectionKey]] || mWonCarVoiceOverKey || Car shutdown streams || languagestreamconfiguration collection name in BURNOUTGLOBALDATA. Contains 8 CgsSoundPlaybackHashes to identify CAR_SHUTDOWN streams
|-
| 0x30 || 0x8 || [[#CgsAttribSys::AttribSysCollectionKey | 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 || See [[#AI music stream | AI music stream]]
|-
| 0x3C || 0x1 || uint8_t || muiAIExhaustIndex || AI Engine Stream || See [[#AI engine stream | AI engine stream]]
|-
| 0x3D || 0x1 || uint8_t || muiAIExhaustIndex2ndPick || AI Engine Stream 2 || See [[#AI engine stream | AI engine stream]]
|-
| 0x3E || 0x1 || uint8_t || muiAIExhaustIndex3rdPick || AI Engine Stream 3 || See [[#AI engine stream | AI engine stream]]
|-
| 0x3F || 0x1 || || || paddingPadding ||
|}
 
=== CgsAttribSys::AttribSysCollectionKey ===
{| class="wikitable"
|-
! Offset !! Length !! Type !! Name !! Description !! Comments
|-
Line 188 ⟶ 198:
=== Category ===
{| class="wikitable"
|-
! Name !! Value !! Comments
|-
Line 210 ⟶ 219:
=== Vehicle type ===
{| class="wikitable"
|-
! Name !! Value !! Comments
|-
Line 222 ⟶ 230:
=== BrnResource::ECarType ===
{| class="wikitable"
|-
! Name !! Value !! Comments
|-
Line 242 ⟶ 249:
=== BrnResource::VehicleListEntry::ELiveryType ===
{| class="wikitable"
|-
! Name !! Value !! Comments
|-
Line 258 ⟶ 264:
|}
 
=== BrnResource::VehicleListEntryGamePlayData::EFlags ===
=== Vehicle flags ===
{| class="wikitable"
|-
! Name !! Value !! Comments
|-
| IsRaceVehicleE_FLAG_IS_RACE_VEHICLE || 0x1 || AllowsUsed ato vehicledifferentiate tobetween beplayer selectedand traffic cars.<br>Allows selecting this vehicle in the junkyard
|-
| CanCheckTraffic?E_FLAG_CAN_CHECK_TRAFFIC || 0x2 || PossiblyCan CanBeChecked.check traffic.<br>Always 0
|-
| CanBeChecked?E_FLAG_CAN_BE_CHECKED || 0x4 || PossiblyCan CanCheckTraffic.be checked like traffic.<br>Always 0
|-
| IsTrailerE_FLAG_IS_TRAILER || 0x8 || Is a trailer.<br>Trailers have this set
|-
| CanTowTrailerE_FLAG_CAN_TOW_TRAILER || 0x10 || Is an articulated cab that can tow a trailer.<br>ArticCabs have this set
|-
| CanBePaintedE_FLAG_CAN_BE_PAINTED? || 0x20 || Allows the vehicle to be painted
|-
| ? || 0x40 || Unknown. Always 1
Line 306 ⟶ 311:
=== Rank ===
{| class="wikitable"
|-
! Name !! Value !! Comments
|-
Line 323 ⟶ 327:
 
=== AI engine stream ===
From <code>BrnSound::Vehicles::KAPC_DEBUG_AI_EXHAUST_NAME</code>.
{| class="wikitable"
|-
! Name !! Value !! Comments
|-
| ?AIROD_EX || 1 || AIROD_EX
|-
| ?AI_CIVIC_EX || 2 || AI_CIVIC_EX
|-
| ?AI_GT_ENG || 3 || AI_GT_ENG
|-
| ?AI_MUST_EX || 4 || AI_MUST_EX
|-
| ?AI_F1_EX || 5 || AI_F1_EX
|-
| AI_BIKE_EX || 6 ||
|}
 
Line 341 ⟶ 347:
=== Class unlock stream ===
{| class="wikitable"
|-
! Name !! Hash !! Comments
|-
Line 359 ⟶ 364:
=== AI music stream ===
{| class="wikitable"
|-
! Name !! Hash !! Comments
|-