All notable changes to this project will be documented in this file.
- New Download Server - LexouilleTM - special thanks
- Fork of the Switch-Mods Wiki with all Mods reuploaded.
- Small code refactor to improve code readability
YuzuModDownloader
has now been rebranded toSwitchEmuModDownloader
- All relevant code has been refactored
- UI tweaks
- All previous versions of
YuzuModDownloader
will be invalidated and going forward, 1.5.0.0+ will be supported. - Updated Avalonia framework from
11.0.9
to11.0.10
to fix some bugs
Official Switch-Mods Repo
is now working again.
- YuzuModDownloader now skips downloading a particular mod if it cannot connect to the remote server
- Improved
theboy181
download server choice performance - Upgraded all project packages to their latest versions for even better performance
- Rewrote several classes & methods for improved performance
- Removed redundant code & shrunk overall codebase
- Small rewrite of
AppUpdater.cs
to improve startup performance - Optimised several methods further to utilise await/async and increase performance
- Crashing when download URL host times out - thanks @brolio
- Show Game Titles in Download Confirmation Dialog - thanks @kathyrollo
- If Games have been detected, the
Show Details
button will be enabled and games which mods have been downloaded for will appear in here.
- If Games have been detected, the
- Detection for Flatpak installations of Yuzu - thanks @soufrabi, @rotanigroc
- Upgraded YuzuModDownloader from .NET 7 to .NET 8 - LTS and much better performance
- Upgraded 7z.zip from 22.01 to 23.01 - better performance
- Upgraded all project packages to their latest versions for better performance and to fix some underlying framework bugs
- Rewrote
GetUserDirectoryPath()
andGetModPath()
withinModDownloader.cs
to better handle paths for Linux and Windows - thanks @soufrabi - GUI tweaks to improve UX
- Removed redundant code from codebase
- Optimised several methods further to utilise await/async and increase performance.
- Latest Microsoft Edge Chromium or Google Chrome is recommended to be installed (Linux - deb only) for increased
PuppeteerSharp
performance
- Error in parsing
load_directory
withinqt-config.ini
- thanks @anzix, @garbear theboy181
download server is working again, now usesPuppeteerSharp
to scrape repo as GitHub now usesReact.JS
- thanks @Pacomss, @SebinaLukawa97, @spyro2000, @W13N3N
- New Download Server - HolographicWings TOTK
- Automatically detects current game version and pulls game version mod package
- Complete rewrite in .NET 7 & AvaloniaUI. Goodbye .NET Framework 4.8.1 - cross-compatible UI, better performance, newer c# features and increased support for await/async model
- Now supports Linux and SteamOS without needing Proton - thanks @ssorgatem, @mymeyers03, @MGThePro, @Redhawk18, @ProNoob135, @Rikj000 and @cimba007
YuzuModDownloader
now bundles all .dll dependencies inside the executable - no need to drag any additional .dll files intoYuzuModDownloader
's working directoryAppUpdater.cs
now handles disconnections and VPN killswitches, terminates the app- Optimised several methods to utilise await/async.
- Retired
WebClient
, now utilisesIHttpClientFactory
to pull data - faster and memory efficient - Further GUI tweaks to improve UX
- ProgressText now streamlined inside ProgressBar
- Removed redundant code from codebase
- Better error handling
- Tweaked
ReadGameTitlesDatabaseAsync
method withinTheBoy181ModDownloader.cs
andOfficialYuzuModDownloader.cs
- Reads XML files asynchronously - improves reading performance and stops GUI main thread locking up
- Ignores XML comments within XML files - prevents comment tags causing parsing errors
- Issue #21 Unhandled Exception error when downloading mods with URLs containing certain special characters from
theboy181
's server
- New Download Server - theboy181 - special thanks
- Game version detection for Mod Downloader - currently only compatible with theboy181's Download Server
- Complete refactor of
ModDownloader.cs
to allow modularity via InheritanceOfficialYuzuModDownloader.cs
handles Yuzu Switch-Mods Wiki modsTheBoy181ModDownloader.cs
handles theboy181 mods
- Merged
DirectoryUtilies.cs
intoModDownloader.cs
as the former became redundant Utility class Game.cs
now used to pass Game information between methods rather than singular method parameters- UI Tweaks
- Moved
General Options
from main GUI, into MenuStrip - General options can now be found under
Options
>General
- Moved
- Race condition between Extracting Mods and Deleting Mod Archives - now waits for all 7z processes to exit before processing archive deletion
- Total Games downloaded MessageBox dialog fixed - now only counts the directories containing mods, rather than total directories within
/load/
- YuzuModDownloader now uses locally installed 7-Zip if present
- Migrated 7z.zip hosting from CloudMe to GitHub
- Upgraded 7z.zip from 19.00 to 22.01 - better performance
- Rewrote
ReadGameTitleIdDatabase
method to improve performance - now usesXmlReader
- Updated
HtmlAgilityPack
binaries from1.11.42
to1.11.46
- Issue #17 Unhandled Exception error for some users when downloading 7-Zip prerequisite
- Option to clear Downloaded Mod Archives after being unpacked - checked by default
- Option to
Check for Updates
within Yuzu Mod Downloader
- Yuzu Mod Downloader update module will now allow overlapping of versions before older versions are no longer supported.
- Rewrote method to identify Mod Directory root - now reads
qt-config.ini
and uses theload_directory
key value - UI Tweaks
- Bug where Mods did not extract properly when filepaths contained spaces
- Rare error parsing
GameTitleIDs.xml
- Other minor bug fixes
- Initial release