From c607c9cfe1a6aec2f3ee866de64e2d822a487883 Mon Sep 17 00:00:00 2001 From: Andrew <47818697+Nyeriah@users.noreply.github.com> Date: Tue, 24 Mar 2026 23:41:23 -0300 Subject: [PATCH] fix(Core/Movement): DAMAGE_FALL_TO_VOID bypasses all immunities (#25211) Co-authored-by: Claude Opus 4.6 --- src/server/game/Entities/Player/Player.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index fb3af1eb4..a5d5a0c13 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -769,7 +769,9 @@ bool Player::IsImmuneToEnvironmentalDamage() uint32 Player::EnvironmentalDamage(EnviromentalDamage type, uint32 damage) { - if (IsImmuneToEnvironmentalDamage()) + // DAMAGE_FALL_TO_VOID bypasses all immunities (e.g. Divine Shield) to prevent + // players from being stuck infinitely falling below the map + if (type != DAMAGE_FALL_TO_VOID && IsImmuneToEnvironmentalDamage()) return 0; // Absorb, resist some environmental damage type