Jump to content

Question for Modders Smarter Than Me :D


rms827

Recommended Posts

Which would probably be most of you, lol.

 

Simple question here (I hope).

 

I'm curious about mods like Better Sorting and some of the other mods (crafting overhaul type mods come to mind) that have separate .esps for all three DLCs. I've always hated that they take up 4 or more slots on my load list. Isn't there a way that the mods could be made to work with just one .esp file regardless of the DLCs a player has? Yes I know we could merge esps with TES5edit. I'm thinking more along the lines of creating such a mod and having it work out of the box regardless of DLCs without multiple .esp files.

 

Sorting mods in particular, this SEEMS fairly easy. The mod might have an option for a Dragonbone Sword to become Sword: Dragonbone (for example) but if the player doesn't have Dawnguard, is the game going to break because the sorting mod never sees one in your inventory?

 

Crafting and Item Recycling type mods, I can see it being more of an issue...

Link to comment
Share on other sites

Actually it's completely doable but a lot of extra work. You would utilize the GetFormFromFile() SKSE function to set up "handlers" which would be quests that run a script when the game initializes and have it run various code like:

 

if GetFormFromFile(0x00000x, Dragonborn.ESM)

MySortList.AddForm(Dragonbonesword)

Endif

 

My syntax and arguments are probably a little off, as I;m just doing this off the top of my head, so bear with. But basically the gist is that you would have your sort items list with just the vanilla stuff in it, then this code would check if you have dragonborn loaded and if so would add whatever forms you want to the formlist. I utilize this a ton in legacy of the dragonborn for "display support" in my museum where if a player has certain mods loaded, the museum will configure additional displays to place unique items from those mods, and without it, it would not. This keeps the plugin count down a lot instead of having to create patches. Another example is Frostfall which uses this method to see if you have the cloaks of skyrim mod loaded, so that it can attach keywords to the cloaks so that they are identified as warm clothing that keeps the cold away.

 

If you set it all up as one ESP without this method and had all the forms loaded, the mod would require the DLC's to be loaded. If you manually break that using the CK file load screen and delete the master requirements, your mod would CTD all the time because of stack errors piling up from trying to sort and fill non-existent forms if they didn't have all the DLC's loaded

 

Ultimately it's just easier for modders to create patches which give them more versatility and require less coding, and can just add the new given items via the patch. The more basic problem here though is that unless it's a leveled list and you can bash patch it, multiple DLC patches adding to the same form list can cause issues, so they would end up using the coded method of adding the form via script anyways because that won't get messed up by multiple mods editing that form list. So we're right back to "why not just use the getformfromfile() option instead"

 

With so many useful SKSE commands you could almost entirely bypass the need for an actual patch and have it apply changes conditionally, but it is sooooooo much more coding work than it is worth in most cases. A simple thing or two is great but if you have to move objects, alter stats and change models, etc, it's sometimes easier just to patch instead

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...