Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

Wabbajack or: How someone finally made a tool that automatically downloads and installs modlists

Turisas

Arch Devil
Patron
Joined
May 25, 2009
Messages
9,925
https://github.com/halgari/wabbajack

Wabbajack - An automated modlist installer for TES/Fallout games
The general idea behind this program is fairly simple. Given a Mod Organizer 2 folder and profile, generate list of instructions that will allow a program to automatically recreate the contents of the folder on another machine. Think of it as replication, but without ever distributing copyrighted files or syncing data between the source and destination machine. The end result is a program that recreate a modlist on a computer while respecting the rights of the game publisher and the mod authors.

Social Links
What Wabbajack can do
At this point you may be wondering how much of a complex modlist Wabbajack can handle. At this point it's more about what Wabbajack can't handle, but let's do a rundown of all the supported features:

  • Support for the following games is tested on a regular basis
    • Fallout 4
    • Fallout New Vegas
    • Skyrim SE
    • Skyrim LE
  • Support for automatic downloads from the following sources
    • Nexus Mods (Premium accounts only)
    • Dropbox
    • Google Drive
    • Mega
    • ModDB
    • Direct URLs (with custom header support)
  • Support the following archive types
    • .zip
    • .7z
    • .rar
  • The following mod installation types are supported
    • Files installed with our without fomod isntallers
    • Manually installed mods
    • Renamed/deleted/moved files are detected and handled
    • Multiple mods installed into the same mod folder
    • A mod split across multiple mod folders
    • Any tools installed in the MO2 folder. Want your users to have BethIni or xEdit? Just put them in a folder inside the MO2 install folder
    • ENBseries files that exist in the game folder
    • SKSE install
  • The following situations are automatically detected and handled by the automated binary patcher (not an exhaustive list)
    • ESP cleaning
    • form 44 conversion
    • ESP to ESL conversion
    • Adding masters
    • Dummy ESPs created by CAO
    • (really any ESP modifications are handled)
    • Mesh fixing
    • Texture compression / fixing The following BSA operations are detected by extracting or creating BSAs via Wabbajack's custom BSA routines
    • BSA Unpacking
    • BSA Creation (packing loose files)
    • BSA repacking (unpacking, fixing files and repacking)
That being said, there are some cases where we would need to do a bit more work to develop:

  • Manually downloaded files
  • LL Files (currently no plans to implement)
  • esp to esm conversion (there are hacks for this)
  • binary patching of non-bsa huge files. 256MB is the largest size Wabbajack can currently handle with the binary patcher


About fucking time, there's of course Automaton but it's limited in many ways that Wabbajack isn't:

"install F4EE (Fallout 4 modlist that uses Wabbajack). Full install from start to finish took about 5 minutes on my machine. And that includes about 240 mods and 50GB of downloads."
 

Chippy

Arcane
Patron
Joined
May 5, 2018
Messages
6,037
Steve gets a Kidney but I don't even get a tag.
Should be useful for when all the porn mods come out for BG3.

But other than that, pretty useful for all the porn mods that are out for Skyrim and FNV
 

Turisas

Arch Devil
Patron
Joined
May 25, 2009
Messages
9,925
I'm struggling to understand the difference between this and Automaton?

He was one of the devs of Automaton, think of this as a refined and more feature-rich continuation from that (Automaton is pretty much dead in the water, apparently):

I'm one of the main devs who was working on Automaton. I recently moved most of my work to my own program called Wabbajack : https://github.com/halgari/Wabbajack This was a friendly "fork", although the word "fork" should be used lightly because almost nothing is the same between the two programs. The main author of Automaton: Metherul and I are still good friends, I simply have more time to work on this stuff, and need a bit more control of the project to get the advanced features in place.

The original Automaton works great for what it was designed to do: install simple lists of archives into folders. But for SSE and other games we need something much more involved. As an example, Wabbajack can auto-detect when you create .bsas by running a folder of files through the Cathedral Asset Optimizer. So it scans .bsa files for patched files found in downloaded archives and then comes up with a way of creating that bsa file. As of the moment, Wabbajack can do the following:

1) Detect mods installed from archives in your download directory
2) Download mods stored in Dropbox, ModDB, Nexus, HTTP servers and Google Drive
3) Install and detect files stored anywhere in your MO2 folder, so if you install XEdit to tools/xedit it will detect that and install it for you
4) Detect changes to your game folder and create a folder called `Game Folder Files` that you can copy to your game folder to install .dlls and ENB files
5) Patch .esps that have been modified/cleaned
6) Create .bsa files that don't exist in downloaded folders but that were created from other files.
7) Do all this while using your system's resources efficiently (everything is highly multithreaded).
8) No Installer required. Modlist files are self-installing, and therefore fall under the GPL3 (aka they cannot be sold, and must be given away for free).

I had to take a few days break to write my own BSA reader/writer since the existing libraries are old and super crufty, and not thread safe. But I do hope to have an alpha release up by the end of this week. I'll see about getting a discord setup this week so interested users can stay more up-to-date.

And that was posted a month ago so things are moving quite quickly, at the moment they're working on getting an installer for Lexy's modlist which is a fucking massive ordeal to install yourself: https://wiki.step-project.com/User:DarkladyLexy/Lexys_LOTD_SE

I'd say the biggest differences at the moment are that Wabbajack already supports more games than Automaton, and can do that binary patching which can be very useful if the modlist creator has done custom tweaks / does them later when updates are made.


So you need a Nexus premium account to get any use out of it? Meh

Yeah that's the biggest bummer, but unfortunately Nexus only offers its API to premium users - only way around it would be if someone knowledgeable enough in coding would make a fork of this project and had the program scrape the limited 1MB/s links off of Nexus that are available for free accounts.
 

PrettyDeadman

Guest
Will this tool cause a great asspain to all the mod creators who didn't like their mods to be a part of modpacks?
Will this lead to the creation of the ultimate Anti-Wabbajack Technology™ like this:
 

Turisas

Arch Devil
Patron
Joined
May 25, 2009
Messages
9,925
Will this tool cause a great asspain to all the mod creators who didn't like their mods to be a part of modpacks?

For sure, but they can't really do much except pout since it's Nexusmods that enables Wabbajack to work to begin with, not to mention Nexusmods themselves are working on something similar with the upcoming Vortex modpacks (that's going to be a one-size-fits-all approach covering all their hosted mods across various games, so Wabbajack will likely be the better choice still for Bethesda games, specifically). Modders can either suck it up or leave and try their luck over at moddb (lol) or some other site no one really cares about.
 

PrettyDeadman

Guest
Have Nexus considered allowing access to their api for non-privileged/free users? Wabbajack so far works only for paid users as far as I understand it.
 

Turisas

Arch Devil
Patron
Joined
May 25, 2009
Messages
9,925
Have Nexus considered allowing access to their api for non-privileged/free users? Wabbajack so far works only for paid users as far as I understand it.

Nah, the whole reason the API exists in the first place is to get more premium users, obviously. People can share their personal keys of course, but if the key then goes into wide circulation and Nexus bans it, the owner would be shit out of luck.
 

Perkel

Arcane
Joined
Mar 28, 2014
Messages
15,804
So downloaded it and tried to use it with fallout. Opens up Fallout 4 mod lists page.

I found something there: "From creator of ultra lightweight modpack XYZ which gives you FO4+, not an overhaul"

hmm maybe i will try it

reads below

100GB+ needed for mods alone
:D:D:D

Checks other modpacks

100GB
150GB
200GB

yeah, looks like some retarded retardation
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Back
Top Bottom