From 0ccf5e8771e58c7887fcb4bba27930808f5cf2e2 Mon Sep 17 00:00:00 2001 From: MelonSpeedruns Date: Sat, 4 Apr 2026 11:59:08 -0400 Subject: [PATCH 1/2] No Climbing Miss Animation toggle, similar to TPHD --- include/dusk/settings.h | 1 + src/d/actor/d_a_alink_hang.inc | 12 ++++++++++++ src/dusk/imgui/ImGuiMenuEnhancements.cpp | 6 ++++++ src/dusk/settings.cpp | 1 + 4 files changed, 20 insertions(+) diff --git a/include/dusk/settings.h b/include/dusk/settings.h index 582c5a1872..ffd1016c48 100644 --- a/include/dusk/settings.h +++ b/include/dusk/settings.h @@ -35,6 +35,7 @@ struct UserSettings { int damageMultiplier; bool instantDeath; bool fastClimbing; + bool noMissClimbing; bool fastTears; // Preferences diff --git a/src/d/actor/d_a_alink_hang.inc b/src/d/actor/d_a_alink_hang.inc index a98020ce4f..89f11fc940 100644 --- a/src/d/actor/d_a_alink_hang.inc +++ b/src/d/actor/d_a_alink_hang.inc @@ -285,7 +285,11 @@ int daAlink_c::procHangStartInit() { offNoResetFlg2(FLG2_UNK_2000); if (checkHangFootWall()) { + #if TARGET_PC + if (!is_prev_hangReady && cM_rnd() < 0.7f && !dusk::getSettings().game.noMissClimbing) { + #else if (!is_prev_hangReady && cM_rnd() < 0.7f) { + #endif setSingleAnimeParam(ANM_CLIMB_HANG_MISS, &mpHIO->mLadder.m.mWallAttachMissAnm); field_0x3478 = mpHIO->mLadder.m.mWallAttachMissAnm.mCancelFrame; voiceStart(Z2SE_AL_V_FOOT_MISS); @@ -2084,7 +2088,11 @@ int daAlink_c::procClimbUpStartInit(int param_0) { speed.y = 0.0f; mNormalSpeed = 0.0f; + #if TARGET_PC + if (param_0 || var_r29 || cM_rnd() < 0.3f || dusk::getSettings().game.noMissClimbing) { + #else if (param_0 || var_r29 || cM_rnd() < 0.3f) { + #endif setSingleAnimeParam(ANM_CLIMB_HANG, &mpHIO->mLadder.m.mWallAttachAnm); field_0x3478 = mpHIO->mLadder.m.mWallAttachAnm.mCancelFrame; voiceStart(Z2SE_AL_V_JUMP_HANG); @@ -2161,7 +2169,11 @@ int daAlink_c::procClimbDownStartInit(s16 param_0) { deleteEquipItem(TRUE, FALSE); + #if TARGET_PC + if (cM_rnd() < 0.7f || dusk::getSettings().game.noMissClimbing) { + #else if (cM_rnd() < 0.7f) { + #endif setSingleAnimeParam(ANM_CLIMB_HANG, &mpHIO->mLadder.m.mWallAttachAnm); field_0x3478 = mpHIO->mLadder.m.mWallAttachAnm.mCancelFrame; mProcVar0.field_0x3008 = 0; diff --git a/src/dusk/imgui/ImGuiMenuEnhancements.cpp b/src/dusk/imgui/ImGuiMenuEnhancements.cpp index cf7fcc41d7..ec0a249f9f 100644 --- a/src/dusk/imgui/ImGuiMenuEnhancements.cpp +++ b/src/dusk/imgui/ImGuiMenuEnhancements.cpp @@ -37,6 +37,12 @@ namespace dusk { ImGui::SetTooltip("Quicker climbing on ladders and vines like the HD version"); } + ImGui::Checkbox("No Climbing Miss Animation", &getSettings().game.noMissClimbing); + if (ImGui::IsItemHovered()) { + ImGui::SetTooltip("Prevents Link from playing a struggle animation\n" + "when using the Clawshot on vines at a weird angle."); + } + ImGui::Checkbox("Faster Tears of Light", &getSettings().game.fastTears); if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Tears of Light dropped by Shadow Insects pop out faster like the HD version"); diff --git a/src/dusk/settings.cpp b/src/dusk/settings.cpp index ea17eef374..f39c4fd5b3 100644 --- a/src/dusk/settings.cpp +++ b/src/dusk/settings.cpp @@ -31,6 +31,7 @@ UserSettings g_userSettings = { .damageMultiplier = 1, .instantDeath = false, .fastClimbing = false, + .noMissClimbing = false, .fastTears = false, // Preferences From d0afac0fba1cac5468451b73ddab97b71e410e3f Mon Sep 17 00:00:00 2001 From: MelonSpeedruns Date: Sat, 4 Apr 2026 14:31:40 -0400 Subject: [PATCH 2/2] removed period in description --- src/dusk/imgui/ImGuiMenuEnhancements.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dusk/imgui/ImGuiMenuEnhancements.cpp b/src/dusk/imgui/ImGuiMenuEnhancements.cpp index ec0a249f9f..20ba760e83 100644 --- a/src/dusk/imgui/ImGuiMenuEnhancements.cpp +++ b/src/dusk/imgui/ImGuiMenuEnhancements.cpp @@ -40,7 +40,7 @@ namespace dusk { ImGui::Checkbox("No Climbing Miss Animation", &getSettings().game.noMissClimbing); if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Prevents Link from playing a struggle animation\n" - "when using the Clawshot on vines at a weird angle."); + "when using the Clawshot on vines at a weird angle"); } ImGui::Checkbox("Faster Tears of Light", &getSettings().game.fastTears);