Skip to content

⚡ グローバル成長倍率と作物別個別調整

成長倍率エンジンにより、サーバー管理者やプレイヤーは世界中の農業速度を微調整したり、作物種ごとの成長曲線を調整できます。


📊 倍率仕様インフォボックス

PropertySpecification
Global GameRuleagrarian_reform:global_growth_multiplier
Dynamic Crop Ruleagrarian_reform:crop_growth_multiplier_<crop_id>
グローバル標準値100(バニラ基準の100%速度)
設定可能範囲-1(凍結/停止)、0(全体継承)、12147483647
最適化最大成熟時の即時ループ終了(無駄な計算を防止)

📐 倍率計算の数学的モデルと解決階層

ランダムティックスピード処理は、BlockStateBaseMixinおよびGrowthHelper.handleRandomTickを介して介入します:

1. Hierarchy Resolution

  1. 個別倍率 ($> 0$): 個別設定がある場合は、全体倍率を上書きします。
  2. 凍結 / 無効化 ($-1$ または 全体$0$): ランダムティックとオフライン補正を完全にキャンセルします($0%$成長)。
  3. 全体継承 ($0$): 全体倍率 $M$ を使用します。

2. 成長減速 ($0 < M < 100$)

$M < 100$の場合、ランダムティックは $\frac{M}{100}$ の確率で実行されます(例: $M = 50$のときはバニラの50%の速度)。

3. Accelerated Growth ($M > 100$)

$M > 100$の場合、エンジンは追加の確定ティック実行回数 $E$ を計算します:

$$E = \left\lfloor \frac{M}{100} \right\rfloor - 1$$

端数の確率 $\text{rem} = M \pmod{100}$ に基づき、さらにもう1回のティック実行が抽選されます。

4. Max-Age Early-Break Optimization

加速ループ処理中、作物が最大段階(例: 小麦の段階7)に達した瞬間、即座にループを打ち切ってCPU負荷を軽減します。


⚠️ 設定およびコマンド

bash
# 全体の成長速度を200%(2倍速)に設定
/gamerule agrarian_reform:global_growth_multiplier 200

# 小麦のみ400%(4倍速)に設定
/gamerule agrarian_reform:crop_growth_multiplier_wheat 400

# サトウキビの成長を完全に停止
/gamerule agrarian_reform:crop_growth_multiplier_sugar_cane -1

See also: パフォーマンスとキュー調整, 作物レジストリと汎用作物, and コンティニュアム (オフライン成長持続).

Official documentation & web portal for Dasik Igaijinn mods.