From fb57a62821585e2555903916d6a32d787155592b Mon Sep 17 00:00:00 2001 From: BeZide93 Date: Tue, 28 Oct 2025 08:38:33 +0100 Subject: [PATCH 1/2] Added Cheat Support --- src/LibKenjinx/rd.xml | 25 +++++++++++++++++++++++-- src/Ryujinx.HLE/HOS/TamperMachine.cs | 20 +++++++++++++++----- src/Ryujinx.HLE/Ryujinx.HLE.csproj | 1 + 3 files changed, 39 insertions(+), 7 deletions(-) diff --git a/src/LibKenjinx/rd.xml b/src/LibKenjinx/rd.xml index 2faf502ad..416d790f1 100644 --- a/src/LibKenjinx/rd.xml +++ b/src/LibKenjinx/rd.xml @@ -24,7 +24,7 @@ - + + + + + + + + + + + + + + - \ No newline at end of file + diff --git a/src/Ryujinx.HLE/HOS/TamperMachine.cs b/src/Ryujinx.HLE/HOS/TamperMachine.cs index a22e87cb1..60f0583d1 100644 --- a/src/Ryujinx.HLE/HOS/TamperMachine.cs +++ b/src/Ryujinx.HLE/HOS/TamperMachine.cs @@ -50,6 +50,9 @@ namespace Ryujinx.HLE.HOS _programs.Enqueue(program); _programDictionary.TryAdd($"{buildId}-{name}", program); + + // NEU: Standardmäßig einschalten (bei Android gibt es (noch) keine UI, die EnableCheats aufruft) + program.IsEnabled = true; } Activate(); @@ -138,7 +141,11 @@ namespace Ryujinx.HLE.HOS // Re-enqueue the tampering program because the process is still valid. _programs.Enqueue(program); - + // NEU: Wenn der Cheat (noch) disabled ist – nur weiter rotieren, nicht ausführen. + if (!program.IsEnabled) + { + return true; + } Logger.Debug?.Print(LogClass.TamperMachine, $"Running tampering program {program.Name}"); try @@ -159,10 +166,13 @@ namespace Ryujinx.HLE.HOS { Logger.Debug?.Print(LogClass.TamperMachine, $"The tampering program {program.Name} crashed, this can happen while the game is starting"); - if (!string.IsNullOrEmpty(ex.Message)) - { - Logger.Debug?.Print(LogClass.TamperMachine, ex.Message); - } + //if (!string.IsNullOrEmpty(ex.Message)) + //{ + // Logger.Debug?.Print(LogClass.TamperMachine, ex.Message); + //} + + // NEU: kompletter Stacktrace + Logger.Debug?.Print(LogClass.TamperMachine, ex.ToString()); } return true; diff --git a/src/Ryujinx.HLE/Ryujinx.HLE.csproj b/src/Ryujinx.HLE/Ryujinx.HLE.csproj index ad5fcca6d..8adc087c1 100644 --- a/src/Ryujinx.HLE/Ryujinx.HLE.csproj +++ b/src/Ryujinx.HLE/Ryujinx.HLE.csproj @@ -2,6 +2,7 @@ true + false From 9bbb2ecc6ed067378492eb7f92e67ff23a724847 Mon Sep 17 00:00:00 2001 From: BeZide93 Date: Sat, 1 Nov 2025 23:49:41 +0100 Subject: [PATCH 2/2] changed comments to english --- src/LibKenjinx/rd.xml | 4 ++-- src/Ryujinx.HLE/HOS/TamperMachine.cs | 17 +++++++---------- 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/src/LibKenjinx/rd.xml b/src/LibKenjinx/rd.xml index 416d790f1..c4dc5ae26 100644 --- a/src/LibKenjinx/rd.xml +++ b/src/LibKenjinx/rd.xml @@ -531,7 +531,7 @@ Dynamic="Required All" /> - + - + diff --git a/src/Ryujinx.HLE/HOS/TamperMachine.cs b/src/Ryujinx.HLE/HOS/TamperMachine.cs index 60f0583d1..95e67415d 100644 --- a/src/Ryujinx.HLE/HOS/TamperMachine.cs +++ b/src/Ryujinx.HLE/HOS/TamperMachine.cs @@ -51,7 +51,7 @@ namespace Ryujinx.HLE.HOS _programs.Enqueue(program); _programDictionary.TryAdd($"{buildId}-{name}", program); - // NEU: Standardmäßig einschalten (bei Android gibt es (noch) keine UI, die EnableCheats aufruft) + // NEW: Enable by default (on Android there is currently no UI that calls EnableCheats) program.IsEnabled = true; } @@ -141,11 +141,13 @@ namespace Ryujinx.HLE.HOS // Re-enqueue the tampering program because the process is still valid. _programs.Enqueue(program); - // NEU: Wenn der Cheat (noch) disabled ist – nur weiter rotieren, nicht ausführen. + + // NEW: If the cheat is (still) disabled — keep rotating, do not execute. if (!program.IsEnabled) { return true; } + Logger.Debug?.Print(LogClass.TamperMachine, $"Running tampering program {program.Name}"); try @@ -166,12 +168,7 @@ namespace Ryujinx.HLE.HOS { Logger.Debug?.Print(LogClass.TamperMachine, $"The tampering program {program.Name} crashed, this can happen while the game is starting"); - //if (!string.IsNullOrEmpty(ex.Message)) - //{ - // Logger.Debug?.Print(LogClass.TamperMachine, ex.Message); - //} - - // NEU: kompletter Stacktrace + // NEW: log full stack trace Logger.Debug?.Print(LogClass.TamperMachine, ex.ToString()); } @@ -180,7 +177,7 @@ namespace Ryujinx.HLE.HOS public void UpdateInput(List gamepadInputs) { - // Look for the input of the player one or the handheld. + // Look for the input of player one or the handheld. foreach (GamepadInput input in gamepadInputs) { if (input.PlayerId is PlayerIndex.Player1 or PlayerIndex.Handheld) @@ -191,7 +188,7 @@ namespace Ryujinx.HLE.HOS } } - // Clear the input because player one is not conected. + // Clear the input because player one is not connected. Volatile.Write(ref _pressedKeys, 0); } }