このガイドはYouHaveTrouble/minecraft-optimizationの日本語訳です。日本語訳は適当であるため、適時原文を確認することを推奨します。
本ガイドによって生じたあらゆる問題について責任を負いません。
Vanilla、Fabric、Spigot(またはPaperより下流のバージョン)をお使いの方は、server.properties
を開き、sync-chunk-writes
をfalse
に変更してください。このオプションはPaperとそのforkでは強制的に無効化されますが、それ以前のサーバー実装では、手動でこのオプションをオフにする必要があります。これにより、サーバーはメインスレッドからチャンクを保存し、メインtickの負荷を軽減することができます。
このガイドは、バージョン1.17のガイドです。一部の項目のみ1.15~1.16にも適用されます。
このガイドと他の情報源に基づいています(これらの情報源は、関連する場合、ガイド全体にリンクされています)。
導入
完璧な結果を得る事のできるガイドは存在しません。それぞれのサーバーには独自のニーズが存在しており、どれだけの犠牲を払うことができるのか、あるいは払うことができるかには限界があります。オプションを変更することで、サーバーのニーズを合わせて微調整することが、全てです。このガイドは、どのオプションがパフォーマンスに影響を与えているのか、何を変更しているのかを理解することを目的としています。
準備
サーバーJar
サー バーソフトウェアの選択によっては、パフォーマンスとAPIの可能性に大きな違いが現れます。現在、複数の有力なサーバーJARがありますが、様々な理由により使用を控えたほうが良いものもいくつかあります。
おすすめのサーバーJar:
Paper - ゲームプレイやメカニックの不整合を修正しながら、パフォーマンス向上を目的とした最も人気のあるサーバーソフトウェアです。
Airplane - サーバーのパフォーマンスをさらに向上させることを目的とした Paper forkです。
Purpur - 機能とカスタマイズの自由に焦点を当てたAirplane forkです。
推奨されないサーバーJar:
Yatopia - "Paper forkの総力を結集し、最大限の不安定さとメンテナンス性を実現!" - KennyTV's list of shame これ以上何も言うことはありません。(このプロジェクトは中止されています)
Sugarcane - Yatopia 2.0
Mohist - "Mohistは悪意があり、ゲームを壊し、非常に不安定であるようにプログラムされています" - 使うべきではない理由
非同期を謳った有料サーバーjar - 99.99%の確率で詐欺です。
Bukkit/CraftBukkit/Spigot - 利用できる他のサーバーソフトウェアと比較して、パフォーマンスの点で非常に時代遅れです。
AirplaneやPurpurよりもさらに下流にある多くのforkでは、不安定さやその他の問題が発生します。より多くのパフォーマンス向上を求めるのであれば、サーバーを最適化するか、個人的なプライベートforkに時間を投資してください。
ワールドの事前生成
ワールドの事前生成は、低予算のサーバーを改善するために、最も重要なステップの1つです。共有CPUやシングルコアのノードでホストされているサーバーでは、非同期のチャンク読み込みを十分に活用できないため、この方法が最も友好です。Chunkyなどのプラグインを使うことで、ワールドを事前に生成することができます。プレイヤーが新しいチャンクを生成しないように必ずワールドの境界線を設定してください。プラグインで自動生成をする場合、設定した範囲によっては数時間かかる場合があるので注意してください。
オーバーワールド、ネザー、エンドにはそれぞれ別のワールドの境界線を設定する必要があります。ネザーのディメンションはオーバーワールドの8倍小さいので(データパックで変更されていない場合)、サイズ設定を間違えるとプレイヤーがワールドの境界線の外へと出てしまうかもしれません。
宝の地図の探索範囲のような一部の機能がラグの原因となる為、必ずバニラのワールドの境界線を設定してください。(/worldborder set [距離]
)