LUA List

From Burnout Wiki
Revision as of 18:12, 17 December 2022 by Burninrubber0 (talk | contribs) (Fix section links.)

The LUA List resource type contains binary data detailing the challenges in individual LUA Script resources. It is used in scripted challenges such as Party Pack challenges.

The information held includes details of the challenge itself, such as its name and goal, as well as modifiers such as the variables.

Structures

Some names are given for clarity and are not official Criterion identifiers.

BrnLUA::LUAListResource

32-bit

Offset Length Type Name Description Comments
0x0 0x4 int32_t Version number 1
0x4 0x4 padding
0x8 0x8 CgsID List ID Encoded
0x10 0x4 LUAListEntry* Entry data start
0x14 0x4 char** Types See challenge type
0x18 0x4 char** Variables See variables
0x1C 0x4 uint32_t Num scripts
0x20 0x4 uint32_t Data length Not including padding to end
0x24 0x80 char[128] List title
0xA4 0x1 uint8_t Num types
0xA5 0x1 uint8_t Num variables

64-bit

Offset Length Type Name Description Comments
0x0 0x4 int32_t Version number 1
0x4 0x4 padding
0x8 0x8 CgsID List ID Encoded
0x10 0x8 LUAListEntry* Entry data start
0x18 0x8 char** Types See challenge types
0x20 0x8 char** Variables See variables
0x28 0x4 uint32_t Num scripts
0x2C 0x4 uint32_t Data length Not including padding to end
0x30 0x80 char[128] List title
0xB0 0x1 uint8_t Num types
0xB1 0x1 uint8_t Num variables

BrnLUA::LUAListEntry

Offset Length Type Name Description Comments
0x0 0x8 CgsID Script ID Encoded
0x8 0x80 char[128] Name Non-zeroed padding in all strings
0x88 0x80 char[128] Goal
0x108 0x100 char[256] Description
0x208 0x4 uint32_t Score multiplier See score multiplier
0x20C 0x4 uint32_t Scoring method See scoring method
0x210 0x4 uint32_t Type
0x214 0x4 uint32_t Variables
0x218 0x8 padding

Enumerations

Challenge type

PASSTHEPAD is the only list to contain challenge types.

Name Value Comments
Stunt 0x1
Skill 0x2
Speed 0x4

Variables

PASSTHEPAD is the only list to contain variables.

Name Value Comments
$K_ACCELERATOR_LOCKED 0x1 English translation: ACCELERATOR LOCKED ON
$K_BOOST_LOCKED 0x2 English translation: BOOST LOCKED ON
$K_DO_NOT_CRASH 0x4 English translation: DON'T CRASH
$K_DO_NOT_TOUCH_A_WALL 0x8 English translation: DON'T TOUCH A WALL
$K_REVERSE_STEERING 0x10 English translation: REVERSE STEERING
$K_NO_BRAKES 0x20 English translation: NO BRAKES

Score multiplier

PASSTHEPAD is the only list to use multipliers, and only on Stunt challenges.

Name Value Comments
? 0 Standard points
? 1 Double points
? 2 Triple points

Scoring method

PASSTHEPAD is the only list to use success/fail scoring, and only on Stunt challenges. All Stunt challenges use this.

Name Value Comments
? 0 Score by position
? 1 Score by success/fail