Tes4Mod:Mod File Format/LVLI

Oblivion: Tes4Mod: Modding

LVLI records hold information on leveled item list. Subrecords known to occur in an LEVI record include (confirmed):

  • EDID (required): Editor ID (variable length string)
  • LVLD (required): Chance none value (1 byte)
  • LVLF (required): Level list flags (1 byte)
  • LVLO (optional, mult): Level list item (12 bytes or 8 bytes)
  • DATA (optional): Only occurs in a couple LVLI records in oblivion.esm (1 byte)

LVLF SubrecordEdit

This 1 byte (confirmed) subrecord stores the leveled list flags.

0x01 = Calculate for All Levels <= Player's Level
0x02 = Calculate for Each Item in Count

Some of the older leveled list entries do not have an LVLF subrecord. Instead, the high-order bit of the LVLD subrecord is used for the "calculate for all levels <= player's level" flag, and the DATA subrecord is used for the "calculate for each item in count" flag.

LVLO SubrecordEdit

There will be one of these 12 byte or 8 byte (confirmed, almost always 12 byte) subrecords for each item in the list.

Name Type/Size Info
Level 2 (word) Item level
Unknown1 2 (word)  ?
FormID 4 (dword) Item form ID
Count 2 (word) Item count
Unknown2 2 (word)  ?

For new ESPs the Unknown1/Unknown2 seem to be the same value (0x02D6). The values vary in Oblivion.esm and are not always the same.

DATA SubrecordEdit

This 1 byte (confirmed) older format subrecord stores the Calculate for Each Item in Count flag.

Any value other than 0x00 = Calculate for Each Item in Count