AI Sections/Development

From Burnout Wiki
Revision as of 23:29, 23 March 2024 by Bo98 (talk | contribs) (→‎Version 4, Version 6: correct length)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Versions

Structures

BrnAI::AISectionsData

Version 4, Version 6

Offset Length Type Name Description Comments
0x0 0x4 AISection* mpaSections
0x4 0x4 uint32_t muNumSections
0x8 0x4 uint32_t muVersion
0xC 0x4 uint32_t muSizeInBytes

BrnAI::AISection

Version 4

Offset Length Type Name Description Comments
0x0 0x4 Portal* mpaPortals
0x4 0x4 BoundaryLine* mpaNoGoLines
0x8 0x10 float32_t[4] mafCornersX Corners X
0x18 0x10 float32_t[4] mafCornersZ Corners Z
0x28 0x2 uint16_t muNumNoGoLines
0x2A 0x1 uint8_t mu8NumPortals
0x2B 0x1 uint8_t muDangerRating See danger rating
0x2C 0x1 uint8_t mx8Flags Flags See flags
0x2D 0x3 uint8_t[3] mu8Pad Padding

Version 6

Offset Length Type Name Description Comments
0x0 0x4 Portal* mpaPortals
0x4 0x4 BoundaryLine* mpaNoGoLines
0x8 0x10 float32_t[4] mafCornersX Corners X
0x18 0x10 float32_t[4] mafCornersZ Corners Z
0x28 0x4 SpanIndex miSpanIndex
0x2C 0x2 uint16_t muNumNoGoLines
0x2E 0x1 uint8_t mu8NumPortals
0x2F 0x1 uint8_t muDangerRating See danger rating
0x30 0x1 uint8_t mu8eDistrict District Always 0. See districts
0x31 0x1 uint8_t mx8Flags Flags See flags
0x32 0x2 uint8_t[2] mu8Pad Padding

BrnAI::Portal

Version 4, Version 6

Offset Length Type Name Description Comments
0x0 0x10 vpu::Vector3 mMidPosition
0x10 0x4 BoundaryLine* mpaBoundaryLines
0x14 0x2 uint16_t mu16LinkSection Section index
0x16 0x1 uint8_t mu8NumBoundaryLines
0x17 0x5 uint8_t[5] mau8Pad Padding
0x1C 0x4 Padding

Enumerations

BrnAI::AISection::DangerRating

Version 4, Version 6

Name Value Comments
E_DANGER_RATING_FREEWAY 0
E_DANGER_RATING_NORMAL 1
E_DANGER_RATING_DANGEROUS 2
E_DANGER_RATING_COUNT 3

BrnAI::EDistrict

Version 6

Name Value Comments
E_DISTRICT_SUBURBS 0
E_DISTRICT_INDUSTRIAL 1
E_DISTRICT_COUNTRY 2
E_DISTRICT_CITY 3
E_DISTRICT_AIRPORT 4
E_DISTRICT_COUNT 5

AISection flags

Separate uint8_t constants.

Version 4

Name Value Comments
KX_SECTION_FLAGS_NONE 0x0
? 0x1 In air or something else?

Version 6

Name Value Comments
KX_SECTION_FLAGS_NONE 0x0
KX_SECTION_FLAGS_IS_IN_AIR 0x1
KX_SECTION_FLAGS_IS_SHORTCUT 0x2
KX_SECTION_FLAGS_IS_JUNCTION 0x4