Difference between revisions of "Data File"

186 bytes added ,  21:08, 9 February 2019
update on esl limits
imported>Qazaaq
m (Added a see also)
imported>ShadeMe
(update on esl limits)
Line 28: Line 28:
*Light Master (.esl) files are a new optimized file format, introduced in Fallout 4 v1.10. They behave like a normal plugin, except for the following:
*Light Master (.esl) files are a new optimized file format, introduced in Fallout 4 v1.10. They behave like a normal plugin, except for the following:
**.esl files cannot be edited in the [[Creation Kit]]. Active development should be done in an normal .esp file.
**.esl files cannot be edited in the [[Creation Kit]]. Active development should be done in an normal .esp file.
**.esl files bypass the 8-bit plugin ID limit (255), by using more of the Form ID for their load order.
**.esl files allow more plugins to be loaded than the previous 8-bit plugin ID limit (255), by using more of the Form ID for their load order.
**.esl files have a budget of no more than 2,048 forms, with Form IDs <code>0x800</code> to <code>0xFFF</code> available for use.
**.esl files have a budget of no more than 2,048 forms, with Form IDs <code>0x800</code> to <code>0xFFF</code> available for use.
***A maximum of 4096 .esl files can be loaded by the engine at once, but more Form IDs in an .esl file means that less .esl files can be loaded.
***A absolute maximum of 4096 .esl files can be loaded by the engine at once, but in practice this is difficult to achieve.
***Using .esl files that each have 2048 Form IDs, the limit drops to about 300 loaded .esl files.
***331 plugins can be loaded that each contain 2048 ALCH records, but 970+ plugins can be loaded that each contain one CELL record and 2047 REFR records.
***There may also be a file handle limit, and a reference limit that prevent 4096 .esl files from being loaded.
**.esl files are merged into plugin slot <code>0xFE</code> at runtime. Their runtime Form ID is <code>0xFE[000](Hex Load Order)[000](Original Form ID)</code>.
**.esl files are merged into plugin slot <code>0xFE</code> at runtime. Their runtime Form ID is <code>0xFE[000](Hex Load Order)[000](Original Form ID)</code>.
***Form <code>0xFA0</code> from the 10th loaded .esl file would be <code>0xFE00AFA0</code> at runtime. From the 200th .esl file, it would be <code>0xFE0C8FA0</code>.
***Form <code>0xFA0</code> from the 10th loaded .esl file would be <code>0xFE00AFA0</code> at runtime. From the 200th .esl file, it would be <code>0xFE0C8FA0</code>.
Anonymous user