At the moment, fall damage is determined by how long something has been falling. Unfortunately, this causes some weird behaviour. Example: Jumping on boats counts as falling for very long.
This is just one of many issues caused by the way it works, there are many other cases when fall damage behaves oddly.
My suggestion would be to change fall damage to be based on velocity instead of fall time.
The way damage would be calculated from velocity would be adjusted to match the old system in most common cases, but be more logical in extreme edge cases.
Since there's a terminal velocity, there would also be a maximum fall damage, which should be just barely survivable with maximal protection armor and status effects, since there's a very small amount of people who survived falling from really high without parachute.
This should help avoid weird situations and make things a little more logical and realistic, since in reality it's the velocity that causes damage on impact.
Edit: If we're making fall damage velocity based, might as well use the same code for kinetic energy damage (elytra), and have the same damage per velocity no matter if it's hitting the floor or hitting a wall or even the ceiling, and no matter if it's falling, flying with elytra, or getting shot out of a tnt cannon.
3 Comments
Please sign in to leave a comment.
Post a new comment: