マインクラフトのマルチサーバ化についてAbout Minecraft multi-server

 今回は、マインクラフトのJava版のpaperMCサーバについて、マルチサーバ化したので、その記録を残します。
This time, I made a multi-server for the Java version of Minecraft’s paperMC server, so I will leave the record.

1台目のノートパソコン(サーバ)
型名 FMVA47UWC(アーバンホワイト)
CPU CPU インテル® Core™ i7-6700HQ プロセッサー(HTテクノロジー対応)
First laptop computer (server)
Model name FMVA47UWC (Urban White)
CPU CPU Intel® Core™ i7-6700HQ processor (HT technology compatible)
メモリ:16GB
2台目のノートパソコン(サーバ)
型名 PC-VK25TXZCF
モデル名: Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz
メモリ:8GB
First laptop computer (server)
Model name FMVA47UWC (Urban White)
CPU CPU Intel® Core™ i7-6700HQ processor (HT technology compatible)
Memory: 16GB
Second laptop (server)
Model PC-VK25TXZCF
Model Name: Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz
Memory: 8GB

1台目に据え付けたサーバプログラム。
1.PaperMC(スタート) 飛行用(速いチャンク生成のため)
2.PaperMC(リージョン1) 戦闘用、予備(多くの人が何かするときに利用)
3.WaterFall(プロキシ)
2台目に据え付けたサーバプログラム
1.PeperMC(リージョン2) 住居、工場、クラフト中心に用いる
2.MariaDB(SQLサーバ) インベントリ共有、パーミッション共有、等
Server program installed on the first machine.
1. PaperMC (start) for flight (for fast chunk generation)
2. PaperMC (Region 1) for combat, reserve (used when many people do something)
3. WaterFall (Proxy)
Server program installed on the second machine
1. PeperMC (Region 2) Used mainly for residences, factories, and crafts
2. MariaDB (SQL server) Inventory sharing, permission sharing, etc.

 共通して、持ち運んだものが使えるように、今のところPluginやDatapackは各paperMCで統一してあります。(後で調整予定。)
Plugins and data packs are common across all paperMC servers. It is designed to be able to share what the user carries (inventory). (We will adjust it later.)

Plugin

Datapack

 現状バージョン1.19.3で動くものを入れていますが、1.19.4以上になった場合につかえなさそうなものは、使わないようにアナウンスしています。
I’m currently using one that works with version 1.19.3. However, we have announced to our users that we will not be using anything that we believe will not be available after 1.19.4.

The plug-ins for the proxy server (WaterFall) are as follows.

 1台のサーバで使えることのほかに、マルチサーバ上で使う上で重要なものは、LuckPerms(権限設定プラグイン)と、MysqlPlayerDataBridge(インベントリ共有化)です。これは必ず、各サーバから、1つのSQLサーバへの接続を要求します。
In addition to being usable on a single server, LuckPerms (privilege setting plug-in) and MysqlPlayerDataBridge (inventory sharing) are important for use on multiple servers. They always require a connection to one SQL server from each server.

 私はSQL言語は苦手でした。(できれば使いたくない。なぜならデバッグした場合に、どこまでデータベースを戻せばいいかがわからないからです。)しかし、ここ数日でその言語を学びました。
以下のWebが大変参考になりました。
Ubuntu22.04 MariaDBのインストールとデータベースの作成
I was not good at SQL language. (If possible, I don’t want to use it, because when I debug, I’m afraid I’ll have to rollback, and I don’t know how far I should roll back the database.)
I learned the language in a few days.
The following sites were very helpful.
Install Ubuntu22.04 MariaDB and create a database

MysqlPlayerDataBridgeと、LuckPermsについては、きちんとSQLサーバにつながらないといけません。しかし設定に時間がかかりました。とても簡単な記述間違いでつながりません。そのうえ、SQLのエラーlogを見ることを私が思いつかなかったためです。このことは多くの人が遭遇しているらしく、Git-HubのIssueでも製作者が嘆いているほどです。
MysqlPlayerDataBridge and LuckPerms must be properly connected to the SQL server. But it took me a while to set it up. I can’t connect because of a very simple mistake in the description. Besides, it never occurred to me to look at the SQL error log. It seems that many people have encountered this, and even the creator lamented it in a Git-Hub issue.

LuckPermsは大変優秀なプラグインです。すべてのサーバにおいて正しくパーミッションを再現してくれます。
LuckPerms is a very good plugin. It reproduces permissions correctly on all servers.

 しかし、インベントリの共有化については、新しいバージョンのプラグインがないため、有料のものを仕方なく使いました。(セキュリティ上仕方ありません)
However, since there is no new version of the plugin for inventory sharing, I had no choice but to use a paid one. (It can’t be helped for security reasons)

 

Minecraft,サーバ

Posted by masterkudo