Releases: Reloaded-Project/Reloaded-II
1.25.0
Hello World 👋,
Wassup, folks?! 🎉 Get this—just an hour ago, .NET 8 Release Candidate 1 blasted off! 🚀
Keeping Reloaded on the razor's edge of awesome, I've already juiced up the loader and launcher with this fresh runtime. :tools: Did a quick lap testing those mission-critical mods, and we're golden! 🌟
For now, that's the news. 😉
But keep those ears perked and eyes peeled for Reloaded3 coming in late 2024! 📆 We're talkin' next-level stuff here: fully native, cross-platform, cross-language modding. And yeah, we're stepping out of the Windows-only zone! 🎮 You'll hear more in due time.
Catch ya on the flip side, Code Warriors! 🤘
If you have issues updating, grab the .NET Runtimes manually:
- https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-desktop-8.0.0-rc.1-windows-x64-installer
- https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-desktop-8.0.0-rc.1-windows-x86-installer
Some people have been running into issues because the Microsoft Servers haven't updated their latest reported version over at https://dotnetcli.azureedge.net/dotnet/WindowsDesktop/8.0/latest.version , this is the price of bleeding edge, I suppose :p
1.24.3
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
Release (1.24) Highlights
This is a very small feature update mostly consisting of community PRs.
Custom Controls for Mod Configurations
@jroweboy added the ability additional controls developers can use in their mods ;
The 3 new custom controls are:
Slider: Horizontal Slider with an optional textbox to display the value
FilePicker: Textbox with a button to open a `OpenFileDialog`.
FolderPicker: Textbox with a button to open a custom `FolderSelectDialog`.
Example usage:
[DisplayName("Int Slider")]
[Description("This is a int that uses a slider control similar to a volume control slider.")]
[DefaultValue(100)]
[SliderControlParams(/* Settings here */)]
public int IntSlider { get; set; } = 100;
[DisplayName("Double Slider")]
[Description("This is a double that uses a slider control without any frills.")]
[DefaultValue(0.5)]
[SliderControlParams(minimum: 0.0, maximum: 1.0)]
public double DoubleSlider { get; set; } = 0.5;
[DisplayName("File Picker")]
[Description("This is a sample file picker.")]
[DefaultValue("")]
[FilePickerParams(title:"Choose a File to load from")]
public string File { get; set; } = "";
[DisplayName("Folder Picker")]
[Description("Opens a file picker but locked to only allow folder selections.")]
[DefaultValue("")]
[FolderPickerParams(/* Settings here */)]
public string Folder { get; set; } = "";
Added Localization for Traditional Chinese (TW)
@EditorKos contributed a localization for zh-TW
locale.
Fixes
- Mod Packs can now use custom
ReleaseMetadataFileName(s)
. (thanks @jroweboy) - Mods from GameBanana which specify custom additional contributors/authors no longer breaks mod search.
- GameBanana (probably unintentionally) made a change to how one of the fields is returned.
- And that broke things... so I added a workaround.
- I also need to update the cache server; please give it a moment after the update goes live.
- Log files no longer incorrectly produce newlines for
Write()
(thanks @gurrenm3)
Complete Changes
1.24.3 - 2023-08-20
Merged
- Update SteamHook.cs
#246
Commits
====
1.24.1
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
Release (1.24) Highlights
This is a very small feature update mostly consisting of community PRs.
Custom Controls for Mod Configurations
@jroweboy added the ability additional controls developers can use in their mods ;
The 3 new custom controls are:
Slider: Horizontal Slider with an optional textbox to display the value
FilePicker: Textbox with a button to open a `OpenFileDialog`.
FolderPicker: Textbox with a button to open a custom `FolderSelectDialog`.
Example usage:
[DisplayName("Int Slider")]
[Description("This is a int that uses a slider control similar to a volume control slider.")]
[DefaultValue(100)]
[SliderControlParams(/* Settings here */)]
public int IntSlider { get; set; } = 100;
[DisplayName("Double Slider")]
[Description("This is a double that uses a slider control without any frills.")]
[DefaultValue(0.5)]
[SliderControlParams(minimum: 0.0, maximum: 1.0)]
public double DoubleSlider { get; set; } = 0.5;
[DisplayName("File Picker")]
[Description("This is a sample file picker.")]
[DefaultValue("")]
[FilePickerParams(title:"Choose a File to load from")]
public string File { get; set; } = "";
[DisplayName("Folder Picker")]
[Description("Opens a file picker but locked to only allow folder selections.")]
[DefaultValue("")]
[FolderPickerParams(/* Settings here */)]
public string Folder { get; set; } = "";
Added Localization for Traditional Chinese (TW)
@EditorKos contributed a localization for zh-TW
locale.
Fixes
- Mod Packs can now use custom
ReleaseMetadataFileName(s)
. (thanks @jroweboy) - Mods from GameBanana which specify custom additional contributors/authors no longer breaks mod search.
- GameBanana (probably unintentionally) made a change to how one of the fields is returned.
- And that broke things... so I added a workaround.
- I also need to update the cache server; please give it a moment after the update goes live.
- Log files no longer incorrectly produce newlines for
Write()
(thanks @gurrenm3)
Complete Changes
1.24.1 - 2023-04-24
Merged
- Fixed Logger.Write creating new lines in LogFile
#223
- Add missing using in template
#218
- Update Reloaded.Mod.Interfaces version number
#215
Commits
====
1.24.0
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
Release (1.24) Highlights
This is a very small feature update mostly consisting of community PRs.
Custom Controls for Mod Configurations
@jroweboy added the ability additional controls developers can use in their mods ;
The 3 new custom controls are:
Slider: Horizontal Slider with an optional textbox to display the value
FilePicker: Textbox with a button to open a `OpenFileDialog`.
FolderPicker: Textbox with a button to open a custom `FolderSelectDialog`.
Example usage:
[DisplayName("Int Slider")]
[Description("This is a int that uses a slider control similar to a volume control slider.")]
[DefaultValue(100)]
[SliderControlParams(/* Settings here */)]
public int IntSlider { get; set; } = 100;
[DisplayName("Double Slider")]
[Description("This is a double that uses a slider control without any frills.")]
[DefaultValue(0.5)]
[SliderControlParams(minimum: 0.0, maximum: 1.0)]
public double DoubleSlider { get; set; } = 0.5;
[DisplayName("File Picker")]
[Description("This is a sample file picker.")]
[DefaultValue("")]
[FilePickerParams(title:"Choose a File to load from")]
public string File { get; set; } = "";
[DisplayName("Folder Picker")]
[Description("Opens a file picker but locked to only allow folder selections.")]
[DefaultValue("")]
[FolderPickerParams(/* Settings here */)]
public string Folder { get; set; } = "";
Added Localization for Traditional Chinese (TW)
@EditorKos contributed a localization for zh-TW
locale.
Fixes
- Mod Packs can now use custom
ReleaseMetadataFileName(s)
. (thanks @jroweboy) - Mods from GameBanana which specify custom additional contributors/authors no longer breaks mod search.
- GameBanana (probably unintentionally) made a change to how one of the fields is returned.
- And that broke things... so I added a workaround.
- I also need to update the cache server; please give it a moment after the update goes live.
Complete Changes
1.24.0 - 2023-04-08
Merged
- Add ReleaseMetadataFileName to mod pack item
#213
- Add Traditional Chinese language translation
#212
- Slider FilePicker and FolderPicker Custom Control implementation
#207
Commits
- Fix: Add handling for number type for GameBanana credits field.
d61ddf5
- Bumped: Project Version
2839b6a
- Updated: Template Mod & Changelog Template
3dda67c
====
1.23.10
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
Release (1.23) Highlights
This release focuses on memory and load speed optimisations.
Launcher Changes:
-
Added: Support for assigning tags to mods, mods can now use tags to help end users filter their mod collection.
-
This includes support for some automated tags, e.g.
Has Code Injection
. -
Fixed: Bug that prevented users from selecting other mods after updating a mod in
Edit Mod
menu.
Space and Memory Related Changes:
- Changed: Loader now uses hooking functionality from
Reloaded.SharedLib.Hooks
mod, as opposed to including its own hooking library. (Saves ~1.4MiB) - Changed: Bootstrapper library now dynamically links with Visual C++ Runtime using custom build of .NET Runtime's
libnethost
. (Saves ~300KiB) - Removed: JSON parser from boostrapper, now uses Environment Variables (Saves ~200KiB)
- Added: Full GC After Loader Initialisation. In practice most mods idle outside the occasional hooks.
- Mods can now use
ExcludeAssets="runtime"
in NuGet PackageReference(s) to not unnecessarily include DLLs from interfaces/DI packages.
Load Speed Related Changes:
- Changed: Mod loading logic/model now is singlethreaded (again) but with merged preparing and initialising step. Will not interface/DI DLLs unused at runtime from disk.
- Added: Mod loader now caches whether mods can unload and/or have exports as part of
ModConfig.json
. - This change is what allows for preparing and initialising to be done in one step.
CI/CD
- Builds produced by CI should now hopefully be more deterministic.
Other
- Loader: Now prints unsuccessful attempts at calls to GetController API.
Complete Changes
1.23.10 - 2023-03-11
Commits
- Fixed: Error if Steam Stub bypass ptrs are generated outside 2GB range.
40983b5
====
1.23.9
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
Release (1.23) Highlights
This release focuses on memory and load speed optimisations.
Launcher Changes:
-
Added: Support for assigning tags to mods, mods can now use tags to help end users filter their mod collection.
-
This includes support for some automated tags, e.g.
Has Code Injection
. -
Fixed: Bug that prevented users from selecting other mods after updating a mod in
Edit Mod
menu.
Space and Memory Related Changes:
- Changed: Loader now uses hooking functionality from
Reloaded.SharedLib.Hooks
mod, as opposed to including its own hooking library. (Saves ~1.4MiB) - Changed: Bootstrapper library now dynamically links with Visual C++ Runtime using custom build of .NET Runtime's
libnethost
. (Saves ~300KiB) - Removed: JSON parser from boostrapper, now uses Environment Variables (Saves ~200KiB)
- Added: Full GC After Loader Initialisation. In practice most mods idle outside the occasional hooks.
- Mods can now use
ExcludeAssets="runtime"
in NuGet PackageReference(s) to not unnecessarily include DLLs from interfaces/DI packages.
Load Speed Related Changes:
- Changed: Mod loading logic/model now is singlethreaded (again) but with merged preparing and initialising step. Will not interface/DI DLLs unused at runtime from disk.
- Added: Mod loader now caches whether mods can unload and/or have exports as part of
ModConfig.json
. - This change is what allows for preparing and initialising to be done in one step.
CI/CD
- Builds produced by CI should now hopefully be more deterministic.
Other
- Loader: Now prints unsuccessful attempts at calls to GetController API.
Complete Changes
1.23.9 - 2023-03-03
Commits
- Fixed: Bug causing GitHub Releases with non-Semver tags to fail
a822262
====
1.23.8
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
Release (1.23) Highlights
This release focuses on memory and load speed optimisations.
Launcher Changes:
-
Added: Support for assigning tags to mods, mods can now use tags to help end users filter their mod collection.
-
This includes support for some automated tags, e.g.
Has Code Injection
. -
Fixed: Bug that prevented users from selecting other mods after updating a mod in
Edit Mod
menu.
Space and Memory Related Changes:
- Changed: Loader now uses hooking functionality from
Reloaded.SharedLib.Hooks
mod, as opposed to including its own hooking library. (Saves ~1.4MiB) - Changed: Bootstrapper library now dynamically links with Visual C++ Runtime using custom build of .NET Runtime's
libnethost
. (Saves ~300KiB) - Removed: JSON parser from boostrapper, now uses Environment Variables (Saves ~200KiB)
- Added: Full GC After Loader Initialisation. In practice most mods idle outside the occasional hooks.
- Mods can now use
ExcludeAssets="runtime"
in NuGet PackageReference(s) to not unnecessarily include DLLs from interfaces/DI packages.
Load Speed Related Changes:
- Changed: Mod loading logic/model now is singlethreaded (again) but with merged preparing and initialising step. Will not interface/DI DLLs unused at runtime from disk.
- Added: Mod loader now caches whether mods can unload and/or have exports as part of
ModConfig.json
. - This change is what allows for preparing and initialising to be done in one step.
CI/CD
- Builds produced by CI should now hopefully be more deterministic.
Other
- Loader: Now prints unsuccessful attempts at calls to GetController API.
Complete Changes
1.23.8 - 2023-02-26
Merged
- Updated Dutch translation from 1.18.0 to 1.23.0
#189
Commits
- Integrated Working Directory to application
922cdc4
- Constant name fix
31ec277
- Adjusted localization resource for versioning
578e344
- cli argument parsing fix
42c03fb
- Added trimming of escaped quotation mark in cli args and fixed parameter order
d0dc2ec
- Same parameter order fix for gui app start
87351f2
- Added: Ability to specify Game Working Directory [PR from: AlmightyLks]
fa234a3
- Bumped: Project Version
b667f56
====
1.23.7
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
Release (1.23) Highlights
This release focuses on memory and load speed optimisations.
Launcher Changes:
-
Added: Support for assigning tags to mods, mods can now use tags to help end users filter their mod collection.
-
This includes support for some automated tags, e.g.
Has Code Injection
. -
Fixed: Bug that prevented users from selecting other mods after updating a mod in
Edit Mod
menu.
Space and Memory Related Changes:
- Changed: Loader now uses hooking functionality from
Reloaded.SharedLib.Hooks
mod, as opposed to including its own hooking library. (Saves ~1.4MiB) - Changed: Bootstrapper library now dynamically links with Visual C++ Runtime using custom build of .NET Runtime's
libnethost
. (Saves ~300KiB) - Removed: JSON parser from boostrapper, now uses Environment Variables (Saves ~200KiB)
- Added: Full GC After Loader Initialisation. In practice most mods idle outside the occasional hooks.
- Mods can now use
ExcludeAssets="runtime"
in NuGet PackageReference(s) to not unnecessarily include DLLs from interfaces/DI packages.
Load Speed Related Changes:
- Changed: Mod loading logic/model now is singlethreaded (again) but with merged preparing and initialising step. Will not interface/DI DLLs unused at runtime from disk.
- Added: Mod loader now caches whether mods can unload and/or have exports as part of
ModConfig.json
. - This change is what allows for preparing and initialising to be done in one step.
CI/CD
- Builds produced by CI should now hopefully be more deterministic.
Other
- Loader: Now prints unsuccessful attempts at calls to GetController API.
Complete Changes
1.23.7 - 2022-11-29
Commits
- Changed: Only resolve 1 level of packages in NuGet Dependency Resolver
9a89059
- Bumped: Loader & Launcher Version
e8e5427
====
1.23.6
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
Release (1.23) Highlights
This release focuses on memory and load speed optimisations.
Launcher Changes:
-
Added: Support for assigning tags to mods, mods can now use tags to help end users filter their mod collection.
-
This includes support for some automated tags, e.g.
Has Code Injection
. -
Fixed: Bug that prevented users from selecting other mods after updating a mod in
Edit Mod
menu.
Space and Memory Related Changes:
- Changed: Loader now uses hooking functionality from
Reloaded.SharedLib.Hooks
mod, as opposed to including its own hooking library. (Saves ~1.4MiB) - Changed: Bootstrapper library now dynamically links with Visual C++ Runtime using custom build of .NET Runtime's
libnethost
. (Saves ~300KiB) - Removed: JSON parser from boostrapper, now uses Environment Variables (Saves ~200KiB)
- Added: Full GC After Loader Initialisation. In practice most mods idle outside the occasional hooks.
- Mods can now use
ExcludeAssets="runtime"
in NuGet PackageReference(s) to not unnecessarily include DLLs from interfaces/DI packages.
Load Speed Related Changes:
- Changed: Mod loading logic/model now is singlethreaded (again) but with merged preparing and initialising step. Will not interface/DI DLLs unused at runtime from disk.
- Added: Mod loader now caches whether mods can unload and/or have exports as part of
ModConfig.json
. - This change is what allows for preparing and initialising to be done in one step.
CI/CD
- Builds produced by CI should now hopefully be more deterministic.
Other
- Loader: Now prints unsuccessful attempts at calls to GetController API.
Complete Changes
1.23.6 - 2022-11-29
Commits
- Changed: Delete pre-existing folders when extracting new mods.
50f18cc
- Bumped: Launcher & Loader Version(s)
1ce93fa
====
1.23.5
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
Release (1.23) Highlights
This release focuses on memory and load speed optimisations.
Launcher Changes:
-
Added: Support for assigning tags to mods, mods can now use tags to help end users filter their mod collection.
-
This includes support for some automated tags, e.g.
Has Code Injection
. -
Fixed: Bug that prevented users from selecting other mods after updating a mod in
Edit Mod
menu.
Space and Memory Related Changes:
- Changed: Loader now uses hooking functionality from
Reloaded.SharedLib.Hooks
mod, as opposed to including its own hooking library. (Saves ~1.4MiB) - Changed: Bootstrapper library now dynamically links with Visual C++ Runtime using custom build of .NET Runtime's
libnethost
. (Saves ~300KiB) - Removed: JSON parser from boostrapper, now uses Environment Variables (Saves ~200KiB)
- Added: Full GC After Loader Initialisation. In practice most mods idle outside the occasional hooks.
- Mods can now use
ExcludeAssets="runtime"
in NuGet PackageReference(s) to not unnecessarily include DLLs from interfaces/DI packages.
Load Speed Related Changes:
- Changed: Mod loading logic/model now is singlethreaded (again) but with merged preparing and initialising step. Will not interface/DI DLLs unused at runtime from disk.
- Added: Mod loader now caches whether mods can unload and/or have exports as part of
ModConfig.json
. - This change is what allows for preparing and initialising to be done in one step.
CI/CD
- Builds produced by CI should now hopefully be more deterministic.
Other
- Loader: Now prints unsuccessful attempts at calls to GetController API.
Complete Changes
1.23.5 - 2022-11-29
Commits
- Fixed: Forced DLL Alignment Breaking for some Wine users
d60678d
====