MinecraftサーバでMOBが動かなくなる問題

MinecraftサーバでMOBが動かなくなる問題

私はMinecraftサーバを(SNAKENetWork)運営しているわけなのですが、そこでつい最近まで悩まされていた大きな問題の解消がされたので一応書いておきます。とは言っても、詳細な原因は不明なので自分で特定して下さい。

遭遇した問題とは

私が遭遇した大きな問題というのが、私のネットワーク内にあるサバイバルサーバで、何を条件にしてか唐突に特定チャンク内のMOBが動かなくなるというものでした。これが発生するチャンクはランダムで、MOBがダメージ判定が入りダメージも与える事ができるのですが、ノックバック・落下・移動の一切をしなくなります。

アイキャッチ画像作っている時に気づきました。

MOBが動かないのはSummonでデータに{NoAI:1b}を付けたような状態です。

このバグが発生した場合の解消方法は、MOBをキルするか削除して再度スポーンさせることです。

動作環境

BungeeCordを経由させて運用

サバイバルサーバはSpigot1.11.2で稼働(Spigot1.12.2差し替え時も同様の問題発生)

プラグインは一応非公開ですが、見て特定できそうな範囲で書いておきます。

  • WorldEdit
  • WorldGuard
  • WorldBorder
  • GriefPrevention
  • React
  • Essentials
  • AAC
  • ViaVersion

原因

原因は、結論だけ言うと「WorldGuard」でした。

WorldGuardとは

昔からあるワールド保護系のプラグイン

多くMinecraftサーバ上で動いており、赤いメッセージでブロック破壊や人を殴った際に注意される時は大体こいつが動いている。

WorldGuardを抜いてみたら、何事もなかったように止まっていたMOBが動き出しました。

他のサーバさん見る限り普通に動いてそうなので、プラグイン自体の問題と言うよりは、競合か設定の問題っぽいです。

詳細特定は時間がなくてできていないので時間空いた時に調べてみます。

もしも同様の問題に悩んでいる方がいたら参考にして頂けると幸いです。

(ずっと開発してても、どんな環境でも安定して動くわけじゃないんやで)