Stepping/zh: Difference between revisions
Content added Content deleted
No edit summary |
No edit summary |
||
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
<languages/> |
||
步行辅助(跨步,Stepping,或 Step-Assist),是一种帮助玩家在不跳跃的情况下走过低高度障碍物的机制。 |
步行辅助(别称跨步,Stepping,或 Step-Assist),是一种帮助玩家在不跳跃的情况下走过低高度障碍物的机制。 |
||
玩家自动走上的'''最高高度为 0.6 格''',这意味着他们可以自动走上地毯、台阶甚至是床等方块。 |
玩家自动走上的'''最高高度为 0.6 格''',这意味着他们可以自动走上地毯、台阶甚至是床等方块。 |
||
Line 6: | Line 6: | ||
该机制在概念上虽然简单,但是其实现方法却相当混乱,导致了大量与碰撞相关的漏洞,如[[Special:MyLanguage/Blip|'''卡角(Blips)''']]和[[Special:MyLanguage/Jump Cancel|'''跳跃取消(Jump-Cancelling)''']],这些漏洞可能会在跑酷中被恶意利用。 |
|||
<youtube>https://youtu.be/Awa9mZQwVi8</youtube> |
|||
⚫ | |||
⚫ | |||
=== 概要: === |
=== 概要: === |
||
* 玩家的边界箱(0.6×1.8×0.6)用于检测碰撞 |
* 玩家的边界箱(0.6×1.8×0.6)用于检测碰撞。(注意:碰撞顺序为 Y-X-Z) |
||
* 当玩家在地面上检测到墙时,游戏会尝试让玩家“跳过”墙。(如视频所示) |
* 当玩家在地面上检测到墙时,游戏会尝试让玩家“跳过”墙。(如视频所示) |
||
* 最后,游戏会选择水平距离上移动最远的方法。 |
* 最后,游戏会选择水平距离上移动最远的方法。 |
||
Line 22: | Line 24: | ||
* 在 1.8 之前,玩家无法自动走上一些上面有天花板的方块([https://bugs.mojang.com/browse/MC-3337 错误报告])。 |
* 在 1.8 之前,玩家无法自动走上一些上面有天花板的方块([https://bugs.mojang.com/browse/MC-3337 错误报告])。 |
||
** 为了修复这个漏洞,在步行辅助的程序中添加了一种替代方法 |
** 为了修复这个漏洞,在步行辅助的程序中添加了一种替代方法(如视频所示)。 |
||
* 在 1.8.1 之前,可以使用步行辅助机制[https:// |
* 在 1.8.1 之前,可以使用步行辅助机制[https://www.bilibili.com/video/BV1sm4y1S7gT 卡进地面]。 |
||
** 这是因为程序在触发该机制时不会考虑玩家边界箱与地面的碰撞,但这可能会迫使玩家移动到地面下方(不管边界箱升高多少都会被降低 0.6 格)。 |
** 这是因为程序在触发该机制时不会考虑玩家边界箱与地面的碰撞,但这可能会迫使玩家移动到地面下方(不管边界箱升高多少都会被降低 0.6 格)。 |
||
** 在 1.8.0 中更容易做到,因为不需要直接在头顶上设置天花板。 |
** 在 1.8.0 中更容易做到,因为不需要直接在头顶上设置天花板。 |
||
* 当前步行辅助的实现方式仍然存在一些[https:// |
* 当前步行辅助的实现方式仍然存在一些[https://www.bilibili.com/video/BV1oL411p7M8 缺陷]. |
||
Line 34: | Line 36: | ||
步行辅助旨在用于地面运动,并且很好地实现了最初目的:走上台阶和楼梯。 |
步行辅助旨在用于地面运动,并且很好地实现了最初目的:走上台阶和楼梯。 |
||
另外,它也被应用在垂直运动的开始和结束,这引出了一些其它的机制: |
|||
*跳跃结束时可能发生[[Special:MyLanguage/Blip|'''卡角''']],通过在半空“落地” |
*跳跃结束时可能发生[[Special:MyLanguage/Blip|'''卡角''']],通过在半空“落地”来增加跳跃高度。 |
||
*在跳跃开始时可能发生[[Special:MyLanguage/Jump Cancel|'''跳跃取消''']] ,使玩家停留在地面上以获 |
*在跳跃开始时可能发生[[Special:MyLanguage/Jump Cancel|'''跳跃取消''']] ,使玩家停留在地面上以获得加速。 |
Latest revision as of 05:38, 29 June 2022
步行辅助(别称跨步,Stepping,或 Step-Assist),是一种帮助玩家在不跳跃的情况下走过低高度障碍物的机制。
玩家自动走上的最高高度为 0.6 格,这意味着他们可以自动走上地毯、台阶甚至是床等方块。
该机制在概念上虽然简单,但是其实现方法却相当混乱,导致了大量与碰撞相关的漏洞,如卡角(Blips)和跳跃取消(Jump-Cancelling),这些漏洞可能会在跑酷中被恶意利用。
概要:
- 玩家的边界箱(0.6×1.8×0.6)用于检测碰撞。(注意:碰撞顺序为 Y-X-Z)
- 当玩家在地面上检测到墙时,游戏会尝试让玩家“跳过”墙。(如视频所示)
- 最后,游戏会选择水平距离上移动最远的方法。
注意:
- 在 1.8 之前,玩家无法自动走上一些上面有天花板的方块(错误报告)。
- 为了修复这个漏洞,在步行辅助的程序中添加了一种替代方法(如视频所示)。
- 在 1.8.1 之前,可以使用步行辅助机制卡进地面。
- 这是因为程序在触发该机制时不会考虑玩家边界箱与地面的碰撞,但这可能会迫使玩家移动到地面下方(不管边界箱升高多少都会被降低 0.6 格)。
- 在 1.8.0 中更容易做到,因为不需要直接在头顶上设置天花板。
- 当前步行辅助的实现方式仍然存在一些缺陷.
相关漏洞
步行辅助旨在用于地面运动,并且很好地实现了最初目的:走上台阶和楼梯。
另外,它也被应用在垂直运动的开始和结束,这引出了一些其它的机制: