Nonrecursive Movement Formulas/zh: Difference between revisions

From Minecraft Parkour Wiki
Content added Content deleted
(Updating to match new version of source page)
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 6: Line 6:
'''定义:'''
'''定义:'''


<div class="mw-translate-fuzzy">
* <math display="inline">v_0</math> 是玩家的初始速度(跳跃之前,<math>t_0</math> 时的速度)
* <math display="inline">v_0</math> 是玩家的初始速度(跳跃之前,<math>t_0</math> 时的速度)
* <math display="inline">t</math> 是计入的刻数(例如:平地上 t=12,参见'''跳跃持续时间'''
* <math display="inline">t</math> 是计入的刻数(例如:平地跳跃持续时间是 t=12,参见[[Special:MyLanguage/Tiers| Tiers ]]
* <math display="inline">J</math> 是“跳跃增益”(疾跑跳跃为 0.3274,斜疾跑跳跃为 0.291924,45°无疾跑跳跃为 1.0……)
* <math display="inline">J</math> 是“跳跃增益”(疾跑跳跃为 0.3274,斜疾跑跳跃为 0.291924,45°无疾跑跳跃为 1.0……)
* <math display="inline">M</math> 是跳跃后的移动乘数(45°斜疾跑为 1.3,正常疾跑为 1.274,无疾跑45°为 1.0……)
* <math display="inline">M</math> 是跳跃后的移动乘数(45°斜疾跑为 1.3,正常疾跑为 1.274,无疾跑45°为 1.0……)
</div>






<span id="Vertical_Movement_(jump)_[1.8]"></span>
== 垂直运动(跳跃)[1.8] ==
== 垂直运动(跳跃)[1.8] ==


Line 24: Line 23:
跳跃后的相对高度(<math>t \geq 6</math>)
跳跃后的相对高度(<math>t \geq 6</math>)


:<math display="inline">\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)</math>
:<math display="inline">\text{Y}_{rel}(t) = \underset{\text{跳 跃 最 高 点}}{\underbrace{197.4 - 217 \times 0.98^5}} + 200 (0.98-0.98^{t-4}) - 3.92 (t-5)</math>




Line 31: Line 30:




<span id="Vertical_Movement_(jump)_[1.9+]"></span>
== 垂直运动(跳跃)[1.9+] ==
== 垂直运动(跳跃)[1.9+] ==


Line 46: Line 46:




<span id="Horizontal_Movement_(instant_jump)"></span>
== 水平运动(落地跳跃) ==
== 水平运动(落地跳跃) ==


Line 64: Line 65:




<span id="Horizontal_Movement_(delayed_jump)"></span>
== 水平运动(延后跳跃) ==
== 水平运动(延后跳跃) ==


Line 81: Line 83:




<span id="Advanced_Formulas"></span>
== 进阶公式 ==
== 进阶公式 ==


Line 87: Line 90:
:<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。
如果第一次疾跑跳跃为 delay,则 <math display="inline">v_0</math> 乘以 0.6。

Latest revision as of 12:35, 9 January 2024

Other languages:

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


定義:

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


垂直運動(跳躍)[1.8]

跳躍後的垂直速度(


跳躍後的相對高度(


對於 的情況,見下文。


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

跳躍後的垂直速度(


跳躍後的相對高度(



水平運動(落地跳躍)

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

疾跑跳躍後的水平速度(


疾跑跳躍距離(


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


水平運動(延後跳躍)

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

疾跑跳躍的水平速度(


疾跑跳躍距離(



進階公式

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

如果第一次疾跑跳躍為 delay,則 乘以 0.6。