.NET library for finding games. The following launchers are supported:
The following launchers are not yet supported or support has been dropped:
Steam is supported on Windows and Linux.
Usage:
using System;
using System.Runtime.InteropServices;
using GameFinder.RegistryUtils;
using GameFinder.StoreHandlers.Steam;
// use the Windows registry on Windows
// Linux doesn't have a registry
var handler = RuntimeInformation.IsOSPlatform(OSPlatform.Windows)
? new SteamHandler(new WindowsRegistry())
: new SteamHandler(null);
var results = handler.FindAllGames();
foreach (var (game, error) in results)
{
if (game is not null)
{
Console.WriteLine($"Found {game}");
}
else
{
Console.WriteLine($"Error: {error}");
}
}
GOG Galaxy is only supported on Windows.
Usage:
using System;
using GameFinder.StoreHandlers.GOG;
var handler = new GOGHandler();
var results = handler.FindAllGames();
foreach (var (game, error) in results)
{
if (game is not null)
{
Console.WriteLine($"Found {game}");
}
else
{
Console.WriteLine($"Error: {error}");
}
}
Epic Games Store is only supported on Windows.
Usage:
using System;
using GameFinder.StoreHandlers.EGS;
var handler = new EGSHandler();
var results = handler.FindAllGames();
foreach (var (game, error) in results)
{
if (game is not null)
{
Console.WriteLine($"Found {game}");
}
else
{
Console.WriteLine($"Error: {error}");
}
}
Origin is only supported on Windows. Note: EA is deprecating Origin soon and will replace it with EA Desktop.
Usage:
using System;
using GameFinder.StoreHandlers.Origin;
var handler = new OriginHandler();
var results = handler.FindAllGames();
foreach (var (game, error) in results)
{
if (game is not null)
{
Console.WriteLine($"Found {game}");
}
else
{
Console.WriteLine($"Error: {error}");
}
}
NOT YET SUPPORTED
As of May 11, 2022, the Bethesda.net launcher is no longer in use. The package GameFinder.StoreHandlers.BethNet has been deprecated and marked as legacy.
The package GameFinder.StoreHandlers.Xbox has been deprecated and marked as legacy. I no longer maintain this package because it never got used. I initially made GameFinder for Wabbajack and other modding tools however you can't mod games installed with the Xbox App on Windows. The games are installed as UWP apps which makes them protected and hard to modify. Another issue is the fact that you can't distinguish between normal UWP apps and Xbox games meaning your calculator will show up as an Xbox game.
The final issue is related to actual code: in order to find all UWP apps I used the Windows SDK which was a pain to integrate. The CI had to be on Windows, the .NET target framework had to be net6.0-windows-XXXXXXXXXX
which a specific SDK version and it was not nice to use.
The package is of course still available on {NuGet](https://www.nuget.org/packages/GameFinder.StoreHandlers.BethNet/) and should still work but it's marked as deprecated so don't expect any updates.
See CONTRIBUTING for more information.
See LICENSE for more information.