If you have the GOTY version of the game, Shivering Isles is already built into Oblivion.esm. All editor ids start with either SE or XP to identify when they're from SI. So, don't use DLCShiveringIsles.esp as master file and check if DLCShiveringIsles.esp is loaded and if so call a player function to avoid your mod crashing for people without it. Example:
set SEloaded to ( IsModLoaded "DLCShiveringIsles.esp" )if SEloadedcall yoursefunctionendif
Thanks MatH,
yes, I've got the GOTY edition, and I wasn't aware that the esms are already merged, so thanks for that hint.
But I am not sure whether this really covers my problem: It shouldn't matter for my mod whether people are using Oblivion.esm[SI], the regular Oblivion.esm plus Shivering Isles esm, or none of the SI files at all. My main problem isn't related to esm files or to scripts, but only to
static resources (meshes and textures, and the paths pointing to them). I need to detect which static resources from SI are used by my mod, so that I can copy them to my own mod's bsa.
Or to be more precise, just an example:
I have placed an Elytra in my mod by copying one of the SI Elytra forms inside CS and giving it a new FormID. This required to have DLCShiveringIsles.esp present only during
design time (to be able to actually see the Elytra inside CS), but afterwards, I won't need the SI esp anymore (because I've changed the FormID). But my new form still uses the
static resources from the SI bsa archive. So I'll have to copy these files (meshes, textures) into a path within my own mod archive, and then adjust the form's paths accordingly.
This example is trivial, however, because I
know that I have used that specific Elytra, and I know that it derives
from SI, so it is easy for me to deal with that special case.
But what about the various other static resources (e.g. ruin tilesets or whatever) that I've been reusing from SI without knowing? I need to detect all of them. As I've copied/renamed the FormIDs, I cannot determine them by some "SI" or "XP" prefix anymore. Instead, I need some efficient way to "reengineer" them so that they become a native part of my mod.
In the end, I am afraid I might have no other chance than to search for them manually. But that would be horrible.
So I need some fancy function that scans my mod and produces something like a list of used resources, grouped by the bsa they're read from. Well, maybe I am a bit too optimistic in that vision, but I have some hope that tools like Tes4Gecko, Tes4Edit or the extended CS might provide something
Hope that's clearer now. Maybe I am thinking in a completely wrong way, however...