Trigger Data/Development

From Burnout Wiki
Revision as of 05:59, 4 October 2023 by Burninrubber0 (talk | contribs) (Normalization)

Versions

Structures

BrnTrigger::TriggerData

Version 15

Offset Length Type Name Description Comments
0x0 0x4 int32_t miVersionNumber Resource version 15
0x4 0x4 uint32_t muSize Resource size
0x8 0x4 Landmark* mpLandmarks Landmarks
0xC 0x4 int32_t miLandmarkCount Number of landmarks
0x10 0x4 SignatureStunt* mpSignatureStunts Signature stunts
0x14 0x4 int32_t miSignatureStuntCount Number of signature stunts
0x18 0x4 GenericRegion* mpGenericRegions Generic regions
0x1C 0x4 int32_t miGenericRegionCount Number of generic regions
0x20 0x4 Killzone* mpKillzones Killzones
0x24 0x4 int32_t miKillzoneCount Number of killzones
0x28 0x4 Blackspot* mpBlackspots Blackspots
0x2C 0x4 int32_t miBlackspotCount Number of blackspots
0x30 0x4 VFXBoxRegion* mpVFXBoxRegions VFX box regions
0x34 0x4 int32_t miVFXBoxRegionCount Number of VFX box regions
0x38 0x4 TriggerRegion** mppRegions Trigger regions
0x3C 0x4 int32_t miRegionCount Number of regions

BrnTrigger::BoxRegion

Version 15

Offset Length Type Name Description Comments
0x0 0x30 Matrix33? Rotation?
0x30 0x10 vpu::Vector3 Position?
0x40 0x10 vpu::Vector3 Size?

BrnTrigger::TriggerRegion

Version 15

Offset Length Type Name Description Comments
0x0 0x50 BoxRegion mBoxRegion Unknown for sure if this was a separate struct in this version.
0x50 0x4 CgsID mId
0x58 0x4 int32_t miRegionIndex Region index
0x5C 0x1 uint8_t meType Region type See type
0x5D 0x3 uint8_t[3] muPad (presumably)

BrnTrigger::Landmark

Version 15

Offset Length Type Name Description Comments
0x0 0x60 TriggerRegion super_TriggerRegion
0x60 0x4 StartingGrid* mpaStartingGrids Starting grids
0x64 0x4 Finish line* Finish lines
0x68 0x4 uint32_t Starting grid count
0x6C 0x4 uint32_t muNumFinishLines Finish line count
0x70 0x1 uint8_t muDesignIndex Landmark index
0x71 0x1 uint8_t muDistrict District ID See Districts
0x72 0xE Padding (presumably)

Finish line

Version 15

Offset Length Type Name Description Comments
0x0 0x60 TriggerRegion super_TriggerRegion

BrnTrigger::GenericRegion

Version 15

Offset Size Type Name Description Comments
0x0 0x60 TriggerRegion super_TriggerRegion
0x60 0x4 ? ? Always 0?
0x64 0x4 uint32_t? ? Camera cut maybe? Set if next field is 2
0x68 0x4 uint32_t? ? Camera type maybe? 0 or 2
0x6C 0x2 ? ? Always 0?
0x6E 0x1 uint8_t meType Generic region type See type
0x6F 0x1 Padding?

BrnTrigger::Blackspot

Version 15

Offset Length Type Name Description Comments
0x0 0x60 TriggerRegion super_TriggerRegion
0x60 0x10 ? ? Could be the score type & amount as per version 42.

BrnTrigger::VFXBoxRegion

Version 15

Offset Length Type Name Description Comments
0x0 0x60 TriggerRegion super_TriggerRegion

Enumerations

BrnTrigger::TriggerRegion::Type

Version 15

Name Value Comments
E_TYPE_LANDMARK 0
E_TYPE_FINISH_LINE 1
E_TYPE_BLACKSPOT 2
E_TYPE_GENERIC_REGION 3
E_TYPE_VFXBOX_REGION 4
E_TYPE_COUNT 5

BrnTrigger::GenericRegion::Type

Version 15

Drive thrus are types 2, 3, 4, 5, 6, 7, 8 and 11.

Name Value Comments
? 0 HiddenAlloyWheels
? 1 TrainTrack
? 2 CarWash
E_TYPE_BODY_SHOP 3 BodyShop
E_TYPE_PAINT_SHOP 4 PaintShop
E_TYPE_JUNK_YARD 5 Junkyard
E_TYPE_GAS_STATION 6 GasStation
? 7 AutoParts
? 8 SpeedTrap
? 9 PolicePrecint
E_TYPE_SIGNATURE_TAKEDOWN 10 SignatureTakedown
? 11 Shortcut
E_TYPE_KILLZONE 12 KillzoneTrigger
? 13 Breakthru
? 14 Stunt
? 15 StuntProp
E_TYPE_ROAD_LIMIT 16 RoadLimit
E_TYPE_TUNNEL 17 Tunnel
E_TYPE_OVERPASS 18 Overpass
E_TYPE_BRIDGE 19 Bridge
E_TYPE_WAREHOUSE 20 Warehouse
E_TYPE_LARGE_OVERHEAD_OBJECT 21 LargeOverheadobject
E_TYPE_NARROW_ALLEY 22 NarrowAlley
E_TYPE_COUNT 23