I looked into this in 1.21.11 (unobfuscated) and found a likely cause in LivingEntity.travelInWater.
It seems that the normal water friction (slowDown, usually 0.9F) is still applied while isAutoSpinningAttack() is active. Because of that, Riptide momentum gets dampened almost immediately, especially when combined with Depth Strider or high WATER_MOVEMENT_EFFICIENCY, which makes the player feel like they stall in water.
A possible fix would be to disable water friction during the Riptide attack, e.g.:
I looked into this in 1.21.11 (unobfuscated) and found a likely cause in
LivingEntity.travelInWater.It seems that the normal water friction (
slowDown, usually 0.9F) is still applied whileisAutoSpinningAttack()is active. Because of that, Riptide momentum gets dampened almost immediately, especially when combined with Depth Strider or highWATER_MOVEMENT_EFFICIENCY, which makes the player feel like they stall in water.A possible fix would be to disable water friction during the Riptide attack, e.g.:
This would preserve the intended Riptide momentum in water.