Open main menu

UESPWiki β

Oblivion Mod:Mod File Format/ENCH

< Mod / Oblivion: Oblivion Mod: Modding: Mod File Format

Holds information on a single enchantment which can be applied to an item.

Subrecords known to occur in the ENCH record include (confirmed):

  • EDID (required): Variable length string, Editor ID
  • FULL (optional, very): Name (variable length string)
  • ENIT (required?): Basic enchantment data?
  • EFID (optional, multiple): Holds an effect name
  • EFIT (optional, multiple): Holds effect data
  • SCIT (optional, multiple): Holds script effect data
  • FULL (optional, multiple): Holds the custom script effect name

The FULL record was found in one mod, not found in Oblivion.esm. Might be there due to erroneous use of outside tool, or might be due to copying of a spell record to enchantment record. (There's a command in TESCS to copy a spell to an enchantment, although it doesn't seem to work in TESCS 1.2.404.)

ENIT SubrecordEdit

Appears to hold 16 bytes of basic enchantment data.

Name Type/Size Info
Type 4 (dword) The basic enchantment type. Known values are:
0 = Scroll
1 = Staff
2 = Weapon
3 = Apparel
ChargeAmount 4 (dword) The manual charge value used if AutoCalc is off.
EnchantCost 4 (dword) The manual enchantment cost used if AutoCalc is off.
Flags 4 (dword) Usually 0xCDCDCD00 or 0x00000000.
0x00000001 = Manual Enchant Cost (Autocalc Off)

Note that in a general programming context values of 0xCD usually represent uninitialized data.

EFID SubrecordEdit

There will be an EFID for each effect added to the enchantment. It seems to be always followed by a matching EFIT subrecord. Its size seems fixed at 4 bytes.

Name Type/Size Info
EffectID 4 (char [4], not nul terminated) The ID of the magic effect (ex: FIDG)


EFIT SubrecordEdit

There will be an EFIT for each effect added to the enchantment. It seems to always follow a matching EFID subrecord. Its size may be fixed at 24 bytes.

Name Type/Size Info
EffectID 4 (char [4], not nul terminated) The ID of the magic effect (ex: FIDG). This seems to be the same as the ID in the preceding EFID subrecord. The purpose for this duplication is not known.
Magnitude 4 (dword) The effect magnitude.
Area 4 (dword) The effect area.
Duration 4 (dword) The effect duration.
Type 4 (dword) The type of effect to apply.
0 = Self
1 = Touch
2 = Target
ActorValue 4 (dword) Specifies the effect subtype for effects that need an actor value (ex: Fortify Attribute). See Actor Value Indices for more information.


SCIT SubrecordEdit

There will be one SCIT subrecord for each script effect added to the enchantment. It will be followed by a matching FULL subrecord and preceded by the usual EFID and EFIT subrecords. The length of the subrecord is almost always 16 bytes with values of 4 bytes (1 instance) and 12 bytes (2 instances) also observed. Presumably shorter SCIT subrecords can use default values for the missing fields.

Name Type/Size Info
ScriptFormID 4 (dword) Specifies the FormID of the script to use for the effect. A value of 0x00000000 represents no script.
School 4 (dword) Gives the spell school that the custom effect uses.
0 = Alteration
1 = Conjuration
2 = Destruction
3 = Illusion
4 = Mysticism
5 = Restoration
VisualEffect 4 (char[4], not terminated) Specifies the magic effect ID to be used as the visual effect. A visual effect of NONE has a value of 0x00000000.
Flags 4 (dword) Usually 0x00559E01.
0x00000001 = Hostile

Unsure what the 0x00559E00 values represent, if anything.


FULL SubrecordEdit

There will be one FULL subrecord, a variable string, for each script effect added to the enchantment. It will be preceded by a matching SCIT subrecord. It holds the effect name as entered by the user. The default value is "Script Effect".