From Minecraft Parkour Wiki
Content added Content deleted
|
|
Line 7: |
Line 7: |
|
|
|
|
|
* <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> 是计入的 ticks 数(例如:平地上 t=12,参见'''跳跃持续时间''') |
|
* <math display="inline">t</math> 是计入的刻数(例如:平地上 t=12,参见'''跳跃持续时间''') |
|
* <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……) |
Line 64: |
Line 64: |
|
== 水平运动(延后跳跃) == |
|
== 水平运动(延后跳跃) == |
|
|
|
|
|
假设玩家在跳跃前已经落地(至少在落地后的 1 tick 起跳) |
|
假设玩家在跳跃前已经落地(至少在落地后的 1 刻起跳) |
|
|
|
|
|
疾跑跳跃的水平速度(<math>t \geq 2</math>) |
|
疾跑跳跃的水平速度(<math>t \geq 2</math>) |
Revision as of 13:56, 11 June 2022
由於算術幾何序列有明確的公式,我們可以建立非遞歸函數來計算簡單但有用的結果,例如在任一刻上玩家的高度,或者在初始速度與持續時間的基礎上計算跳躍的距離。
定義:
是玩家的初始速度(跳躍之前,
時的速度)
是計入的刻數(例如:平地上 t=12,參見跳躍持續時間)
是「跳躍增益」(疾跑跳躍為 0.3274,斜疾跑跳躍為 0.291924,45°無疾跑跳躍為 1.0……)
是跳躍後的移動乘數(45°斜疾跑為 1.3,正常疾跑為 1.274,無疾跑45°為 1.0……)
垂直運動(跳躍)[1.8]
跳躍後的垂直速度(
)
![{\textstyle \textrm{V}_Y(t) = 4 \times 0.98^{t-5} - 3.92}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8df16b6de318cf28d085dae517c5309168581ed2)
跳躍後的相對高度(
)
- 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+]
跳躍後的垂直速度(
)
![{\textstyle \textrm{V}_Y(t) = 0.42 \times 0.98^{t-1} + 4 \times 0.98^t - 3.92}](https://wikimedia.org/api/rest_v1/media/math/render/svg/dbe45d3dfaa783225677ccd59649d714fd23b3b2)
跳躍後的相對高度(
)
![{\textstyle \textrm{Y}_{rel}(t) = 217 \times (1 - 0.98^t) - 3.92 t}](https://wikimedia.org/api/rest_v1/media/math/render/svg/5c8d4eb667ca9778b63e5bcdf638f8e9220d0ea9)
水平運動(落地跳躍)
假設玩家在跳躍前已經在空中。
疾跑跳躍後的水平速度(
)
![{\textstyle \textrm{V}_H(v_0,t) = \frac{0.02 M}{0.09} + 0.6 \times 0.91^t \times \left ( v_0 + \frac{J}{0.91} - \frac{0.02 M}{0.6 \times 0.91 \times 0.09} \right )}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c36258856632743d1ce71e3e9fe42c5ef454b84f)
疾跑跳躍距離(
)
![{\textstyle \textrm{Dist}(v_0,t) = 1.91 v_0 + J + \frac{0.02 M}{0.09} (t-2) + \frac{0.6 \times 0.91^2}{0.09} \times (1 - 0.91^{t-2}) \times \left ( v_0 + \frac{J}{0.91} - \frac{0.02 M}{0.6 \times 0.91 \times 0.09} \right )}](https://wikimedia.org/api/rest_v1/media/math/render/svg/3b45086e2ea701a76e30d0335959d33f28a6915d)
注意:這些公式對於大多數
的值來說都是準確的,但是一些負值會在某個時間點觸發速度閾值並重置玩家速度,從而使這些公式不準確。
水平運動(延後跳躍)
假設玩家在跳躍前已經落地(至少在落地後的 1 刻起跳)
疾跑跳躍的水平速度(
)
![{\textstyle \textrm{V}^*_H(v_0,t) = \frac{0.02 M}{0.09} + 0.6 \times 0.91^t \times \left ( 0.6 v_0 + \frac{J}{0.91} - \frac{0.02 M}{0.6 \times 0.91 \times 0.09} \right )}](https://wikimedia.org/api/rest_v1/media/math/render/svg/09fd1fe80a2174a50b2f7455d58fbc200bb3f772)
疾跑跳躍距離(
)
![{\textstyle \textrm{Dist}^*(v_0,t) = 1.546 v_0 + J + \frac{0.02 M}{0.09} (t-2) + \frac{0.6 \times 0.91^2}{0.09} \times (1 - 0.91^{t-2}) \times \left ( 0.6v_0 + \frac{J}{0.91} - \frac{0.02 M}{0.6 \times 0.91 \times 0.09} \right )}](https://wikimedia.org/api/rest_v1/media/math/render/svg/6357b53d35c9bdab425a1ed1cbb50ba90b1b1360)
進階公式
在周期為
的助跑上連續疾跑跳躍
次後的水平速度(
,
)。
![{\textstyle \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} }](https://wikimedia.org/api/rest_v1/media/math/render/svg/9fb027afc7f46c8310456e3681ccf021a8ccfca4)
如果第一次疾跑跳躍延後,則
乘以 0.6。