Ceiling Hover/zh: Difference between revisions
(Created page with "请注意,如果玩家以某种方式以正速度移动(而不是潜行),则不会发生任何事情。") |
(Created page with "事实上,这正是这个故障发生的情况。") |
||
Line 51: | Line 51: | ||
请注意,如果玩家以某种方式以正速度移动(而不是潜行),则不会发生任何事情。 |
请注意,如果玩家以某种方式以正速度移动(而不是潜行),则不会发生任何事情。 |
||
事实上,这正是这个故障发生的情况。 |
|||
<div lang="en" dir="ltr" class="mw-content-ltr"> |
|||
In fact, that's exactly what happens with this glitch. |
|||
</div> |
|||
Revision as of 11:41, 26 August 2021
Ceiling Hover is a glitch that makes the player "hover" between a ceiling and a bouncy block (slime, or beds since 1.12). It can be performed by jumping under a ceiling such that the block 2.001b below the ceiling has bouncing properties.
解釋
每當玩家與一個方塊(地板或天花板)垂直碰撞時,遊戲將應用碰撞物理。
對於幾乎每個方塊,這只是意味着將玩家的垂直速度設置為 0。
/* in class Block */
public void onVerticalCollision(Entity entityIn)
{
entityIn.motionY = 0.0D;
}
但有一個例外:粘液塊(和 1.12+ 中的床)。
/* in class BlockSlime */
public void onVerticalCollision(Entity entityIn)
{
if (entityIn.isSneaking())
super.onVerticalCollision(entityIn);
else if (entityIn.motionY < 0.0D)
entityIn.motionY = -entityIn.motionY;
}
- 如果玩家正在潛行,它將被視為常規碰撞(垂直移動設置為0)
- 否則,它將檢查玩家的速度是否為負,然後將其反轉。
請注意,如果玩家以某種方式以正速度移動(而不是潛行),則不會發生任何事情。
事實上,這正是這個故障發生的情況。
When the game detects a vertical collision, it will consider the block 0.2m under the player's position to apply collision physics (even for ceiling collisions...)
Let's review the steps for the 1.8125bc Ceiling Hover setup:
- Jumping under 1.8125bc applies vertical collision with the block 0.2m below the player (at ground level).
- If that block is a slime block, then vertical speed won't be set to 0, and the player remains suspended under the ceiling.
- Repeat step (2) until the player's vertical speed becomes negative due to gravity.
Note: This glitch happens for a few ticks, but with Jump Boost it would take longer. Ceiling hover can be interrupted at any time by sneaking.
Consequences
This glitch is pretty insignificant: it isn't game-breaking in any way, and requires very specific setups to be made use of.