diff --git a/AMBuilder b/AMBuilder index 500d4cc23..70e3af876 100644 --- a/AMBuilder +++ b/AMBuilder @@ -71,6 +71,7 @@ for sdk_target in MMSPlugin.sdk_targets: protoc_builder = builder.tools.Protoc(protoc = sdk_target.protoc, sources = [ os.path.join(sdk['path'], 'common', 'network_connection.proto'), + os.path.join(sdk['path'], 'common', 'valveextensions.proto'), os.path.join(sdk['path'], 'common', 'networkbasetypes.proto'), os.path.join(sdk['path'], 'common', 'engine_gcmessages.proto'), os.path.join(sdk['path'], 'gcsdk', 'steammessages.proto'), diff --git a/gamedata/cs2fixes.games.txt b/gamedata/cs2fixes.games.txt index f81bdf08a..bb93aef51 100644 --- a/gamedata/cs2fixes.games.txt +++ b/gamedata/cs2fixes.games.txt @@ -115,7 +115,7 @@ { "library" "server" "windows" "\x0F\x84\x2A\x2A\x2A\x2A\x80\xB8\x2A\x2A\x2A\x2A\x00\x0F\x84\x2A\x2A\x2A\x2A\x80\x3D\x2A\x2A\x2A\x2A\x00\x74\x15" - "linux" "\x0F\x84\x2A\x2A\x2A\x2A\x44\x0F\xB6\xB0\x2A\x2A\x2A\x2A\x45\x84\xF6\x0F\x84" + "linux" "\x0F\x84\x2A\x2A\x2A\x2A\x44\x0F\xB6\xB8\x2A\x2A\x2A\x2A\x45\x84\xFF\x0F\x84" } // Called right after this in windows "Entity %s(%s) is ambiguously parented to..." "CBaseEntity_SetParent" @@ -338,7 +338,7 @@ "BotNavIgnore" { "windows" "\xE9\x2C\x00\x00\x00\x90" - "linux" "\xE9\x25\x00\x00\x00\x90" + "linux" "\xE9\x22\x00\x00\x00\x90" } } } diff --git a/sdk b/sdk index 0df1f3b8e..5f891c902 160000 --- a/sdk +++ b/sdk @@ -1 +1 @@ -Subproject commit 0df1f3b8e39a47b8840f5d5545ef5de37761683c +Subproject commit 5f891c9026230cce0fc0a3fc4b5fef1c467a1385 diff --git a/src/detours.cpp b/src/detours.cpp index 2980b369f..b48eb7dd6 100644 --- a/src/detours.cpp +++ b/src/detours.cpp @@ -169,8 +169,11 @@ void* FASTCALL Detour_ProcessUsercmds(CCSPlayerController* pController, CUserCmd { uint64 button = iterator->button(); - // Remove normal subtick movement inputs by button & subtick movement viewangles by pitch/yaw - if ((button >= IN_JUMP && button <= IN_MOVERIGHT && button != IN_USE) || iterator->pitch_delta() != 0.0f || iterator->yaw_delta() != 0.0f) + // Remove normal subtick movement inputs by button & subtick movement viewangles by pitch/yaw. + // IN_JUMP is exempt: since the CS2 Season 5 jump rework (buffered jump presses), a mousewheel + // +jump press exists only in the subtick moves — stripping it clips/eats scroll jumps entirely, + // while held space survives in the tick-boundary button state. + if ((button > IN_JUMP && button <= IN_MOVERIGHT && button != IN_USE) || iterator->pitch_delta() != 0.0f || iterator->yaw_delta() != 0.0f) subtickMoves->erase(iterator); else iterator++;