Jump to content

How are External Changes to Mods Detected?


digitaljc

Recommended Posts

External changes displays three things:

a) A file was deleted in the data directory

b) A file was deleted in the mod directory

c) A file was changed (or rather: replaced with a modified version)

 

For each Vortex asks if you want to apply the change, making it permanent or undo, reverting to the state when Vortex deployed.

 

Now for a and b I think the dialog is clear enough: If you apply the file gets deleted in the other location as well, meaning if the file got deleted in the data dir, apply will delete it in the mod dir and vice versa.

 

For c you have to understand that Vortex doesn't know which file was changed, it only knows the link was broken.

It will always assume the file in the mod directory is the "original", so the file in the data directory is the changed on.

 

So when you apply that means the file from the data directory is copied to mod and the link recreated. If you undo the file in the data directory is deleted and then the link recreated.

 

So apply keeps the file in data dir, undo keeps the file in the mod dir

Link to comment
Share on other sites

 

The external changes dialog is definitely one of the most confusing dialogs in the application. It's just not clear enough exactly what it detected and what it's going to do. The UI needs to be clearer and maybe could use an expandable detail view to show exactly what operations are going to be performed.

 

When that dialog opens, it means that Vortex has detected that it's links in the Data folder have been replaced with the actual files. This happens when you edit a file in the Data directory, you open it via the link and when you save it saves the actual file.

 

Now the dialog is asking you what you want to do about this, do you want to update the mod with the changed files with Apply (Vortex will update the source and redo the links), or do you want to Undo the changes (Vortex deletes the edited files and redeploys the links). There is a bit of linked text that tells you how many files it detected and clicking it will give you a list of the actual files.

 

Once you've set your choices for each mod detected, click Confirm to seal the deal.

 

I'm sure the documentation will include a better explanation of this, but at this point there isn't going to be much. That's one of the last things you do or you can waste a lot of time rewriting it.

 

When you have brand new files created by the mod, Like FNIS say, or one of the mods that creates JSON files - how does that work? There were no hard links back to those files - because they are new. And if they just appear - how does Vortex relate them to a specific mod?

Link to comment
Share on other sites

It can't. Newly created files are not associated with any mod. Not even MO is able to do that, best thing MO could do was put those files into the "overwrite" directory.

 

Vortex has nothing equivalent to an Overwrite directory - I think. So there is no way in Vortex to isolate files created by a mod to the specific profile that created them? That gets kind of messy when each profile write's it's own version of those files.

Link to comment
Share on other sites

Vortex has nothing equivalent to an Overwrite directory - I think. So there is no way in Vortex to isolate files created by a mod to the specific profile that created them? That gets kind of messy when each profile write's it's own version of those files.

Yes, but this is also true for MO since the overwrite dir was (had to be) shared between all profiles.

For a modding tool it's impossible to know where to put the files, even if it could figure out "oh, user was running fnis and that created this list of files so those files probably belong to fnis", that could go wrong because

a) As an example: you could have run wb from vortex and then started some other tool, like fnis from wb. Then vortex would associate fnis files with wb because it only sees the process it started itself

b) The newly created files could now be required for all profiles. Let's say you start a bsa extraction tool from vortex, extract the "skyrim - textures.bsa" file and then delete the bsa. Vortex would see a ton of new textures and move them to the mod of the bsa extractor.

All profiles that don't include that mod would now be broken, as would the unmodded vanilla game.

 

There is just no way I can see that a mod manager could safely assign files to mods/profiles in a generic way.

The best thing I can think of is an extension that has a list of know file names (or patterns) and knows what to do with them. E.g. it could have a list of all the files fnis generates and when those files appear in the data directory,

the extension moves them to the fnis mod (which the user would have to mark as such first).

This way only the "known" files would be touched and whatever the extension doesn't recognize would be left alone (whitelisting).

Link to comment
Share on other sites

 

Vortex has nothing equivalent to an Overwrite directory - I think. So there is no way in Vortex to isolate files created by a mod to the specific profile that created them? That gets kind of messy when each profile write's it's own version of those files.

Yes, but this is also true for MO since the overwrite dir was (had to be) shared between all profiles.

For a modding tool it's impossible to know where to put the files, even if it could figure out "oh, user was running fnis and that created this list of files so those files probably belong to fnis", that could go wrong because

a) As an example: you could have run wb from vortex and then started some other tool, like fnis from wb. Then vortex would associate fnis files with wb because it only sees the process it started itself

b) The newly created files could now be required for all profiles. Let's say you start a bsa extraction tool from vortex, extract the "skyrim - textures.bsa" file and then delete the bsa. Vortex would see a ton of new textures and move them to the mod of the bsa extractor.

All profiles that don't include that mod would now be broken, as would the unmodded vanilla game.

 

There is just no way I can see that a mod manager could safely assign files to mods/profiles in a generic way.

The best thing I can think of is an extension that has a list of know file names (or patterns) and knows what to do with them. E.g. it could have a list of all the files fnis generates and when those files appear in the data directory,

the extension moves them to the fnis mod (which the user would have to mark as such first).

This way only the "known" files would be touched and whatever the extension doesn't recognize would be left alone (whitelisting).

 

Hopefully you guys are working on making it a little bit clearer as to which files were changed. Starting to get used to using Vortex and i think it is a great program especially for Alpha. I just think more visual clues as to what has changed etc is needed.

Link to comment
Share on other sites

Just to put a plug in for the Overwrites facility. It was great running FNIS, wind up with a bunch of output files in Overwrites, use that to create a mod called "FNIS - Profile Alpha". Only Profile Alpha ever saw those files.Same way, if other mods in Alpha created or changed files - I stuck them in a mod called "Overwrites - Profile Alpha". I always knew what was where - and where it came from. Complete isolation between profiles.

None of this may be possible in the Vortex architecture - but it sure worked great.

Link to comment
Share on other sites

 

Vortex has nothing equivalent to an Overwrite directory - I think. So there is no way in Vortex to isolate files created by a mod to the specific profile that created them? That gets kind of messy when each profile write's it's own version of those files.

Yes, but this is also true for MO since the overwrite dir was (had to be) shared between all profiles.

For a modding tool it's impossible to know where to put the files, even if it could figure out "oh, user was running fnis and that created this list of files so those files probably belong to fnis", that could go wrong because

a) As an example: you could have run wb from vortex and then started some other tool, like fnis from wb. Then vortex would associate fnis files with wb because it only sees the process it started itself

b) The newly created files could now be required for all profiles. Let's say you start a bsa extraction tool from vortex, extract the "skyrim - textures.bsa" file and then delete the bsa. Vortex would see a ton of new textures and move them to the mod of the bsa extractor.

All profiles that don't include that mod would now be broken, as would the unmodded vanilla game.

 

There is just no way I can see that a mod manager could safely assign files to mods/profiles in a generic way.

The best thing I can think of is an extension that has a list of know file names (or patterns) and knows what to do with them. E.g. it could have a list of all the files fnis generates and when those files appear in the data directory,

the extension moves them to the fnis mod (which the user would have to mark as such first).

This way only the "known" files would be touched and whatever the extension doesn't recognize would be left alone (whitelisting).

 

On "popular" request I'm currently adding an FNIS feature that will write all generated files to a custom folder outside of the Skyrim data structure. The users requesting have told me that this will greatly improve the use of profiles in MO.

 

In order to make use of it, the user has to specify the custom folder in the FNIS.ini, and then tick a new patch box. All relevant generated files will go into a file structure under thiscuastom directory. The intermediate files will not be stored.

 

Is this something that could be used for Vortex? Or, what could I do to make this useable?

Link to comment
Share on other sites

On "popular" request I'm currently adding an FNIS feature that will write all generated files to a custom folder outside of the Skyrim data structure. The users requesting have told me that this will greatly improve the use of profiles in MO.

 

In order to make use of it, the user has to specify the custom folder in the FNIS.ini, and then tick a new patch box. All relevant generated files will go into a file structure under thiscuastom directory. The intermediate files will not be stored.

 

Is this something that could be used for Vortex? Or, what could I do to make this useable?

 

 

Yes, that sounds very useful and I think you will be making a lot of users very happy with that!

 

I think it would be even more useful if the custom output directory could be set on the command line so that the mod manager can easily pass a different output directory depending on the active profile.

We could probably also use a separate fnis.ini for each profile but that could become confusing if other settings then also depend on the profile.

Link to comment
Share on other sites

 

Yes, that sounds very useful and I think you will be making a lot of users very happy with that!

 

I think it would be even more useful if the custom output directory could be set on the command line so that the mod manager can easily pass a different output directory depending on the active profile.

We could probably also use a separate fnis.ini for each profile but that could become confusing if other settings then also depend on the profile.

 

Sure I could this. Any other ideas that could make Vortex users happy?

 

I assum FNIS should ignore if the patch is not ticked, as soon as the folder is passed by command line?

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

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