Nonrecursive Movement Formulas/zh: Difference between revisions

From Minecraft Parkour Wiki
Content added Content deleted
(Created page with "== 水平运动(延后跳跃) ==")
(Created page with "== 水平运动(落地跳跃) ==")
Line 44: Line 44:




== 水平运动(落地跳跃) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
== Horizontal Movement (instant jump) ==
</div>


假设玩家在跳跃前已经在空中。
假设玩家在跳跃前已经在空中。
Line 87: Line 85:
:<math display="inline">\textrm{V}^{\,n}_H(v_0,T,n) = \left ( 0.6 \times 0.91^T \right )^n v_0 + \left ( 0.6 \times 0.91^{T-1} J + 0.02M \frac{1 - 0.91^{T-1}}{0.09} \right ) \frac{1- (0.6 \times 0.91^T)^n}{1 - 0.6 \times 0.91^T} </math>
:<math display="inline">\textrm{V}^{\,n}_H(v_0,T,n) = \left ( 0.6 \times 0.91^T \right )^n v_0 + \left ( 0.6 \times 0.91^{T-1} J + 0.02M \frac{1 - 0.91^{T-1}}{0.09} \right ) \frac{1- (0.6 \times 0.91^T)^n}{1 - 0.6 \times 0.91^T} </math>


如果第一次疾跑跳跃延后,则 <math display="inline">v_0</math> 乘以 0.6
<div lang="en" dir="ltr" class="mw-content-ltr">
If the first sprintjump is delayed, multiply <math display="inline">v_0</math> by 0.6
</div>

Revision as of 06:48, 29 January 2022

Other languages:

由於算術幾何序列有明確的公式,我們可以建立非遞歸函數來計算簡單但有用的結果,例如在任一 tick 上玩家的高度,或者在初始速度與持續時間的基礎上計算跳躍的距離。


定義:

  • 是玩家的初始速度(跳躍之前, 時的速度)
  • 是計入的 ticks 數(例如:平地上 t=12,參見跳躍持續時間
  • 是「跳躍增益」(疾跑跳躍為 0.3274,斜疾跑跳躍為 0.291924,45°無疾跑跳躍為 1.0……)
  • 是跳躍後的移動乘數(45°斜疾跑為 1.3,正常疾跑為 1.274,無疾跑45°為 1.0……)


垂直運動(跳躍)[1.8]

跳躍後的垂直速度(


跳躍後的相對高度(

Failed to parse (syntax error): {\textstyle \textrm{Y}_{rel}(t) = \underset{\textrm{跳跃最高点}}{\underbrace{197.4 - 217 \times 0.98^5}} + 200 (0.98-0.98^{t-4}) - 3.92 (t-5)}


對於 的情況,見下文。


垂直運動(跳躍)[1.9+]

跳躍後的垂直速度(


跳躍後的相對高度(



水平運動(落地跳躍)

假設玩家在跳躍前已經在空中。

疾跑跳躍後的水平速度(


疾跑跳躍距離(


注意:這些公式對於大多數 的值來說都是準確的,但是一些負值會在某個時間點觸發速度閾值並重置玩家速度,從而使這些公式不準確。


水平運動(延後跳躍)

假設玩家在跳躍前已經落地(至少在落地後的 1 tick 起跳)

疾跑跳躍的水平速度(


疾跑跳躍距離(



進階公式

在周期為 的助跑上連續疾跑跳躍 次後的水平速度()。

如果第一次疾跑跳躍延後,則 乘以 0.6。