VOOZH about

URL: https://www.nuget.org/packages/MattEqualsCoder.MSURandomizer.Library/

⇱ NuGet Gallery | MattEqualsCoder.MSURandomizer.Library 3.2.4




MattEqualsCoder.MSURandomizer.Library 3.2.4

dotnet add package MattEqualsCoder.MSURandomizer.Library --version 3.2.4
 
 
NuGet\Install-Package MattEqualsCoder.MSURandomizer.Library -Version 3.2.4
 
 
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MattEqualsCoder.MSURandomizer.Library" Version="3.2.4" />
 
 
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MattEqualsCoder.MSURandomizer.Library" Version="3.2.4" />
 
Directory.Packages.props
<PackageReference Include="MattEqualsCoder.MSURandomizer.Library" />
 
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add MattEqualsCoder.MSURandomizer.Library --version 3.2.4
 
 
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: MattEqualsCoder.MSURandomizer.Library, 3.2.4"
 
 
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package MattEqualsCoder.MSURandomizer.Library@3.2.4
 
 
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=MattEqualsCoder.MSURandomizer.Library&version=3.2.4
 
Install as a Cake Addin
#tool nuget:?package=MattEqualsCoder.MSURandomizer.Library&version=3.2.4
 
Install as a Cake Tool
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

MSU Randomizer Library

This is a library which can be included in other .NET projects for looking up MSUs and randomly selecting them or shuffling the tracks.

Instructions

Step 1. Create an settings file

The application uses a YAML settings file to manage base application settings. You can find the base YAML file . These are loaded by default, and you provide another YAMl file with overrides. You can view all possible settings .

Step 2. Add Services to the Service Collection

The MSU Randomizer utilizes DependencyInjection. You'll need to configure a logger, then add both the UI and regular Library services to your Service Collection.

_host = Host.CreateDefaultBuilder(e.Args)
.ConfigureLogging(...})
.ConfigureServices(services =>
{
 services.AddMsuRandomizerServices();
})
.Start();

Step 3. Initialize the MSU Randomizer Library

You can use the IMsuRandomizerInitialization service to setup all required services. Create a MsuRandomizerInitializationRequest, giving it either a stream or path to your settings YAML file from step 1, then call the IMsuRandomizerInitializationService's Initialize function.

var settingsStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("MSURandomizer.settings.yaml");
if (settingsStream == null)
{
 throw new InvalidOperationException("Missing RandomizerSettings stream");
}

var msuInitializationRequest = new MsuRandomizerInitializationRequest
{
 MsuAppSettingsStream = settingsStream,
};

_host.Services.GetRequiredService<IMsuRandomizerInitializationService>().Initialize(msuInitializationRequest);

Step 4. Use any of the serviices as you'd like

Once setup, you can use any of the MSU Randomizer library services to look up MSUs, randomize MSUs, and more.

  • IMsuRandomizerInitializationService - Service used to initialize the most critical services for loading the app settings and MSU types.
  • IMsuAppSettingsService - Used to load the MSU Randomizer app settings for global options.
  • IMsuUserOptionsService - Used to load and save options for the user, such as the MSU directories and MSU overrides.
  • IMsuTypeService - Loads MSU types from a folder of JSON configs or a single JSON config.
  • IMsuLookupService - Scans folders for MSUs and automatically determines the correct MSU type for them.
  • IMsuDetailsService - Loads or saves the MSU details for a given MSU from YAML or JSON.
  • IMsuSelectorService - Used for randomly selecting/shuffling MSUs and saving them.
  • IMsuUiFactory - Factory for generating UI elements to display to the user.
Product Versions Compatible and additional computed target framework versions.
.NET net8.0 net8.0 is compatible.  net8.0-android net8.0-android was computed.  net8.0-browser net8.0-browser was computed.  net8.0-ios net8.0-ios was computed.  net8.0-maccatalyst net8.0-maccatalyst was computed.  net8.0-macos net8.0-macos was computed.  net8.0-tvos net8.0-tvos was computed.  net8.0-windows net8.0-windows was computed.  net9.0 net9.0 is compatible.  net9.0-android net9.0-android was computed.  net9.0-browser net9.0-browser was computed.  net9.0-ios net9.0-ios was computed.  net9.0-maccatalyst net9.0-maccatalyst was computed.  net9.0-macos net9.0-macos was computed.  net9.0-tvos net9.0-tvos was computed.  net9.0-windows net9.0-windows was computed.  net10.0 net10.0 is compatible.  net10.0-android net10.0-android was computed.  net10.0-browser net10.0-browser was computed.  net10.0-ios net10.0-ios was computed.  net10.0-maccatalyst net10.0-maccatalyst was computed.  net10.0-macos net10.0-macos was computed.  net10.0-tvos net10.0-tvos was computed.  net10.0-windows net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on MattEqualsCoder.MSURandomizer.Library:

Package Downloads
MattEqualsCoder.MSURandomizer.UI

UI library with windows and controls for randomizing MSUs.

MattEqualsCoder.MSURandomizer.Avalonia

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
3.2.4 138 5/13/2026
3.2.4-beta.2 85 4/26/2026
3.2.4-beta.1 217 2/27/2026
3.2.3 420 1/20/2026
3.2.2 332 12/18/2025
3.2.1 461 9/14/2025
3.2.0 254 9/10/2025
3.1.1 575 3/11/2025
3.0.4 248 12/27/2024
3.0.3 214 12/27/2024
3.0.2 212 12/26/2024
3.0.1 703 12/22/2024
3.0.0 215 11/23/2024
3.0.0-rc.5 240 11/9/2024
3.0.0-rc.4 110 11/9/2024
3.0.0-rc.3 107 11/7/2024
3.0.0-rc.2 99 11/7/2024
3.0.0-rc.1 100 11/3/2024
2.1.2 427 7/22/2024
2.1.1 255 7/15/2024
Loading failed