-
Notifications
You must be signed in to change notification settings - Fork 167
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
Hide ESLs when no ESL support #2026
Conversation
Need to resolve some issues with the plugin list indices
I don't really know if I like that idea... I think if we hide the ESL, we should notify the user someway, but maybe I'd prefer something that force disables the ESL when there are no support instead of just hiding them (maybe it's more complicated). Do you have examples of mods that ship ESL for games that do not support them? |
Generally, I think it would be a good idea to move more stuff related to plugins to the game plugins as much as possible. If only the plugins that supported ESLs told the MO2 UI that
|
This would be for something like fallout 4 vr which does not support ESL plugins. This change stops them from being shown in the plug-in list or written to the plugins.txt. Not only does this give the false impression that those plugins are going to load and be in the load order but it will write them to the plugins.txt. I guess fortunately this doesn't really cause an issue except to give a false impression that they will actually do something. They will still be visible in the file tree but treated like any other file. Can you give me a good reason to show what is essentially an invalid file in the plug-in list for games that don't support it? |
I generally agree about changing the way we deal with what constitutes a plugin file but that's a much larger change than this and whole project on its own. |
The only other solution I see here apart from completely revamping the plugin list stuff would be to hard disable those plugins and probably add a flag and tooltip explaining the issue. |
It's more about notifying the user, because if someone DL a mod with a I'm not really familiar with FO4VR so I don't know how common these are and how often users install them thinking they will work. |
AFAIK there is no FO4VR page so you just have to know they don't work. You still get all your mods from the Fallout 4 game on Nexus. So yes, it happens. This was reported fairly recently. |
You can also just drop an 'ESL' file into any game and MO2 will assume it's a valid plugin file the way it works currently. The only thing that actually changes is that it doesn't segment ESLs into their own category or parse the light flag on ESP/ESM files. |
I will rework this to simply hard disable ESL files. That actually requires fewer changes overall, to be honest. At some point I suppose I'll work on changing the plugin system in general. It also bothers me that currently MO2 doesn't do any real validation. In practice we should also prevent plugin files with incompatible headers from being enabled for games that don't support those versions. |
Maybe we could start by adding a |
Fixing this without also allowing plugins to extend stuff or otherwise doing something clever will break a common workaround where OpenMW users change file extensions for OpenMW-specific files to |
Yes, I was thinking something similar. The stuff that parses plugin file data is already connected to the game plugins, so extending a validator function to this class would make a lot of sense and be generally more useful for multiple games. So you can change the core code that looks for plugin files to ask for valid extensions or file patterns, load those files, and then ask the game plugin if they're valid as well. |
I'd also note that SSE VR has this issue except that there's an SKSEVR plugin to hack in support. I could do something like Starfield to allow them if we detect that plugin is installed. |
Looks good to me. |
This should stop MO2 from displaying ESL files in the plugin list if light plugin support isn't available.