-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature Request: plugin aliasing. #46
Comments
This seems like a good idea. People face a similar problem when merging plugins, and I think the two problems can be solved with a more general form of aliasing. Here's what I think that could look like: Add an
This means that when getting the metadata for X.esp, LOOT will see that it is an alias of Y.esp and Z.esp. It will first look up the metadata for Y.esp, then for Z.esp, and merge Z.esp's metadata on top of Y.esp's metadata, so the metadata is
it then merges the metadata for X.esp on top of this, so the metadata becomes
LOOT uses the normal process for getting metadata for aliases, so it will match regex entries. I.e. don't use a regex plugin metadata entry's name string as an alias, use a plugin name that matches that regex entry. The alias targets don't need to match any metadata entries. If an alias target doesn't have any metadata, merging has no effect. The order of alias targets matters, it is the order in which metadata are merged. It's an error to target an aliased plugin, e.g.
This is because allowing nested aliasing introduces the potential for cycles, and dealing with that adds complexity. Errors due to cycles can also occur unexpectedly due to the potential distance in the alias chain between the plugin the user is editing metadata for and the plugin that already targets it. I don't think the flexibility of nested aliasing is worth the costs. To guard against nested aliasing, when setting metadata for a plugin that includes an alias, LOOT will need to check that the alias targets are not aliased, and also check that the current plugin is not an alias target of any other metadata. |
The current proposal only works in one direction.
has to be changed to
which is not as simple as just merging some metadata. Actually for full compliance the content should be updated too, i.e. something like "SkyUI_SE.esp (that is an alias target for SkyUI_SE.esl) is not active in your load order. [...]".
|
I think that's out of scope for this feature, two-way aliasing is way more complicated, and as you've pointed out, solves different problems. |
That's probably not very clear as to what I mean so i'll give an example.
Say that I decided to convert SkyUI.esp to .esl using SSEEDIT. Loading up LOOT understandably treats SkyUI.esl as a completely new mod and lacks the masterlist info it had as an .esp.
The text was updated successfully, but these errors were encountered: