We have a Steam curator now. You should be following it. https://store.steampowered.com/curator/44994899-RPGHQ/
Wabbajack UNLOCKED 4.0 β Modding Tools
Looking for the download?
This mod's files are on ModHQ.
Go to mod page
Moderator: Mod Janitor
It looks like we can switch WebView2 to use CefGlue relatively painlessly. Will update the plan document @JustRun
Jingle Jangle Jingle
check if we can add tempermonkey support, there are nexusmods plugins that can make the mod downloading process MUCH MUCH faster and painlessloregamer wrote: β February 8th, 2026, 16:35It looks like we can switch WebView2 to use CefGlue relatively painlessly. Will update the plan document @JustRun
am downloading the source code and gonna check if it is possible to even make wabbajack openable on linux, ill make a virtual machine even, my pc can handle it
for linux there a lot of options for ui such as avalonia ui and maui but idk man, i only know how to make small games and stuff but ill read the docs and check online for the best option
oh and yeah i can do localization for wabbajack, and i have friends that might be interested
chinese, arabic, russian..........
chinese, arabic, russian..........

Update : Virtual machine ready to go
Kubuntu but i can also add arch, fedora, debian and steam os.

Update on the porting process :
Last edited by JustRun on February 9th, 2026, 20:11, edited 1 time in total.
I'm pretty sure if I just update the plan file to be for CefGlue and ask Claude Opus 4.6 to go to work on it, then it'll get the job done. I'm just protective over my tokens right now since weekly usage limit on Claude seems really restrictive now @JustRun
I'll get to it... eventually
I'll get to it... eventually
Last edited by loregamer on February 9th, 2026, 20:37, edited 1 time in total.
Jingle Jangle Jingle
bruh am literally going around doing trial and error, ill update yall if i do anything significantloregamer wrote: β February 9th, 2026, 20:37I'm pretty sure if I just update the plan file to be for CefGlue and ask Claude Opus 4.6 to go to work on it, then it'll get the job done. I'm just protective over my tokens right now since weekly usage limit on Claude seems really restrictive now @JustRun
I'll get to it... eventually
What exactly are you testing on Linux? I don't want to send you on a debug warpath for stuff I'll implement in future versions tbhJustRun wrote: β February 9th, 2026, 20:44bruh am literally going around doing trial and error, ill update yall if i do anything significantloregamer wrote: β February 9th, 2026, 20:37I'm pretty sure if I just update the plan file to be for CefGlue and ask Claude Opus 4.6 to go to work on it, then it'll get the job done. I'm just protective over my tokens right now since weekly usage limit on Claude seems really restrictive now @JustRun
I'll get to it... eventually
Jingle Jangle Jingle
Just realized, boomerposters are having to read two zoomers interacting
Last edited by loregamer on February 9th, 2026, 20:50, edited 1 time in total.
Jingle Jangle Jingle
Fair but am not totally serious am just attempting to port the ui to avalonia UI like a chimploregamer wrote: β February 9th, 2026, 20:49What exactly are you testing on Linux? I don't want to send you on a debug warpath for stuff I'll implement in future versions tbhJustRun wrote: β February 9th, 2026, 20:44bruh am literally going around doing trial and error, ill update yall if i do anything significantloregamer wrote: β February 9th, 2026, 20:37I'm pretty sure if I just update the plan file to be for CefGlue and ask Claude Opus 4.6 to go to work on it, then it'll get the job done. I'm just protective over my tokens right now since weekly usage limit on Claude seems really restrictive now @JustRun
I'll get to it... eventually
Appreciate you doing this
Jingle Jangle Jingle
so, i regret spending 6 hours on it lol
i can't test it until ALL parts are done + am ain't good with avalonia ui, at least i tried
i can't test it until ALL parts are done + am ain't good with avalonia ui, at least i tried
sorry for the late reply. I was scouring the net for a way to avoid paying nexus premium to DL a list. Ended up here luckily. Sadly nobody is mentioning wabba unlocked on the posts I went through, and you only get here if you are really trying to avoid paying nexus premium
Bra If you can save someone money and provide some **** free in this world that is based upon Greed, you're doing a community service, and realistically as long as all parties affected can put a roof over their head, you're benefitting the world. That's an objective argument that anyone who hates this work can jam as far up their *** as they find enjoyable. What are they really bitching about? Not paying Todd Howards bonus? The nerd has sold us multiple dreams, some of which even have 16 times the detail. So then, is it not giving nexus a cut? That's not going to work since I guarantee that most of them would have been bitching about nexus archiving mods or whatever **** went down. I fucken downloaded ultravoilence which is a cyberpunk list. I picked up cyberpunk 2077 day one after enjoying witcher 3, and it was absolute half baked toilet trash. I wouldn't give CDPR the steam of my **** after that ****. THANK **** FOR WABBA UNLOCKED. And I don't blame the devs for a half baked cyberpunk, it's obviously not their fault.JustRun wrote: β February 5th, 2026, 12:14this is so ******* stupid, they are just hating on a fork that is just better then theirs, they don't even tell you why they hate it or something, the word " mod piracy " alone shows how ******** they are.loregamer wrote: β February 3rd, 2026, 22:57lmaoMrFred0 wrote: β February 3rd, 2026, 22:11Is there any reason for the Wabbajack admins to be this mad, like... at all? I don't really see what they're losing from this.
I don't think Wabbajack authors have said much about my fork, though. Not publicly, anyway. I just know they ban discussion over it
The fork was only taken down on Github because I pushed files with the ****** word on an unrelated repo and got banned, btw. I was following the proper licensing per the Wabbajack repo
Anyway, hating on wabba unlocked is absolutely hilarious. If you want to truly break it down, you're in a world that is falling apart because the people who have power have literally stolen everything. Crying about a wabba fork that means people can download lists for free instead of clicking 2000 times lmfao. Kids in school are learning the world is full of **** and they aren't playing the rigged game. We legit have about 3-5 years of peace and then a descent to hell because the world fully relied on exploiting suckers. I want the people who complain about people who use this fork to remember that they did and come back here in 5 years when you're looking for ways to get free **** because you can't afford **** all and you can finally see that you'll have to defend your mortgage yourself.
Thanks again to the author of wabba unlocked!
Thanks for the fork @loregamer !
I really got annoyed with the timer for large modlists, so I looked through the source code and changed the JS code injection to directly query the backend for the download link (same method that gets called when the timer reaches 0). It still needs to open a browser window for the Cloudflare stuff and the login cookie, but it completely skips the timer.
Everything ran fine on a local build, and I was too lazy to go through forking and PRing so I'll just post the snippet here if it's of any use.
It just replaces the RunJavaScript method inside \Wabbajack.App.Wpf\UserIntervention\ManualDownloadHandler.cs here, no other changes.
Also one issue, you missed importing \Wabbajack.Reporting\Wabbajack.Reporting.csproj into the fork, it won't compile without it.
Edit: added a basic check for a NexusMods link, ParseQueryString would probably throw an exception for non-Nexus links.
I really got annoyed with the timer for large modlists, so I looked through the source code and changed the JS code injection to directly query the backend for the download link (same method that gets called when the timer reaches 0). It still needs to open a browser window for the Cloudflare stuff and the login cookie, but it completely skips the timer.
Everything ran fine on a local build, and I was too lazy to go through forking and PRing so I'll just post the snippet here if it's of any use.
It just replaces the RunJavaScript method inside \Wabbajack.App.Wpf\UserIntervention\ManualDownloadHandler.cs here, no other changes.
Code: Select all
if (md.Url.Host.Contains("nexusmods")) await RunJavaScript($@"
(async () => {{
const fullUrl = 'https://www.nexusmods.com/Core/Libs/Common/Managers/Downloads?GenerateDownloadUrl&fid={System.Web.HttpUtility.ParseQueryString(md.Url.Query).Get("file_id")}&game_id=' + window.notifications_game_id + '&collection_id=0';
const response = await fetch(fullUrl, {{
method: 'POST',
headers: {{ 'Content-Type': 'application/json' }}
}});
const data = await response.json();
const link = document.createElement('a');
link.href = data.url;
link.download = '';
document.body.appendChild(link);
link.click();
}})();");
Edit: added a basic check for a NexusMods link, ParseQueryString would probably throw an exception for non-Nexus links.
Last edited by HalNeinThousand on February 16th, 2026, 05:17, edited 1 time in total.
Wanna make a pull request?HalNeinThousand wrote: β February 16th, 2026, 04:57Thanks for the fork @loregamer !
I really got annoyed with the timer for large modlists, so I looked through the source code and changed the JS code injection to directly query the backend for the download link (same method that gets called when the timer reaches 0). It still needs to open a browser window for the Cloudflare stuff and the login cookie, but it completely skips the timer.
Everything ran fine on a local build, and I was too lazy to go through forking and PRing so I'll just post the snippet here if it's of any use.
It just replaces the RunJavaScript method inside \Wabbajack.App.Wpf\UserIntervention\ManualDownloadHandler.cs here, no other changes.
Also one issue, you missed importing \Wabbajack.Reporting\Wabbajack.Reporting.csproj into the fork, it won't compile without it.Code: Select all
if (md.Url.Host.Contains("nexusmods")) await RunJavaScript($@" (async () => {{ const fullUrl = 'https://www.nexusmods.com/Core/Libs/Common/Managers/Downloads?GenerateDownloadUrl&fid={System.Web.HttpUtility.ParseQueryString(md.Url.Query).Get("file_id")}&game_id=' + window.notifications_game_id + '&collection_id=0'; const response = await fetch(fullUrl, {{ method: 'POST', headers: {{ 'Content-Type': 'application/json' }} }}); const data = await response.json(); const link = document.createElement('a'); link.href = data.url; link.download = ''; document.body.appendChild(link); link.click(); }})();");
Edit: added a basic check for a NexusMods link, ParseQueryString would probably throw an exception for non-Nexus links.
Jingle Jangle Jingle
Alright, I'll make one in a day or so.loregamer wrote: β February 16th, 2026, 14:22Wanna make a pull request?HalNeinThousand wrote: β February 16th, 2026, 04:57Thanks for the fork @loregamer !
I really got annoyed with the timer for large modlists, so I looked through the source code and changed the JS code injection to directly query the backend for the download link (same method that gets called when the timer reaches 0). It still needs to open a browser window for the Cloudflare stuff and the login cookie, but it completely skips the timer.
Everything ran fine on a local build, and I was too lazy to go through forking and PRing so I'll just post the snippet here if it's of any use.
It just replaces the RunJavaScript method inside \Wabbajack.App.Wpf\UserIntervention\ManualDownloadHandler.cs here, no other changes.
Also one issue, you missed importing \Wabbajack.Reporting\Wabbajack.Reporting.csproj into the fork, it won't compile without it.Code: Select all
if (md.Url.Host.Contains("nexusmods")) await RunJavaScript($@" (async () => {{ const fullUrl = 'https://www.nexusmods.com/Core/Libs/Common/Managers/Downloads?GenerateDownloadUrl&fid={System.Web.HttpUtility.ParseQueryString(md.Url.Query).Get("file_id")}&game_id=' + window.notifications_game_id + '&collection_id=0'; const response = await fetch(fullUrl, {{ method: 'POST', headers: {{ 'Content-Type': 'application/json' }} }}); const data = await response.json(); const link = document.createElement('a'); link.href = data.url; link.download = ''; document.body.appendChild(link); link.click(); }})();");
Edit: added a basic check for a NexusMods link, ParseQueryString would probably throw an exception for non-Nexus links.
Edit: done.
Last edited by HalNeinThousand on February 16th, 2026, 19:49, edited 1 time in total.
Is it possible to use multiple drives as download location?
Last edited by tuhoiisa on February 21st, 2026, 21:50, edited 1 time in total.
Not currentlytuhoiisa wrote: β February 21st, 2026, 21:47Is it possible to use multiple drives as download location?
Jingle Jangle Jingle
Ah i see thanks. Do u have any plans on that?loregamer wrote: β February 21st, 2026, 21:53Not currentlytuhoiisa wrote: β February 21st, 2026, 21:47Is it possible to use multiple drives as download location?
I'll think about it. Don't want to introduce more ways for the fork version to failtuhoiisa wrote: β February 21st, 2026, 21:56Ah i see thanks. Do u have any plans on that?loregamer wrote: β February 21st, 2026, 21:53Not currentlytuhoiisa wrote: β February 21st, 2026, 21:47Is it possible to use multiple drives as download location?
Jingle Jangle Jingle
Thank youloregamer wrote: β February 21st, 2026, 21:57I'll think about it. Don't want to introduce more ways for the fork version to fail
For Linux users:
Follow this guide https://github.com/Omni-guides/Jackify/ ... -Wabbajack, BEFORE running in Steam place the unlocked files in the Wabbajack install directory.
Arch users:
Ensure that you install Jackify from the user repository: https://aur.archlinux.org/packages/jackify-bin
Follow this guide https://github.com/Omni-guides/Jackify/ ... -Wabbajack, BEFORE running in Steam place the unlocked files in the Wabbajack install directory.
Arch users:
Ensure that you install Jackify from the user repository: https://aur.archlinux.org/packages/jackify-bin
Last edited by ordovis on March 7th, 2026, 17:54, edited 1 time in total.
there's a mod called "pubic hair overlays SE.zip" that keeps downloading as corrupt no matter how many times i delete it, and i cant find it on the internet either. its from the licentia next modlist
"03:25:56.493 [DEBUG] (Wabbajack.Networking.Http.ResumableDownloader) Download for 'Pubic Hair Overlays SE.zip' is starting from 0...
03:25:57.201 [INFO] (Wabbajack.Downloaders.DownloadDispatcher) Finished downloading Pubic Hair Overlays SE.zip. Hash: MxO5vFyEjec=; Size: 16B/1.1MB
03:25:57.201 [WARN] (Wabbajack.Downloaders.DownloadDispatcher) Initial download of Pubic Hair Overlays SE.zip failed, trying mirror
03:25:57.201 [INFO] (Wabbajack.Downloaders.DownloadDispatcher) Downloading Pubic Hair Overlays SE.zip from mirror, hash P73sHnfCED4="
if you have any idea where i find the original mod and download it manually, I'd appreciate it
"03:25:56.493 [DEBUG] (Wabbajack.Networking.Http.ResumableDownloader) Download for 'Pubic Hair Overlays SE.zip' is starting from 0...
03:25:57.201 [INFO] (Wabbajack.Downloaders.DownloadDispatcher) Finished downloading Pubic Hair Overlays SE.zip. Hash: MxO5vFyEjec=; Size: 16B/1.1MB
03:25:57.201 [WARN] (Wabbajack.Downloaders.DownloadDispatcher) Initial download of Pubic Hair Overlays SE.zip failed, trying mirror
03:25:57.201 [INFO] (Wabbajack.Downloaders.DownloadDispatcher) Downloading Pubic Hair Overlays SE.zip from mirror, hash P73sHnfCED4="
if you have any idea where i find the original mod and download it manually, I'd appreciate it
NVM I got to workingordovis wrote: β March 7th, 2026, 17:52For Linux users:
Follow this guide https://github.com/Omni-guides/Jackify/ ... -Wabbajack, BEFORE running in Steam place the unlocked files in the Wabbajack install directory.
Arch users:
Ensure that you install Jackify from the user repository: https://aur.archlinux.org/packages/jackify-bin
Last edited by DoubleOO7 on March 9th, 2026, 03:04, edited 3 times in total.
I don't hate women, I love women, that's why I think every man should own several

