ModOrganizer2 / modorganizer

Mod manager for various PC games. Discord Server: https://discord.gg/ewUVAqyrQX if you would like to be more involved
http://www.nexusmods.com/skyrimspecialedition/mods/6194
GNU General Public License v3.0
2.15k stars 160 forks source link

VFS Based File-Hiding #760

Open leontristain opened 5 years ago

leontristain commented 5 years ago

I'm not sure if there's already such a feature (google searching has failed me so far).

I'd like to be able to tell MO2 as a whole (or each mod individually - either would be fine) to ignore certain file patterns underneath a mod folder when creating the VFS.

The use case is that I'm running git init in a mod folder and creating a commit so that I can easily restore the initial content of the mod folder no matter what happens down the road. If I do this for all my mod folders, it would be nice if the .git folder doesn't end up getting mashed together in the VFS (this may be harmless - I donno - I'd like to avoid it if possible).

Anyway, there it is. If this is currently doable, guidance would be greatly appreciated. If it's not currently doable, consider it a minor suggestion.

Thanks, leontristain

Al12rs commented 5 years ago

The git folder is pretty harmless, unless you are getting in the range of tens of thousands of files. Usvfs is capable of ignoring files inside the mod folder but there are no methods currently to add only specific files to the mappings. Mo just passes the list of folders to be mapped in order and usvfs generates the virtual tree with it. There is no way to specify exclusions.

So the feature does not exist but it could be implemented. But that also poses the issue as to how to make the feature accessible to the users through the Mo2 interface, in addition to how to make the Mo2 - Usvfs interface.

Basically it's not a small feature to implement, and if it is to be implemented it needs to be thought out well so that it's full capabilities can be leveraged and integrated in the Mo2 UI.

leontristain commented 5 years ago

Ah, totally understandable. Thanks for listening!

Al12rs commented 4 years ago

related to #322

EngineOfDarkness commented 3 years ago

While the .git Folder is pretty harmless, it will cause MO2 to show conflicts if there are multiple Mods with .git folders which make the QOL Feature to quickly see which mods have conflicts a bit less useful in these cases for End-Users of Mods.

As in my comment https://github.com/ModOrganizer2/modorganizer/issues/1051#issuecomment-791809127 if you mod a basic game and multiple mods happen to have a file that is not readme.txt, then MO2 will show a conflict, while realistically there should be none for non-game related files (like e.g. if you instead of a readme.txt have a readme.md or if you happen to have a LICENSE file.

So for now (I guess), at least regarding basic games, one would have to make a "clean" release that contains nothing but the game modifying files itself and a readme.txt

It would be useful to have some sort of "mod.cfg" which allows the mod author to specify which directories and/or files should be ignored for things like conflict detection and mod installation.

Perhaps something formatted like a .gitignore but instead call it .mo2ignore ?

augustsaintfreytag commented 5 months ago

Even though this has been lying dormant for such a long time, this feature is still a great idea. While developing mods, the easiest way is to directly put the mod folder I also work in into MO2's mods directory, including .git and all. The game will never care about these but now every mod I create conflicts with every other mod I create. The same goes for README.md files and others that many mods include. If MO2 deems something a conflict, the user expects it to be an actual conflict to be investigated.