Jump to content
  • 0

BSA extraction + Loose files


Question

Posted

So in Interesting NPCs mod there is both BSA file and some loose files.

In Mod Organizer I previously chose to always unpack BSA files.

 

My question is - if there is a file inside the BSA with the same name as in the mod package - will the file that was unpacked from BSA overwrite the loose file, or will the loose file overwrite the file that was extracted from BSA?

 

I have a feeling that files from the BSA could overwrite loose files, because during installation MO first unpacks all files to the target directory, and then only unpacks the BSA... And that could be a problem, could it?

 

Or are my worries in vain and MO first unpacks BSA and then extracts loose files?

Recommended Posts

  • 0
Posted

DoubleYou is correct: A mod author should not have files that conflict between loose and BSA within the same mod package .... this is most definitely a mistake. Furthermore, it just does not matter if the conflicting files are identical (@Ubeogesh: did you check?). That would be a housekeeping mistake on the part of the mod author. If the conflicting files are NOT identical, then that is a more significant problem if the intended file is the loose file. From the mod author's view, this would be an effective way to override his own BSA version of the asset (this would be a lazy mod author that wants to avoid the hassle of extracting and repackaging a BSA). This "low-maintenance" approach has ramifications that differ according to end user experience (but only with regard to MO users):

  • Novice mod/MO user: this would be transparent and not an issue, but only if these users do not enable BSA extraction (these users have no business enabling BSA extraction, but they likely will anyway).
  • Semi-advanced mod/MO user: This could be a problem, because these users will likely enable BSA extraction and not notice this conflict
  • Advance mod/MO users:
  • Trusting, expedient: This could still be a problem, because they WILL enable BSA extraction, and --even though they understand the risks-- they don't want to bother checking every single BSA-packed mod for this type of mod-author blunder.
  • Untrusting, anal retentive: This would not be a problem, because they WILL enable BSA extraction and they WILL NOT trust that mod authors do things properly. Hence they will look for suspicious loose files within all BSA-packed mod packages.

PS: a BSA-packed mod should really only have a BSA and a plugin (and possibly documentation). Otherwise, the BSA would have to be registered within Skyrim.ini. Additional loose files are nonsensical, as they should also live inside the BSA.

  • 0
Posted

Interesting question. You could always tell MO to keep the BSA, use DDSopt and extract it somewhere else and check if there are some conflicting files, and swap them manually if that is not the case.

 

I suppose, though I'm just guessing, that MO extract BSAs to a temp directory first then moves them into the mod folder once the extraction is complete. Thats how almost all other extraction applications work that I know of.

  • 0
Posted

I just did a test to see what files would be overwritten. I did two installs, one with just the loose files and one with just the unpacked BSA and used MO conflict tab to see the conflicts. MO indicates that there is not any file overwrites between the loose and BSA files, so in this case there is no concern, all files are needed when installing this mod or you will have missing textures in game.

 

As to the first part of your question I can't really say, but I found this posted by Tannin in the Nexus forums.

a) If a Mod has multiple bsas you can change their order in the bsa tab.

b) Yes, MO enables files from bsas to override loose files. To do this, all checked bsas are added through the ini files (through very dark magic) and the overridden loose files aren't added to the virtual directory at all.

c) If you check a bsa it is loaded (with the above described magic). If you uncheck a bsa and there is an active esp by the same name it is loaded but overrides all loose files (default behaviour). If you uncheck a bsa and there is NO active esp by the same name, the bsa is not loaded. Why would you want that? Don't know, but who am I to judge?

Please note that for some users, for unknown reasons, the above described "dark magic" does not work thus MO can only load around 60 bsas through the ini file. These users need more manual control over how bsas are loaded.

Hope this helps.

  • 0
Posted

GDSFan, I think you misunderstood my query. I am asking about mod installation, not resource loading.

I wonder if a single archive at the same time has

1) a loose file

2) BSA file with the same file inside it

Though such case is unlikely (mods mostly have either BSA or loose files), but still is possible (i.e. original mod version had BSA, then came an update with loose files, and then update + original versions were merged into single archive)

 

Then you do installation of the archive with automatic BSA unpacking (during the first time you install a mod with BSA file, MO asks whether you want to automatically extract the BSA file).

By the result of this action - which file will be put to the installed mods directory - the loose file or the file that was extracted from the BSA?

  • 0
Posted

I'm not sure about this really, as I've never had this situation. A mod author shouldn't do things like that, but some mod authors can do strange things. This issue on the bug tracker seems to say this is a problem, albeit I have not tested: https://issue.tannin.eu/tbg/modorganizer/issues/507

 

Yes, that issue 507 is exactly what I thought could happen. If the bug is posted then looks like my doubts are confirmed.

As for mod author shouldn't be doing things like that - I've shown you the example situation why would such situation happen, and without unpacking BSA wouldn't be a problem:

i.e. original mod version had BSA, then came an update with loose files, and then update + original versions were merged into single archive

Which is what happened with Interesting NPCs mod (but gladly it doesn't have conflicting files in BSA and loose format)
  • 0
Posted

Best answer: z929669 :p

 

I'm pretty sure it's a "clerical" error a redundancy. I'll spare you my opinion on BSA's as I already gave it in the locked thread topic on a related subject. Chances are the files are the same or worse case scenario different edited version of what should have been one file for the mod.

  • 0
Posted

Actually see 2. What this Means for You > Mod Makers (here is the updated version)

Lojack recommended not using BSAs and also not to repackage assets into BSA .. meaning that (Lojack reverted his initial recommendation) ... HOWEVER, if you have a 500 MB BSA and want to update one small asset, you would need to re-create the entire BSA and upload it to the Nexus again. Big PITA (and waste of bandwidth), yes, but the solution is NOT to add this one little loose asset ... just maybe consider not using the BSA (my personal opinion)!

Did I mention that I really hate BSAs? (
UPDATE:
I am writing up something more comprehensive along the lines of this topic and will provide a link once I am finished ....

  • 0
Posted (edited)

I load the unofficial skyrim patch(bsa form) after my hrdlc optimized textures(loose files). Yet MO indicates that the BSA overwrites files from the hrdlcs. The BSA is checked in the archives tab. Shouldn't that be the other way around?

Edited by hellanios
  • 0
Posted

Apologies if this is has already been pointed out. Or, If I completely don't understand what I'm doing (in which case, smack me, call me a 'Milk drinker' and send me on my way ....)

 

If I install a Mod with a BSA (packed), go into 'Archives' and unpack it, then disable it (under Archives) the .BSA is re-enabled when I restart MO.  Is this intended (ouch!) or am I doing something wrong?

 

I'm just playing around ATM, but was planning to optimize textures with DDSopt, but keep the original BSA files in the /mods/<***> directories as a safeguard (yes, I know I could just re-install from the /downloads, but work with me ...).

 

I know the bsa/loose-files topic is a bit of a 'hot topic' around here .... but I thought what I'm trying to do fits within the MO designed behavior.  is it not?

  • 0
Posted

Apologies if this is has already been pointed out. Or, If I completely don't understand what I'm doing (in which case, smack me, call me a 'Milk drinker' and send me on my way ....)

 

If I install a Mod with a BSA (packed), go into 'Archives' and unpack it, then disable it (under Archives) the .BSA is re-enabled when I restart MO.  Is this intended (ouch!) or am I doing something wrong?

 

I'm just playing around ATM, but was planning to optimize textures with DDSopt, but keep the original BSA files in the /mods/<***> directories as a safeguard (yes, I know I could just re-install from the /downloads, but work with me ...).

 

I know the bsa/loose-files topic is a bit of a 'hot topic' around here .... but I thought what I'm trying to do fits within the MO designed behavior.  is it not?

 

You can't disable a BSA that has a matching ESP file.  E.g.  SomeMod.bsa cannot be disabled if you have a SomeMod.esp active in your load order.  Because the game will load it anyway.

 

When you're manually extracting BSAs as you describe, you have to then manually delete the BSA after you extract it.

 

Note that there's a plugin, called bsaExtract.  Go to Settings -> Plugins, and click on bsaExtract.  Check the settings window on the right; if it has enabled=false, change that to enable=true, and click OK.

 

Now, whenever you install a mod, if that mod contains a BSA file you will be prompted "Do you want to extract this BSA?"  If you choose yes, then it will extract to the mod folder, and auto delete the BSA afterwards.

 

If you find that the bsaExtract plugin is already enabled, but you're not being prompted to extract BSAs on mod install, then that means that you once clicked "Remember answer" and then chose No, so the dialogue is never appearing any more.  If that's the case, go to Settings and click Reset Dialogs.

 

Or, if extracting BSAs is something you do only rarely, such that you don't want to be prompted each time, then ignore all that.  Just carry on extracting manually as you did, but remember to delete the BSA afterwards.

 

Extracting all BSAs is not necessarily generally recommended any more.  For the reasons why, see the (somewhat lengthy!) Ramifications of BSA Extraction thread, in this forum.  The OP has been updated by z9 to contain all the general findings of the whole thread.  It doesn't sound like you're wanting to generally extract many BSAs anyway; I mention this just so that if you do turn on the BSA extraction plugin, you're made aware of the ramifications before you start extracting many more BSAs.

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
  • Recently Browsing   0 members

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

Important Information

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