Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Running OpenMW 0.48+ through MO2 having already run the export plugin causes duplicate file warning #1795

Open
AnyOldName3 opened this issue Feb 27, 2023 · 7 comments
Labels
issue report User submitted report

Comments

@AnyOldName3
Copy link
Member

The problem:

This isn't an issue I've experienced, so I'm leaving the logs etc. sections with the template so I can direct users here to supply their information.

OpenMW has it's own VFS, and https://github.com/AnyOldName3/ModOrganizer-to-OpenMW exists so that OpenMW's VFS can include MO2's mod directories even when MO2 isn't running. Even though it's never been recommended or officially supported, many users who've exported their setup have taken to running OpenMW through MO2 anyway, even though it's totally redundant.

With pre-0.48 versions, everything was fine - OpenMW would see the USVFS-injected files as lower-priority than the ones from its own VFS, and just ignore them.

With 0.48 and later, OpenMW logs the following message for every loose file in the VFS:

Warning: found duplicate file for 'C:/Program Files (x86)/The Elder Scrolls 3 Morrowind/Data Files\relative\path\to\file.ext', please check your file system for two files with the same name in different cases.

This massively slows down loading OpenMW.

To Reproduce:

Steps to reproduce the behavior:

  1. Add the OpenMW Export plugin to MO2.
  2. Set up OpenMW so it can play Morrowind on your machine.
  3. Install some Morrowind mods through MO2.
  4. Run the OpenMW Export plugin.
  5. Add OpenMW as an executable to MO2 (even though it's a silly idea).
  6. Run OpenMW through MO2.

Environment:

  • Mod Organizer Version that exhibits the issue:
  • Last Mod Organizer Version that did not exhibit the issue (if applicable):
  • Desktop OS/version used to run Mod Organizer:

Details:

If necessary, describe the problem you have been experiencing with more details and pictures.

Link to Mod Organizer logs:

Right click on the log window at the bottom of MO2, set log level to debug, restart Mo2 and reproduce the problem.
To access the log files you can press the Open folder icon over the modlist and select "Open MO2 Logs folder".

USVFS:

Create a GIST which is a paste of your latest USVFS log, and link them here.
Do NOT paste your full USVFS logs here, as it will make this issue very long and hard to read!
If you are reporting a bug, always include the USVFS logs!

MO Interface:

Create a GIST which is a paste of your mo_interface logs, and link them here.
Do NOT paste your full mo_interface logs here, as it will make this issue very long and hard to read!
If you are reporting a bug, always include the mo_interface logs!

@AnyOldName3 AnyOldName3 added the issue report User submitted report label Feb 27, 2023
@AnyOldName3 AnyOldName3 changed the title Running OpenMW 0.48+ through MO2 having already run the export plugin causes duplicate file error Running OpenMW 0.48+ through MO2 having already run the export plugin causes duplicate file warning Feb 27, 2023
@AnyOldName3
Copy link
Member Author

AnyOldName3 commented Jul 3, 2023

I think we've just got some more information implying this can be suppressed if you change all the files in all your mods to have the same case, implying you only get the warning if two directories supply two copies with different cases.

Apparently not - it sounds like someone managed to trigger the same warning without using MO2, but running a Windows build through WINE.

@Mandallaz
Copy link

Mandallaz commented Jan 7, 2024

Have the same problem. Any news about this issue?
If I launch openmw with Mod Organizer without any mod, no issue. But if I add one mod (for example "Patch for purist", I have a tons of warning about duplicate .dds files.

Example:

Warning: found duplicate file for 'D:/Games/Morrowind/Data Files\Textures\war_sload2_head5.dds', please check your file system for two files with the same name in different cases.

@AnyOldName3
Copy link
Member Author

It basically needs one of the very small number of MO2 developers with enough experience working on USVFS to dig into it, and their time is limited and this isn't really a priority for them as you'll only run into it when you're using the plugin incorrectly (as you're supposed to launch OpenMW outside MO2 once you've exported).

@mr-potato456
Copy link

This has not been mentioned here, but this issue prevents easy testing in the openmw from the csse if it was originally launched from mo2. Are there still no updates or fixes?

@AnyOldName3
Copy link
Member Author

If you've already exported your MO2 setup to OpenMW using one of the plugins, then it'll be able to see the work you've done in the construction set if you launch it outside MO2, even if the CS and MO2 are still running. When files are modified, USVFS writes them back to disk right away. It's just other applications launched through MO2 that might have problems, e.g. if you've unlocked the UI and launched a second one.

@AnyOldName3
Copy link
Member Author

I suspect this is related to #2039 so hopefully the problem will go away once that's fixed by hooking a currently-unhooked function that causes that issue.

@Holt59
Copy link
Member

Holt59 commented Jul 23, 2024

For reference:

  • the problem is from NtQueryDirectoryFile which is, at some point, called by boost::filesystem (not directly) with FileIdExtdDirectoryInformation,
  • std::filesystem calls NtQueryDirectoryFileEx with FileFullDirectoryInformation and does not have the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
issue report User submitted report
Projects
None yet
Development

No branches or pull requests

4 participants