阪駒際マイクラ鯖に関する情報など

大学祭で稼働させるためのマインクラフトサーバーの備忘録

仮設営のサーバ環境

現在、部室サーバとは別のコンピュータで稼働中

  • CPU: Intel Core i7 4930K 3.4GHz
  • RAM: 16GB
  • OS: Ubuntu 24.04 LTS

neofetchによるシステム情報の確認
image

MCサーバー (Paper 1.21.4)

今年はMinecraft 1.21.4、PaperMCでサーバをセットアップします。

https://fill-ui.papermc.io/projects/paper より PaperMC をダウンロードしました。
/home/denken/workspace/paper1214/paper-1.21.4.232.jar として設置。
セットアップ時はwgetで操作してましたが、FileZillaでも構いません。

なおあらかじめ、playitとscreenを導入してます。

/home/denken/run.sh にて以下のファイルを作成

screen -S mcserver -d -m bash -c "cd ./workspace/paper1214/ && sh run.sh"
screen -S playit -d -m playit
screen -ls
echo "シェルに入るには: screen -r mcserver"

playitで外部から参加可能にしています。
また、screenを利用して複数のプロセスを操作できるようにしています。

導入プラグイン

プラグインはMCサーバーのplugins/ に入っています。 GeyserMCとFloodgateを用いて統合版(Bedrock Edition)からサーバへ参加できるようにしました。

  • Chunky-Bukkit-1.4.40.jar
  • CrackShot.jar
  • DiscordSRV-Build-1.29.0.jar
  • Elevator.jar
  • FastAsyncWorldEdit-Paper-2.13.1.jar
  • Geyser-Spigot.jar
  • GeyserExtras-Spigot.jar
  • GeyserSkinManager-Spigot.jar
  • ImageFrame-1.8.7.0.jar
  • LuckPerms-Bukkit-5.5.17.jar
  • LunaChat.jar
  • PlugManX-3.0.2.jar
  • QuickShop-Hikari-6.2.0.10.jar
  • SkinsRestorer-Mod-15.8.2-fabric.jar
  • ViaBackwards-5.5.1.jar
  • ViaRewind-4.0.11.jar
  • ViaVersion-5.5.1.jar
  • floodgate-spigot.jar
  • sit-1.7.1.jar
  • worldedit-bukkit-7.4.0-beta-01.jar
  • worldedit-selection-viewer-1.5.jar
  • worldguard-bukkit-7.0.13-dist.jar

WorldEditについて

WorldEdit、FastAsyncWorldEdit(FAWE)、WorldEdit Selection Viewrの3つを導入しています。
これらを利用することによって建築など簡易的にコマンドで作成できます。ブラシなどといった機能もあるため、利用してみてください。

WorldEdit Selection Viewrによって選択範囲が可視化されます。

DiscordSRVのセットアップ

  1. plugins/DiscordSRV/config.yml を開きます。
  2. BotToken: "" に Discord botのトークンを設定
  3. Channels: {"global": "000000000000000000"} の 000000000000000000 をチャンネルIDに変更 (このチャンネルはマイクラとDiscordのチャットをリンクするためのチャンネルです)
  4. Experiment_WebhookChatMessageDelivery: true にすることでウェブフックを利用できます。
  5. LunaChatを使っている場合、DisabledPluginHooksに["LunaChat"]を追加します。

LunaChatとDiscordSRVの競合解決

LunaChatのconfig.ymlのplayerChatEventListenerPriority:'LOWEST' に変更します。

CLIでのSSH接続

10/31追記

ターミナルでssh <ユーザ名>@<接続先アドレス>を実行するなどしてサーバにSSH接続する。

ssh denken@denken-mc

DOS窓などで上記のコマンドを実行してssh接続できます。(ホスト名をわかりやすくdenken-mcに変更しました)

Are you sure you want to continue connecting (yes/no/[fingerprint])?
と表示されますが、そのまま yes と入力します。

denken@<IPアドレス>'s password: ではパスワードを入力します。

- 10/30

Windowsなどのクライアントにて以下のコマンドssh <ユーザ名>@<接続先アドレス>を実行し、サーバにSSH接続する

ssh denken@<IPアドレス>
  1. IPアドレスは Windowsであれば arp -a | findstr 192.168 で確認することができる。
  2. もしくは、TailscaleのVPN経由で外部からもアクセス可能だ。Tailscaleのネットワーク一覧から確認すること。

image
(ユーザ名やIPをここまで隠す必要はないかと思いますが、念のため内部に不正侵入された場合のヒントにならないように考慮)

denken@<IPアドレス>'s password: ではパスワードを入力します。

FileZillaからのSSH接続

SFTPを利用してサーバへ接続することでファイル操作が簡易的にできます。(ここで注意、FTPSではありませんよ)

image

メモ

neofetch の導入

sudo apt-get update
sudo apt install neofetch
neofetch