Releases: Reloaded-Project/Reloaded-II
[Beta] Hotfix | 1.8.2
This is an experimental build that may have minor bugs; please report issues directly to the Issues Page.
If you encounter issues please download 1.7.2 instead.
Also be prepared to download an updated version of .NET Core ♥
=========
Small hotfix for 1.8.1 which bumps the version of Kernel32AddressDumper to .NET 5.
For more changelogs, please scroll down.
[Beta] Hotfix | 1.8.1
This is an experimental build that may have minor bugs; please report issues directly to the Issues Page.
If you encounter issues please download 1.7.2 instead.
Also be prepared to download an updated version of .NET Core ♥
Changelog
Please see 1.8.0 Update Notes.
This is a quick hotfix.
Bug Fixes
-
Fixed issue where the config sanitization code wasn't being executed when a config is created for the first time (not loaded from file).
-
Made NuGet Resource retrieval asynchronous by using
LazyAsync
instead ofLazy
. This likely fixes #66
[Beta] Minor Update
This is an experimental build that may have minor bugs; please report issues directly to the Issues Page.
If you encounter issues please download 1.7.2 instead.
Also be prepared to download an updated version of .NET Core ♥
Summary
There are no major feature changes in this update. This update just ties loose ends left over before I went into a hiatus. This update consists of bug fixes and behind the scenes technical changes.
Epic Stuff
.NET 5 Support
Reloaded has been updated to .NET 5; finally now that the core issue preventing the loader from functioning as intended has been fixed and backported to 5.0.1.
For developers this means more access to APIs in their code, C#9, function pointers and much more.
For end users; you get to enjoy the minimal under the hood performance improvements here and there; though not anything too major to the point you'd notice.
Unfortunately due to a last minute bug in .NET 5, there likely wouldn't be a single file EXE for a while.
Documentation Site
A new site has been rolled out at reloaded-project.github.io/Reloaded-II/ which now hosts the most up to date documentation for Reloaded.
Internal Changes
- Use separate
AssemblyLoadContext
for mods' exported types (see: Inter Mod Communication) to prevent potential future clashes with any libraries used by the mod loader itself.
Minor Performance Improvements
- Asynchronous image loading.
- Asynchronous I/O (Writing/Reading files).
- Faster file discovery.
- Fork of
Colorful.Console
with small tweak that writes to console without waiting for a background thread.
Miscellaneous
Internet Connection Check
Reloaded now checks if the user can access the internet by connecting to http://clients3.google.com/generate_204
. If the user cannot access the internet, some actions (e.g. Check Updates) are disabled; preventing errors and speeding up the boot and navigation process.
Fun fact: This is the same method as used by Chromium OS.
NuGet: Silent Error Handling
NuGet related errors are now silently handled away from the user's view. As such, errors aren't thrown directly at the user when e.g. a server cannot be contacted.
Internal Refactoring
- Updated dependencies.
- Removed dead code.
- Cleaned up a lot of warnings.
- Reduced code redundancy (more code re-use).
Bug Fixes
NuGet: Lazy Loading
Fixed a small issue where the search resource/functionality wasn't lazy loaded (only when/once needed) at startup; improving startup times.
NuGet: Configure Sources
Modifying the feed list now immediately takes effect; rather than requiring a launcher restart to fetch data from new feeds.
NuGet: Improved Error Handling & Misc. Fixes
- User cannot add sources without an URL.
- Sources without an URL are automatically removed at startup.
- Failure to connect to one server will not prevent other servers from being used in e.g.
Download Mods
search.
[Beta] Hotfix | 1.7.2
Fixed a critical bug that might cause some mods to be loaded improperly introduced in Beta 1.7.0 when optimizing startup times.
Please see previous versions for full changelog.
[Beta] Hotfix | 1.7.1
No proper documentation is provided for this release at this current moment in time.
This is a hotfix for 1.7.0 with some misc. features from 1.8 baked in; released due to urgency (which will be presented in next release).
Please refer to the changelog for 1.7.0 for changes.
Change Summary (for those interested anyway):
- Fix broken application shortcuts [Regression in 1.7.0]
- Improve startup times more, especially when multiple NuGet update sources are used.
- Add feature to be used by mods which allows them to wait until console is initialized. (e.g. when you need to change encoding)
- When console logging is enabled, Reloaded will now log to file with timestamps (See: AppData/Reloaded-Mod-Loader-II/Logs)
- NuGet Package Converter: Mods now have proper titles.
- Small event handle leak in launcher fixed.
- Misc. code cleanup.
[Beta] I'm Glad That You're Evil Too | 1.7.0
Note
This is a beta release; it may have issues.
Updating to this version is optional.
Don't accept this update if you are working with Persona 4 Golden; please use version 1.6.1 instead.
Some (but not all) people seem to be having an issue with P4G at the moment.
Summary
- Epic Stuff
- Miscellaneous
- Support for Multiple NuGet Sources
- Standalone NuGet Build Tool
- Ignore Mod Configurations in Unexpected Folders
- Remove Ready2Run from Launcher
- Generate Crashlog on Loader Failure
- Ability to mark mods as Libraries
- More Descriptive User Errors
- Issue Templates
- Improvements to Archive Extractor
- Improvements in Dependency Resolution
- Additional Translations
- Asynchronous Logging
- Multithreaded Compilation Flag
- Bug Fixes
This is the biggest update that Reloaded has ever had since it released over a year ago.
Epic Stuff
Built-in Dependency Checker
People are bad at reading. For a while now, this has been Reloaded's #1 end user issue. Users every other day would ask for help running Reloaded because they did not install the requirements listed. This issue alone generally amounts to what feels like 75-80% of all questions asked.
This would happen in many places. Github issues, GameBanana comments, game specific Discord groups and even on guides with images that direct users how to install step by step.
In the past, the required dependencies were at the top of readme. This did not work very well on Github, as the user required to scroll the page to see the dependencies; so it was changed in favour of a more optimised system. However, surprisingly, a lot of GameBanana users had a tendency of missing the prerequisites too, which was an annoyance.
I then figured that placing the dependencies beside the download buttons so that the users literally can't miss them would be better. This worked out pretty well at the time, however as more and more users started to use Reloaded, the issue would once again become an annoyance.
Well, things are better now. I had to write a .NET Core Install Checking Library from scratch while taking into account various ways .NET Core can "Roll Forward" to use a newer version if available (e.g. run 3.0 application on 3.1) as well as resolve dependencies (e.g. Desktop Runtime / Microsoft.WindowsDesktop.App
requires Runtime (Microsoft.NETCore.App)
).
It was non-trivial work but not difficult for someone like me. Hopefully this should help prevent any further issues.
Note:
Before seeing the dependency checker above; first time users might experience a dialog that looks like this:
This will take them to the following download page (large screenshot) where they'll need to hit Download x64
or Download x86
depending on their choice of 32 or 64-bit launcher.
For this reason it's not ideal, but it's better than no visible message or text for a casual end user. There is also a basic help file in the launcher folder Help.html
in case things don't go smoothly.
Single File Launcher & .NET 5 (Next Update)
The launcher has been upgraded to now run on .NET 5. It is a bit smaller now and it is single file.
Before, I wasn't able to do this for various technical reasons, including:
- Longer load times.
- Actual application path not matching EXE path (Deal breaker: Launcher needs to find the loader!)
- Inability to edit launcher files (default theme etc.) for end users.
.NET 5 greatly improves on how single file applications are packaged; providing real single file applications which load libraries from memory and without needing to extract to a temporary directory. All is good, load times are faster too.
Theme Support
Based off of some users' preferences to change minor UI elements (e.g. rounded window corners), update 1.7 features experimental theming support for the launcher.
This should allow you to customize just about every aspect of the Reloaded's default theme including but not limited to:
- Images
- Colours
- Animations
- Button/Control Styles
A template theme for custom themes named Halogen
can be found in Theme/Halogen.xaml
.
Meanwhile NoCorners.xaml
provides an example of how individual small elements of the default theme may be edited without creating a fully blown theme.
Please note that this functionality is experimental; expect the possibility of minor bugs and/or issues.
Minor UI Overhaul
Alphabetical Sidebar Sorting
There used to be no strict order to how the individual applications are displayed, as it is only expected to have users add 3-4 at most. However, Reloaded has been getting traction and for the real power users out there, sooner or later this number may expand.
Before, individual applications were displayed used to be alphabetically by AppId
(normally EXE name) because that is how the list of configs is returned from filesystem. But this is no good as the AppId
doesn't always match what the user might expect.
This update sorts the games on the sidebar by alphabetical order.
Configure Mods
As Reloaded went more widescreen this update to allow for better localization support and a cleaner UI; there was plenty more of horizontal space to now be leveraged by the various menus.
Therefore Author Name and Mod Version have now been inlined directly into the mod list.
In addition, the Mod Id has been removed from this menu as it is only useful to developers, not end users. This is a-ok as most mods use a folder name matching the ID anyway.
Before:
After:
The great benefit of this is that mods are now able to have longer descriptions without shrinking the mod list and stretching the image. Pretty cool.
Separate Add/Edit Application
Looking good?
It turns out that in practice, most Reloaded users do not need changing any of the application details after adding an application. There were also concerns that people might not know that the same menu which adds an application can also be used to edit it.
As a result; adding and editing application details have been split into separate functions. Adding an application will automatically take you to the default menu: Configure Mods
; while the old menu is now available under the Edit Application
button.
PS. Will have to figure something out about long game names.
Add Useful Links
A variety of useful links have been added to the main startup screen of Reloaded. Looks nice, and may potentially be very useful.
Reduce Tooltip Delays
Some more minor features and pieces of potentially useful to know information (e.g. mod order) do not not yet have their own explicit buttons.
Many of these misc. features have now had their tooltip delayed to 0, such that they should be better discoverable.
Application Sidebar Grouping
From time to time, new features are introduced onto the sidebar as Reloaded's capabilities expand.
To make it easier for the end user to navigate the UI, all actions are now grouped into categories.
Before and After
Create Mod Menu
When you are creating a new mod from inside the launcher, you can no...
[Stable] Misc Bugfix | 1.6.1
Prerequisites
In order to run Reloaded, you will need the following:
- Windows 7/8.1/10 with latest updates.
- .NET Core 3.1 Desktop Runtime x64 AND x86
- Visual C++ Redist 2015/17/19 (x64) and (x86)
X86 Runtime is necessary for using Reloaded II with 32bit applications.
X64 Runtime is necessary for running Reloaded II's Launcher and 64bit applications.
Changelog
Bugfixes
- Fixed crash in Add App menu when an executable does not define any import descriptors (imported DLLs).
[Stable] A Small Feature Addition | 1.6.0
Prerequisites
In order to run Reloaded, you will need the following:
- Windows 7/8.1/10 with latest updates.
- .NET Core 3.1 Desktop Runtime x64 AND x86
- Visual C++ Redist 2015/17/19 (x64) and (x86)
X86 Runtime is necessary for using Reloaded II with 32bit applications.
X64 Runtime is necessary for running Reloaded II's Launcher and 64bit applications.
Changelog
New Feature(s)
- Added a built-in changelog using Markdig.WPF.
[Stable] Misc Bugfix | 1.5.4
Prerequisites
In order to run Reloaded, you will need the following:
- Windows 7/8.1/10 with latest updates.
- .NET Core 3.1 Desktop Runtime x64 AND x86
- Visual C++ Redist 2015/17/19 (x64) and (x86)
X86 Runtime is necessary for using Reloaded II with 32bit applications.
X64 Runtime is necessary for running Reloaded II's Launcher and 64bit applications.
Changelog
Improvements
Miscellaneous
- Fixed potential crash in Manage Mods menu if a mod has no preview icon.
[Stable] Misc Bugfix | 1.5.3
Prerequisites
In order to run Reloaded, you will need the following:
- Windows 7, 8.1, 10 or above.
- .NET Core 3.1 Desktop Runtime (Both x64 and x86)
- Visual C++ Redist 2015/17/19 (x64) and (x86)
X86 Runtime is necessary for using Reloaded II with 32bit applications.
X64 Runtime is necessary for running Reloaded II's Launcher and 64bit applications.
Changelog
Miscellaneous
- Fixed crash when selecting application whose EXE does not exist in
Add Application
menu.