From e280199c128e4f80047fa860349252d717be55bc Mon Sep 17 00:00:00 2001 From: Redline <> Date: Fri, 28 Mar 2025 09:32:49 +0100 Subject: [PATCH 1/3] Controller scrolling bug fix --- .../mc2hook/handlers/ControllerScrollingFixHandler.cpp | 7 +++++++ mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.h | 8 ++++++++ mc2hook/mc2hook/handlers/handlers.h | 1 + mc2hook/mc2hook/mc2hook.vcxproj | 2 ++ mc2hook/mc2hook/mc2hook.vcxproj.filters | 6 ++++++ 5 files changed, 24 insertions(+) create mode 100644 mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.cpp create mode 100644 mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.h diff --git a/mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.cpp b/mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.cpp new file mode 100644 index 0000000..0f00e7d --- /dev/null +++ b/mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.cpp @@ -0,0 +1,7 @@ +#include "ControllerScrollingFixHandler.h" + +void ControllerScrollingFixHandler::Install() +{ + // Fixes controller scrolling bug in the menu + mem::write(0x603EBA, 0x90E9); +} \ No newline at end of file diff --git a/mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.h b/mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.h new file mode 100644 index 0000000..485c581 --- /dev/null +++ b/mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.h @@ -0,0 +1,8 @@ +#pragma once +#include + +class ControllerScrollingFixHandler +{ +public: + static void Install(); +}; \ No newline at end of file diff --git a/mc2hook/mc2hook/handlers/handlers.h b/mc2hook/mc2hook/handlers/handlers.h index ea7a661..4da3dc1 100644 --- a/mc2hook/mc2hook/handlers/handlers.h +++ b/mc2hook/mc2hook/handlers/handlers.h @@ -50,6 +50,7 @@ static void InstallMainHandlers() InstallHandler("Chat Handler"); InstallHandler("Game Init Handler"); InstallHandler("Reflection Fidelity Handller"); + InstallHandler("Controller Scrolling Fix"); InstallHandler("SRH"); } \ No newline at end of file diff --git a/mc2hook/mc2hook/mc2hook.vcxproj b/mc2hook/mc2hook/mc2hook.vcxproj index 056702b..0fd255d 100644 --- a/mc2hook/mc2hook/mc2hook.vcxproj +++ b/mc2hook/mc2hook/mc2hook.vcxproj @@ -189,6 +189,7 @@ + @@ -242,6 +243,7 @@ + diff --git a/mc2hook/mc2hook/mc2hook.vcxproj.filters b/mc2hook/mc2hook/mc2hook.vcxproj.filters index 027b650..484d9fb 100644 --- a/mc2hook/mc2hook/mc2hook.vcxproj.filters +++ b/mc2hook/mc2hook/mc2hook.vcxproj.filters @@ -219,6 +219,9 @@ Header Files + + Header Files + @@ -341,5 +344,8 @@ Source Files + + Source Files + \ No newline at end of file From 2be18b91d2f80080ee3fb10d81b980d04872f54c Mon Sep 17 00:00:00 2001 From: Redline <> Date: Fri, 28 Mar 2025 09:59:30 +0100 Subject: [PATCH 2/3] Include header file --- mc2hook/mc2hook/handlers/handlers.h | 1 + 1 file changed, 1 insertion(+) diff --git a/mc2hook/mc2hook/handlers/handlers.h b/mc2hook/mc2hook/handlers/handlers.h index 4da3dc1..657783e 100644 --- a/mc2hook/mc2hook/handlers/handlers.h +++ b/mc2hook/mc2hook/handlers/handlers.h @@ -17,6 +17,7 @@ #include #include #include +#include #include From 4970ab5cd12d240d5379cefcd0294dc1d590faf9 Mon Sep 17 00:00:00 2001 From: Redline <> Date: Wed, 14 May 2025 20:06:57 +0200 Subject: [PATCH 3/3] Made controller scrolling fix toggleable through .ini --- .../mc2hook/handlers/ControllerScrollingFixHandler.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.cpp b/mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.cpp index 0f00e7d..d788580 100644 --- a/mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.cpp +++ b/mc2hook/mc2hook/handlers/ControllerScrollingFixHandler.cpp @@ -2,6 +2,10 @@ void ControllerScrollingFixHandler::Install() { - // Fixes controller scrolling bug in the menu - mem::write(0x603EBA, 0x90E9); + bool enableMenuScrollFix = HookConfig::GetBool("Experimental", "MenuScrollFix", true); + if (enableMenuScrollFix) + { + // Fixes controller scrolling bug in the menu + mem::write(0x603EBA, 0x90E9); + } } \ No newline at end of file