TrainCarts/Lag [ja]

From BergerHealer Wiki
Jump to navigation Jump to search
(Created page with "== 長すぎるウェイトディスタンス ==")
(Created page with "Spawnサインやトレインチェストで名前付き列車を召喚するとき、制限数に引っかかると機能を停止します。特に、線路上にSpawnサインで自動生成を行うときや、'''config.yml'''の<code>destroyAllOnShutdown</code>をtrueにする場合との組み合わせで便利です。")
 
(7 intermediate revisions by the same user not shown)
Line 24: Line 24:
== チャンクロード ==
== チャンクロード ==


<div lang="en" dir="ltr" class="mw-content-ltr">
列車は[[TrainCarts/Signs/Property#Keep_Chunks_Loaded|付近のチャンクをロードし続ける]]ことができますが、いくつものチャンクを同時にロードし続けていると、サーバーのパフォーマンスに影響を及ぼします。その範囲内にレッドストーン機構やモブなどがあればなおさらです。そしてその列車が動くとチャンクのロード・アンロードが繰り返されるので、RAMを使いまくり、最悪サーバーがメモリ不足でエラーを起こしてしまうかもしれません。
Trains can [[TrainCarts/Signs/Property#Keep_Chunks_Loaded|keep chunks loaded]], but too many loaded chunks may also hurt server performance. They consume RAM, which might cause an out-of-memory situation. They may also contain entities or redstone contraptions that all contribute to a worsened TPS. As trains move, they load and unload chunks continuously, which might also cause problems.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
通常、ひとつの列車がチャンクをロードするくらいであれば、プレイヤーが移動するのと変わらないので、大した処理にはなりません。しかしあちらこちらで数百個の列車がチャンクをロードしたら、それはそれは甚大な処理を行わなくてはならないわけです。
Generally a single train keeping chunks loaded is not a big deal, it's no different from a player moving from one location to another. But having hundreds of them on far reaches of the server could cause problems.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
対策としては、列車のチャンクロードの範囲を狭めることができますし、モブやレッドストーンの処理を行わないようにもできます。特に、列車が長距離間を運行する時には、これを設定しておくことをおすすめします。
You can improve performance by lowering the radius trains keep loaded, or configuring it to not simulate the chunks they keep loaded. This should be done for when the train is traveling long distances.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
== 列車数の制限 ==
== Limit the number of trains ==
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Spawnerサインの使いすぎや、プレイヤーが配置しまくるなどでサーバーが停止してしまうのを避けるため、<code>plugins/Train_Carts/config.yml</code>を変更して、どれくらいの列車やトロッコがひとつのワールド内に存在できるのかを設定できます。
You can edit <code>plugins/Train_Carts/config.yml</code> to limit how many individual TrainCarts Minecart entities can exist per world. This prevents an out of control spawner sign or player abuse lagging the server to a halt.
<pre>
<pre>
# Limits of the amount of carts on the server
# Limits of the amount of carts on the server
Line 49: Line 40:
   # A value of -1 disables this limit (default)
   # A value of -1 disables this limit (default)
   maxCartsPerWorld: -1
   maxCartsPerWorld: -1
</div>


   <div lang="en" dir="ltr" class="mw-content-ltr">
   # Whether to include unloaded trains/carts in the maxCartsPerWorld limit
# Whether to include unloaded trains/carts in the maxCartsPerWorld limit
   countUnloaded: false
   countUnloaded: false
</div>


   <div lang="en" dir="ltr" class="mw-content-ltr">
   # Maximum number of carts that can be joined together in a train
# Maximum number of carts that can be joined together in a train
   # Linking does not happen when it would exceed this limit,
   # Linking does not happen when it would exceed this limit,
   # and trains longer than this cannot be spawned
   # and trains longer than this cannot be spawned
Line 63: Line 50:
   maxCartsPerTrain: -1
   maxCartsPerTrain: -1
</pre>
</pre>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
== 保存済み列車のスポーン制限 ==
== Saved Train Spawn Limits ==
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
上の制限に加え、名前をつけて保存した列車には、個別のスポーン数制限をつけることができます。<code>/train save</code>で列車を保存した後、<code>/savedtrain (列車名) spawnlimit</code>コマンドを使うことで制限を設定できます。
Besides a global limit, it is possible to configure a spawn limit per saved train. After having saved a train with <code>/train save name</code>, you can configure a spawn limit with <code>/savedtrain name spawnlimit <limit></code>.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Spawnサインやトレインチェストで名前付き列車を召喚するとき、制限数に引っかかると機能を停止します。特に、線路上に[[Special:MyLanguage/TrainCarts/Signs/Spawner|Spawnサインで自動生成]]を行うときや、'''config.yml'''の<code>destroyAllOnShutdown</code>をtrueにする場合との組み合わせで便利です。
Spawn signs and train chests configured with the train name will stop spawning trains when this limit is reached. This is particularly useful with [[Special:MyLanguage/TrainCarts/Signs/Spawner|auto-spawning spawn signs]] that populate a train network, combined with setting <code>destroyAllOnShutdown</code> to true in '''config.yml'''.
</div>

Latest revision as of 02:20, 18 June 2026

Other languages:

プラグインの使い方によっては、サーバーやクライアントにラグを引き起こすかも知れません。このページでは、そのラグの原因や、対処法を説明します。

複雑な3Dモデル

Minecraftというゲームは、複雑なボクセルモデルを描画するのに向いた作りにはなっていません。もしサーバーのリソースパックで複雑なモデルを使っているなら、クライアントのFPS値を減少させる可能性もあります。実際のサーバーにリソースパックを適用する前に、一度試してラグを確認するようにしてください。モデルのJSONファイルサイズも有効な指標になります。

長い列車

アタッチメントエディタでは、トロッコのサイズをとても大きなものにすることができます。これはトロッコ本体の当たり判定も大きくしますが、これは同時に、特に、ブロックとの衝突などの処理でサーバーに小さくない負担をかけるかもしれません。これを防止するためには、ブロック衝突をオフにすることも検討してください。

Turns off block collisions, trains will fall through the ground
Command: /train collision block cancel
Permission: train.property.collision


DefaulTrainProperties.ymlもしくはSavedTrainProperties.ymlの設定を編集することで、プレイヤーが設置するトロッコの初期設定や、すべてのトロッコのプロパティを変更できます。

trainname:
  collision:
    block: CANCEL

長すぎるウェイトディスタンス

waitdistanceプロパティは、前方の列車との間で保つ距離を設定できます。これは前方のレールをずっと確認するという処理を伴うので、値が大きすぎるとサーバーに大きな負荷をかけるかもしれません。

チャンクロード

列車は付近のチャンクをロードし続けることができますが、いくつものチャンクを同時にロードし続けていると、サーバーのパフォーマンスに影響を及ぼします。その範囲内にレッドストーン機構やモブなどがあればなおさらです。そしてその列車が動くとチャンクのロード・アンロードが繰り返されるので、RAMを使いまくり、最悪サーバーがメモリ不足でエラーを起こしてしまうかもしれません。

通常、ひとつの列車がチャンクをロードするくらいであれば、プレイヤーが移動するのと変わらないので、大した処理にはなりません。しかしあちらこちらで数百個の列車がチャンクをロードしたら、それはそれは甚大な処理を行わなくてはならないわけです。

対策としては、列車のチャンクロードの範囲を狭めることができますし、モブやレッドストーンの処理を行わないようにもできます。特に、列車が長距離間を運行する時には、これを設定しておくことをおすすめします。

列車数の制限

Spawnerサインの使いすぎや、プレイヤーが配置しまくるなどでサーバーが停止してしまうのを避けるため、plugins/Train_Carts/config.ymlを変更して、どれくらいの列車やトロッコがひとつのワールド内に存在できるのかを設定できます。

# Limits of the amount of carts on the server
cartLimits:
  # Maximum number of TrainCarts minecarts allowed per world
  # If there are more than this number, no more minecarts can be placed/spawned
  # A value of -1 disables this limit (default)
  maxCartsPerWorld: -1

  # Whether to include unloaded trains/carts in the maxCartsPerWorld limit
  countUnloaded: false

  # Maximum number of carts that can be joined together in a train
  # Linking does not happen when it would exceed this limit,
  # and trains longer than this cannot be spawned
  # A value of -1 disables this limit, allowing any length (default)
  maxCartsPerTrain: -1

保存済み列車のスポーン制限

上の制限に加え、名前をつけて保存した列車には、個別のスポーン数制限をつけることができます。/train saveで列車を保存した後、/savedtrain (列車名) spawnlimitコマンドを使うことで制限を設定できます。

Spawnサインやトレインチェストで名前付き列車を召喚するとき、制限数に引っかかると機能を停止します。特に、線路上にSpawnサインで自動生成を行うときや、config.ymldestroyAllOnShutdownをtrueにする場合との組み合わせで便利です。