To provide a method by which Wabajack can assist mod authors in maintaining creative control over their mods while still allowing for more rapid installation of mods
- Users can download a mod, change it and create an installer with Wabbajack that publishes these changes via binary patching this goes against usage restrictions for "no modifications of this mod are allowed".
- Users can extract BSAs with Wabbajack, going against warnings for no BSA extraction
- The nexus doesn't seem to provide a good way to track a modder's desire to not allow end users to modify their files
- Wabbajack allows downloading from 3rd party sites that does not maintain author's rights. We currently have a "who cares" attitude, which isn't condusive to collaboration with the modding community. It would be good to improve this situation.
- Wabbajack maintain a list of authors/mods who have opted out of allowing their mods to be modified.
- This list will be editable via a GitHub PR (a hassle for authors), or by including a magic string
WABBAJACK_OPT_OUT_OF_MODIFICATION
(or something similar) to their mod summary page. - Wabbajack will query this info during compilation and refuse to binary patch or extract BSAs for any mod in this list.
- Wabbajack will switch to using code signing for releases, and a non-exe distributed modlist. Modlists will become serialized blobs of data, and not executable code. This means users will know when they are using a unofficial build. And thus someone disabling these content control features will create a modlist that no official Wabbajack build will install.
- Wabbajack will scan files from 3rd party sites to try and find matches with the "opt-out" list. This matching will be done via SHA256 (not very useful) and via filename. So if author
modder334
has opted out and his mod containsmodder334s_immersive_cheese_reborn.esp
, Wabbajack will never create a modlist that downloads opt-out files from a 3rd party site.
I don't know if this sort of thing helps but most mods on Nexus have a permissions box that looks like this right now: https://imgur.com/DVZZLC2 These options are set by the authors in their mod pages. Unfortunately that only works with mods that aren't using a custom message like USLEEP does. Ideally Nexus would include a way for API queries to be made to ask the site directly about these things. Most of us would just settle for them including a server-side opt-out for any mod authors who don't want their mods being downloaded with these tools at all.
Code signing is definitely a good idea. Right now trying to install your tool is completely blocked for a lot of Windows 10 users due to a UAC prompt that it won't let you bypass. Myself included. It's something I wasn't aware needed doing with the USLEEP installer either. It never hit me with a prompt when checking the exe.
I'm not sure what you mean by scanning 3rd party sites, but the more obvious solution to all of this is just to disallow the use of that sort of thing to begin with since it only promotes the use of pirated content. It's a very rare thing in Bethesda modding to find people using Mega or Mediafire for example. Not when they have reputable places like TESA and AFK Mods to use if Nexus doesn't suit them.