Home Artists Posts Import Register

Content

It's time for a new update, and this time the post is also synchronized with a somewhat minor but foundational update.

I spent most of the past 7 days doing research into the best way to update our UI to be a bit more consistent. As it stands, parts of Wabbajack were developed about 1.5 years ago with the 1.0 release, then thanks to Noggog and Erri, my rather poor excuse for a UI was given a much needed face-lift. In the time since the original UI designs the code has gone through several changes, and some code structuring ideas (mostly around data binding) we've replaced with different technologies like Rx and DynamicData. But unfortunately a lot of this old code still remains.

Programmers have many names for this sort of "old code". Cruft, "tech-debt", or "vestigial code" are all some common names for the same thing: "it works, but it's different from the rest of the app". So much of the past week I spent wrapping my head around how we can improve the existing code, while not doing a "burn it down and restart the project" sort of approach.

The answer to all this is that I will be spending time over the next few months rewriting and rewiring parts of the UI to conform to a more standardized and consistent way of modeling the app. But along with that will come a lot of opportunities to improve the UI in the process.

As for the latest update: 2.4.3.0, we have several compiler features curtesy of Luca namely that WJ can now inline save files (when requested by the list author) and MO2 splash screens.

I took some time and upgraded some of the last few dependencies that relied on .NET Framework, and moved them to .NET 5. This shouldn't have much of an impact on the app, but it's a "housecleaning" sort of task. Many libraries from .NET Framework work fine with a .NET 5 app, but not all, so making the switch was a good to do.

And finally, this release includes the first step to having our own launcher, namely the app now tracks the locations and metadata for the installs on your machine. This data is stored locally, but will allow us to code several improvements for the app in the future. For example, we should be able to update the installer to be able to pull archives (only during installation) from any other modlists you have installed. And when we do have a launcher UI we'll need to know what lists are available for launch. For now this data isn't read by any part of the app, but it's good to start tracking it now so we have it available in future versions.

Comments

John Barry

Ah refactoring code everyone's favorite activity :) The one thing I'm having issues with at present, not really your issue, is checksums. Namely I need a mod Aether Suite SE, which I have in zip format, but the list is expecting in 7z format, which is Gigabyte's of data and only on mediafire which stalls after several hours and never recovers. Been at it for a week or more. Something analogous to taking mods from other lists, only nothing I know of has this. Meh, will keep trying, or the idea of taking screenshots will pall. Have a good week :)