⛏️

すごく雑にプラグインサーバーを立てる

2023/11/14に公開

プラグインサーバー

プラグインサーバーにはいくつか種類があります。
すべての源流Bukkitや、それの派生SpigotPaper
MODとプラグインが両方使えるMagmaなど、様々ありますが現状Paper一択といったところでしょうか。
理由は軽量かつビルドが不要であるからです。

ビルド?

SpigotはBukkitのフォーク版ですが、権利の関係でjarを配布できないとかなんとかでサーバーのjarをユーザーがビルドしなきゃなりません。
paperはユーザーが自分でビルドをしなくても大丈夫らしい。そのからくりは次の記事を読んでみてください。
https://zenn.dev/seraimu/articles/927d2c3842baf9

まぁええわ立て方よ

最新版である1.20.xでの立て方ね。それ以外は知らね。

javaのインストール

sudo apt update && sudo apt upgrade -y && sudo apt install openjdk-17-jre

これ実行するだけ。yumはcentos使ってないから分からん。

jarのダウンロード

https://papermc.io/downloads/paper
にアクセスして、

青いボタンのURLをコピーします。
適当にサーバー用のディレクトリを作成してcdコマンドでディレクトリに入ります。

curl -o server.jar <コピーしたURL>

これでserver.jarという名前でjarファイルがダウンロードされました。

起動

初回起動です。

java -jar server.jar nogui

で起動。多分途中で止まります。

[09:14:14 WARN]: Failed to load eula.txt
[09:14:14 INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

利用規約に同意する必要があるからeula.txtを確認してねということらしい。vimとかnanoで開きます。

nano eula.txt

eula=falseeula=trueに書き換えるだけの簡単なお仕事です。+とか-はいらないですよ?diffハイライトなんで。

#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://aka.ms/MinecraftEULA).
#Tue Nov 14 09:14:14 JST 2023
- eula=false
+ eula=true

そしたらもう一回起動しましょう。次はちゃんと立ち上がるはずです。

[09:19:14 INFO]: Done (5.222s)! For help, type "help"
[09:19:14 INFO]: Timings Reset
>

stopでサーバーを停止。Ctrl+Cはワールドの保存が行われずデータが飛ぶ可能性があるので辞めましょう。

起動用スクリプトを書く

起動するためのシェルスクリプトを書いていきます。必須ではないですがあったほうが良いので準備します。
内容はこんな感じ。

start.sh
#!/bin/bash
screen -Sdm minecraft java -jar -Xmx8G -Xms8G -jar server.jar nogui

screenで起動するようにする。それじゃないとSSHコンソール閉じたら停止するからね。

chmod +x start.sh

でパーミッションを設定。

./start.sh

で実行できます。

プラグインを入れる

プラグインは/pluginsフォルダにjarファイルをぶっこむだけです。
適用するには再起動しなくちゃなりませんが次のプラグインを入れると全てではないですが再起動しなくても良くなります。
https://www.spigotmc.org/resources/plugmanx.88135/
をダウンロードしてプラグインフォルダに配置。再起動しましょう。

使い方

プラグインの読み込み

plugman load <プラグインの名前>

プラグインの再起動

plugman restart <プラグインの名前>

プラグインの再読み込み

plugman reload <プラグインの名前>

次はおすすめというか入れとくと良いかもしれないプラグインです。

  • ViaVersion & ViaBackward
  • LunaChat
  • CoreProtect
  • LuckPerms
  • Spark

どんなプラグインかはググってみてください。

以上

雑じゃなく結構丁寧目になってしまいました。この手の記事はブログにいっぱいありますがたいていレンタルサーバーのアフェリエイトですからね。
私そういうの嫌い。プラグイン開発の勉強も始めたのでなにか作ったら上げるかもしれまっせん。

Discussion