From Minecraft Parkour Wiki
ゲーム内では、以下の3ステップが毎tick実行される:
- プレイヤーの速度に加速度を加える。
- プレイヤーを動かす(新しい位置 = 元の位置 + 速度)。
- 抗力の再現のため、プレイヤーの速度を落とす。
公式をより読みやすくするため、各種倍率の紹介から始める。
倍率
- 移動方法の倍率(45°Strafeを参照)

- エフェクトの倍率(ステータス効果を参照)

- 滑りやすさの倍率(滑りやすさを参照)

直線の公式
以下の簡易式は、直線的な動き(移動方向の変化なし)にのみ適用される。
この条件は限定的に思えるかもしれないが、シンプルなジャンプや助走の分析に非常に有用である。
角度を含めた公式への拡張は、後の見出しで行う。
定義:
はプレイヤーの初速(デフォルト = 0)。
は
tick目でのプレイヤーの速度。
- 地面での速度:

- ジャンプの速度:

- 空中での速度:

完全な公式
新しい変数を2つ導入する:
(Direction)、プレイヤーの動いている角度、単位は度(キー入力と回転角度によって決まる)。
(Facing)、プレイヤーの向いている角度、単位は度(回転角度のみによって決まる)。
実際には、significant angleの数が限られているため、角度はそれほど単純ではない(角度を参照)。
簡略化のため、この事実は無視する。
- 定義:
と
はプレイヤーの初速に対応する。
と
は
tick目でのプレイヤーの速度に対応する。
- 地面での速度:


- ジャンプの速度:


- 空中での速度:


停止条件
水平方向の速度は、プレイヤーが壁に接触するか、その速度が無視できるほど小さいと判断された場合、0に設定される。
- 壁の衝突判定:
- プレイヤーがX方向の壁と接触すると、慣性がキャンセルされ、
に含まれるのは加速度のみになる。
- プレイヤーがZ方向の壁と接触すると、慣性がキャンセルされ、
に含まれるのは加速度のみになる。
- どちらの場合も、ダッシュは途切れる。
- 無視できる速度のしきい値:
の場合、慣性がキャンセルされ、加速度のみが残る。
の場合、慣性がキャンセルされ、加速度のみが残る。
- 1.9以降は、このしきい値は0.003となる。
ソースコード
[...]