-
Notifications
You must be signed in to change notification settings - Fork 84
Description
Summary:
Modify the default behavior of reading/saving custom tags for plugins from the plugin header description to read an external file of the same name.
RoyBatty suggested an improvement for patcher behavior in the xEdit server, which I think is a great idea on it's own, but especially so given the atmosphere of the current modding community.
Rather than relying on default bash tags being parsed from the mod description, Wrye Bash could instead read from a text, json, or xml file named the same as its associated plugin. Modifying the plugin for our own purposes is inefficient and unsafe as an update will remove any custom settings, but as well, using an external file would mean users can share their Bash tags. This would allow for similar functionality to saving and loading Bash profiles, but for single plugin instances.
Being able to share/provide an external configuration file is not only safer, it will help mod authors by potentially reducing the number of bad bug reports due to incorrect settings.
Functionality wise we obviously can't just remove the description-based method due to older unmaintained mods. We could however use a priority system: If an external configuration file of the same name exists use that, then use the mod description's included tags if they exist, then finally use the built in configurations we have currently defined.
In itself this probably wouldn't require complex/specific implementations for each game as Wrye Bash would be reading the file then setting valid tags it finds based on the game mode it's in currently. Of course, that's entirely based on where the behavior code for tags currently is.