Jump to content
  • 0

Compacting FORMID for ESL


Question

Posted

I need a clarification about compacting EPSs with xEdit.
When a plugin is cmpacted and the ObjectIDs renumbered, this doesn't jeopardize the compatibility of the mod with the possible patches or files that use the plugin as master?
I was starting to suspect this when I realize that when xEdit performs a compact, this process involves also other plugins that seem to rely on the plugin being compacted.
An Object ID renumber could put other plugins not finding the objects they are looking for.
I'm completely on the wrong way or is there any sense in what I'm saying?
The doubt came to my mind because I'd seen xEdit to renumbering references also in the files that are related in some way to the plugin I'm compacting.
Sometimes the compating procedure doesn't touch any other plugin, and this way I think is safe, because there is nothing that relies in the information stored in the plugin, but all remains self-contained. Obviously this must be done - if I have understood correctly - with a new game in mind, because the gamesaves may contain references to what "de facto" has changed its "name", resulting impossible to find it back again.

Can someone explain me what is the whole thing of compacting?
I tried to find some info here but it seems that this topic hasn't been covered before.

Thanks for any reply

 

Recommended Posts

  • 0
Posted
16 hours ago, Mousetick said:

Your interpretation of that xEdit script is mostly correct, but you're confusing the count of things with their values. And despite acknowledging DY's distinction between records and FormIDs, you're still apparently confusing between them.

No, that's not right. The script checks these conditions:

  1. The number of FormIDs must be lower than 2048.
  2. The value of all FormIDs must be lower than 4096.

If condition #1 is met, but not #2, the plugin can still be light by compacting the FormIDs (that is changing their values to be less than 4096).

There is an important piece of code at the beginning, which you noticed and commented on:

if not IsMaster(e) then
      Continue;

This skips over any record that is not a FormID, and only continues processing records that are FormIDs.

To summarize, a light plugin is a plugin with fewer than 2048 FormIDs, each FormID being in the range 2048 to 4095 (FExx x800 to FExx xFFF).

 

If this is the real meaning of this constant, we've have got the fish.
OK!

 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Guidelines, Privacy Policy, and Terms of Use.