.lvl Objects

For level .objlib files, a .lvl Object roughly corresponds to a regular (non-boss) sub-level in the game. In some cases, a .lvl Object is part of a regular sub-level or boss section. Each .lvl Object is made up of one or more patterns called ".leaf Objects". Sample loops with volume envelopes and one-off SFX can be defined in a .lvl Object.

Here is a screenshot of Drool's Editor showing the .lvl Object named drums_short_pattern2.lvl, from levels/Level6/level_6.objlib.

screenshot of Drool's Editor showing the .lvl Object named drums_short_pattern2.lvl

Each sequin .objlib file contains a .lvl Object named root.lvl, which is usually used to define a sequence of animations.

Parameter List

The following is a list of known parameters belonging directly to a .lvl Object.

Value (little-endian)Parameter NameMeaning
e04f3144layer_volumeControls the volume of a sample loop in a .lvl Object. The allowed values for volume \(A\) are: \(A \in \mathbb{R} \vert 0 \leq A \leq 1 \).

Format

LengthData TypeMeaning
4int32Unknown
4int32Unknown
4int32Unknown
4int32Unknown

Approach Animation Definition

Unknown

Main Definition

LengthData TypeMeaning
4N/ASection marker. 3c8efb12 = Unknown

Sequencer Objects section

LengthData TypeMeaning
4int32Number of Sequencer Objects in this object

See Sequencer Objects for the format of each Sequencer Object.

.leaf Sequence section

Unknown

Loops section

Unknown

LengthData TypeMeaning
1boolUnknown
4float32Unknown
4int32?Unknown
4int32?Unknown
variablestringUnknown
1boolUnknown
17stringUnknown
12vector3fUnknown