Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion ShinRyuModManager-CE/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,8 @@ private static void Main(string[] args) {
if (!OperatingSystem.IsWindows()) {
IsRebuildMloSupported = false;
}

HandleLoader();

// Check if there are any args, if so, run in CLI mode
// Unfortunately, no one way to detect left Ctrl while being cross-platform
Expand Down Expand Up @@ -102,6 +104,8 @@ private static async Task MainCli(string[] args) {
Log.Information("Shin Ryu Mod Manager-CE v{Version}", AssemblyVersion.GetVersion());
Log.Information("By TheTrueColonel (a port of SRMM Studio's work)");

HandleLoader();

// Parse arguments
var list = new List<string>(args);

Expand Down Expand Up @@ -384,6 +388,12 @@ internal static bool ShouldBeExternalOnly() {
return _externalModsOnly && Directory.Exists(GamePath.ExternalModsPath);
}

private static void HandleLoader() {
if (GamePath.CurrentGame <= Game.Yakuza6 && !File.Exists(Constants.DINPUT8DLL)) {
File.Move(Constants.VERSIONDLL, Constants.DINPUT8DLL);
}
}

private static List<ModInfo> ScanMods(ProfileMask activeProfiles = ProfileMask.All) {
var mods = new List<ModInfo>();

Expand All @@ -405,7 +415,7 @@ private static List<ModInfo> ScanMods(ProfileMask activeProfiles = ProfileMask.A
}

internal static bool MissingDll() {
return File.Exists(Constants.VERSIONDLL);
return File.Exists(Constants.VERSIONDLL) || File.Exists(Constants.DINPUT8DLL);
}

internal static bool MissingAsi() {
Expand Down
2 changes: 1 addition & 1 deletion ShinRyuModManager-CE/ShinRyuModManager-CE.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
<AvaloniaUseCompiledBindingsByDefault>true</AvaloniaUseCompiledBindingsByDefault>

<!-- Versioning -->
<AssemblyVersion>1.4.8</AssemblyVersion>
<AssemblyVersion>1.4.9</AssemblyVersion>
<VersionPrefix>$(AssemblyVersion)</VersionPrefix>
<AssemblyTitle>ShinRyuModManager-CE</AssemblyTitle>
<Company>SRMM Studio</Company>
Expand Down
8 changes: 7 additions & 1 deletion ShinRyuModManager-CE/UserInterface/Assets/changelog.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
> ### **%{color:gold} Version 1.4.8 %** ###
> ### **%{color:gold} Version 1.4.9 %** ###
* Implemented changes from SRMM 4.8.2 (Fixed mods not loading for Yakuza 6 and earlier)
* Windows 11 just wants to be complicated

---

> ### **%{color:orange} Version 1.4.8 %** ###
* Implemented changes from SRMM 4.8.1 (Fixed mods not loading for Kiwami 3)
* Delete `winmm.dll` and `dinput8.dll` from your game directory

Expand Down
1 change: 1 addition & 0 deletions Utils/Constants.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ public static class Constants {
public const string MLO = "YakuzaParless.mlo";
public const string ASI = "YakuzaParless.asi";
public const string VERSIONDLL = "version.dll";
public const string DINPUT8DLL = "dinput8.dll";
public const string PARLESS_NAME = ".parless paths";
public const string EXTERNAL_MODS = "_externalMods";
public const string VORTEX_MANAGED_FILE = "__folder_managed_by_vortex";
Expand Down
2 changes: 2 additions & 0 deletions Utils/GamePath.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ public static class GamePath {
public static string LibrariesPath { get; }
public static string LocalLibrariesPath { get; }
public static string GameExe { get; }
public static bool IsGOG { get; }

static GamePath() {
FullGamePath = Environment.CurrentDirectory;
Expand All @@ -26,6 +27,7 @@ static GamePath() {
ExternalModsPath = Path.Combine(ModsPath, Constants.EXTERNAL_MODS);
LibrariesPath = Path.Combine(FullGamePath, LIBRARIES);
LocalLibrariesPath = Path.Combine(LibrariesPath, Constants.LIBRARIES_INFO_REPO_FILE_PATH);
IsGOG = File.Exists("galaxy64.dll");

// Try to get game
foreach (var file in Directory.GetFiles(FullGamePath, "*.exe")) {
Expand Down