Slipperiness

From Minecraft Parkour Wiki
Revision as of 10:33, 18 February 2020 by MCPK (talk | contribs) (added characterization)

Each block in the game has a Slipperiness factor, noted S. Its value is between 0.6 (rough) and 1.0 (frictionless).

By default, a block's slipperiness is set to 0.6.

In 1.8, the only blocks that have a different slipperiness are:

  • Ice and Packed Ice, S = 0.98
  • Slime Blocks, S = 0.8

In 1.13, another slippery block was added: Blue Ice, with a slipperiness of 0.99, making it the most slippery block in the game.


Effect on Movement

When moving, the Player loses some speed in between ticks to simulate drag, and gains some acceleration.

When the Player is on ground, drag and acceleration are calculated as so:

  • This amount of speed conserved on ground is proportional to.
  • The acceleration gained on ground is proportional to.

When the Player is airborne, Slipperiness is ignored.



Characterization

Every tick, if on ground, the game checks for the block directly 1b below the Player's position to get S.

Therefore, a block's slipperiness only affects the Player if they are standing less than 1b above its surface.


This means that non-full blocks are affected by the slipperiness of the block below them.

For example, the surface of a slab above Ice has the same slipperiness as the Ice itself.


Finally, we can understand why Soulsand is affected by Ice (and Slime blocks):

Soulsand is a non-full block (14px in height), meaning it gets its slipperiness from the block below it.

Let's consider the effects at work:

  • Slippery blocks grant less acceleration.
  • Soulsand cancels speed conservation.

These two effects combined create an net negative impact on the Player's movement, compared to regular Soulsand movement.