フォーラム鯖は、通常でも同時に10以上の広大なマップを運用しており、そこで行われる 数々のプレイングの処理のために、これまでも何度となく鯖の動作が重くなることが ありました。
その理由について、これまで検証や推測に基づくさまざまな情報がチャット上などで 流れてきましたが、それらの情報が流れて出所が行方不明になったりして、真偽不明の まま漂っているというような状態のものも見受けられるように思います。そこで、 自分の覚書もかねて、これまでの情報をとりあえず蓄積しておくページを作ってみました。
あくまで情報の蓄積を目的としていますので、このページを読む際には、以下のことに 気を付けてください。
なお、作成時点で付している解説は全部tmasgk26がテキトウに書いたものですので、指摘修正書き足し削除は大歓迎です。
額縁に貼り付けた地図が地図範囲のチャンク読み込みに際してチャンクを更新し続ける?ため、 大きな負荷がかかるとされています。そのため現在使用禁止になっています。
チャンクを開けるときは当然そのチャンクのデータを1から作成するので処理量が増えます。 特に再生成明けの資源ワールドは一斉にチャンク開けが行われるため重くなりがちです。 これは仕方がないところかもしれません。
F3キーで分かるALL値は、付近のチャンクにいるMOBなどの数を表しています。 MOBが多いと、その動作を常に計算するため、それだけ重くなると考えられます。
MOBとMOBの接触判定(ぶつかったMOB同士の動きの計算)処理は、MOBが2匹だと2回で 済みますが、3匹がぶつかると6回、4匹だと12回、5匹だと20回・・・と匹数が増えると 飛躍的に計算量が多くなります。狭いところではそれだけ接触しやすく、また接触して 跳ね返ったものがさらに接触する悪循環に陥るので、計算量だけでなく計算頻度も多くなります。 経験値トラップが重くなるのも、これが一因とされています。
/spawn コマンドでワープすると、ワープ前の場所の周辺(チャンク)にいたMOBは消滅 (デスポーン)しますが、 /ent コマンドでワープすると、ワープ前の場所の周辺(チャンク)に いたMOBは保存(動きが凍結)されます。そのため、MOBが溜まりやすくなるようです。 ただし /spawn でワープした場合でも、アイテムを拾ったMOBは消滅しないようです。
グラウンド・エコ
チェストには27枠の、ラージチェストになると54枠のインベントリがあるわけで、 それぞれの枠に何がどれだけ入っているか(あるいは何も入ってないか)という情報を 管理している分、同じオブジェクトとしては土や丸石よりもチェストのほうが データサイズ(もしくはデータ処理量)は大きいかもしれません。
cprivateなどで保護がかかったチェストより、フリーチェストのほうが重いという 話があります。特に鯖で導入時に変更をしていない場合、LWCはSQLiteで管理し、 WGはテキスト形式で管理しているようなので、フリーチェストにしてWGによる 管理のみに委ねる場合は重くなることが考えられます。
チェストほどではないにせよ、ホッパーにも枠が5つあり、またホッパー自身は アイテムの流入排出を常に監視していると思われるので、重くなるようです。 実際、初期(2013年10月頃以前)に設置されたホッパーを撤去することでtpsが 劇的に改善されたという報告がありましたので、一度撤去してみることを お勧めします。
いわゆる製鉄所については、複数の要因が複合するからと考えられます。 たとえば、村人同士の接触判定、MOB数、ゴーレムを流す水流など。そしてそれらは、 村人の接触を防ぐ設備や周辺の湧きつぶしなどで、ある程度軽減できると考えられます。