[Mac][VPS][Ubuntu]VPSでMOD導入Minecraftサーバーを構築等する方法

## 要　旨
iMac及びVPSを使用して、Minecraftサーバー(NeoForge・JourneyMap MOD)を構築する方法について記述します。
## 実行環境等
操作コンピューター:iMac 2017年モデル
VPS:KAGOYA VPS KVM
OS:Ubuntu22.04LTS
CPU/メモリ　2コア/2GB(RAMは2GB以上必要)
ストレージ:25GB SSD
料金:24円/日　660円/月(2024.2.7時点)
MOD等:Minecraft1.20.4、neoforge-20.3.153-beta、journeymap-1.20.4-5.9.20p1-neoforge.jar
Minecraft Launcher:公式Minecraft Launcherをインストール済みとします。
## 実施要領
MODは、操作コンピューターとVPSの両方に同じディレクトリ名で作成する必要がある。
このため、まず操作コンピューターにインストールする。
NeoForge-20.4.153-beta(2024.2.7時点の最新版)のダウンロード
ブラウザでNeoForgeのサイトにアクセスする。
[https://neoforge.net/](https://neoforge.net/)
このサイトでNeoForge install fileがダウンロードできるので、最新版をダウンロードする。すると、neoforge-20.4.153-beta-installer.jarファイルがiMacのダウンロードディレクトリにダウンロードされる。
次にiMacにjavaがインスト流されているか、ターミナル開いて次のコマンドで確認する。
```linux
java --version
```
ここでjavaがインストールされてない旨の表示があれば、以下のサイトからダウンロード・インストールする。
[https://www.azul.com/](https://www.azul.com/)
javaがインストールされたか確認する。
```linux
java --version
```
ここでFinderを開いて、ダウンロードディレクトリ内のダウンロードされたインストールファイルをダブルクリックしてインストールを実施する。
インストールされたディレクトリは、
/Users/(ユーザー名)/Library/Application Support/minecraft/versions内に、
neoforgr-20.4.153-betaディレクトリが作成されている。
JourneyMap MODをダウンロードする。
JourneyMapサイトよりダウンロードする。URLは、以下の通り。
[https://www.curseforge.com/minecraft/mc-mods/journeymap](https://www.curseforge.com/minecraft/mc-mods/journeymap)
公式Minecraft Launcherを起動する。
画面左下にNeoForge neoforge-20.4.153-betaと表示されているのを確認する。表示されてなければ、これを選択する。
起動構成タブをクリック
NeoForge neoforge-20.4.153-betaタブをクリック
名前:任意に設定
バージョン:release neoforge-20.4.153-betaを選択
ゲームディレクトリ:/Users/(ユーザー名)/Library/Application Support/minecraft/versions/neoforge-20.4.153-betaに設定
保存タブをクリック
プレイタブをクリック
プレイタブをクリックして、Minecraft Neoforge 1.20.4を起動させる。
ModsタブをクリックーOpen mods folderをクリック
ここで、先ほどダウンロードしたJourneyMapの MODファイルjourneymap-1.20.4-5.9.20p-neoforge.jarを入れる。
入れたら、Minecraft Launcherを再起動する。
これでiMac内に各種MODがインストールされ、Minecraftのシングルプレイは可能となる。

続いてVPSの構築を実施する。
ユーザーはrootで実施しました。
アップデートとアップグレードを行う。
```linux
apt update
```
```linux
apt upgrade
```
javaがインストールされているか確認する。
```linux
java --version
```
インストールされていなければ、以下のコマンドでjavaとscreenをインストールする。(Ubuntu22.04LTSにはjavaはインストールされていない)
```linux
apt install openjdk-19-jre-headless screen
```
javaがインストールされたか確認する。
```linux
java --version
```
iMacに作成されたNeoForgeと同じ名前のディレクトリを新規作成する。
```linux
mkdir /root/neoforge-20.4.153-beta
```
作成したneoforge-20.4.153-betaディレクトリに移動する
```linux
cd /root/neoforge-20.4.153-beta
```
ここでsftp通信により、iMacにダウンロードしたNeoForge installerファイルを/root/neoforge-20.4.153-betaディレクトリに配置する。
配置したneoforge-20.4.153-bata-installer.jarファイルによりインストールする。
```linux
java -jar neoforge-20.4.153-bata-installer.jar --nogui --installServer
```
作成されたrun.shを一旦起動する。
```linux
./run.sh
```
ここでeulaへの同意が必要となる。(利用規約への同意)
```linux
vi /root/neoforge-20.4.153-beta/eula.txt
```
ここで以下のように変更する。(falseからtrueへの変更)
```linux
eula=true
```
viエディタを保存して終了。
次にRAMの最大容量を設定する。今回は2GBのRAMのVPSを使用したので、以下のように変更する。(デフォルトでは、4GBの設定である。)
```linux
vi /root/neoforge-20.4.153-beta/user_jvm_args.txt
```
```linux
-Xmx2G
```
viエディタを保存して終了。
run.shを再び起動して、正常に動作するのを確認する。(successfullyが表示されれば成功)
```linux
./run.sh
```
正常に動作すれば、Ctrlキーを押したままcキーを押して、一旦終了させる。
次いでMODのJourneyMapをインストール時に作成されたmodsディレクトリに、iMacにダウンロードしたjourneymap-1.20.4-5.9.20p1-neoforge.jarファイルをsftp通信により配置する。
そしてVPSを再起動した際にrun.shが起動するようにcrontabに記述する。
その前準備として、run.shファイルに追記する。
```;inux
vi /root/neoforge-20.4.153-beta/run.sh
```
#!/usr/bin/env shのシバン行の次の行に
```linux
cd /root/neoforge-20.4.153-beta
```
を追記してviエディタを保存して終了する。
crontabの登録
```linux
crontab -e
```
```linux
@reboot /root/neoforge-20.4.153-beta/run.sh
```
上記内容で保存してcrontab編集画面を終了する。
crontabに正しく登録されたかを確認する。
```linux
crontab -l
```
screenを使用して、run.shを起動して動作を確認する。
```linux
screen ./run.sh
```
ここでオペレーター権限を付与したいプレイヤーに、オペレーター権限を付与しておく。
screen画面で、
```linux
op <プレイヤーID>
```
最後に正常な起動を確認したらCtrlキーを押したままaキーを押し、次いでdキーのみを押す。
これでコンソール画面に戻る。この状態でVPSからログアウトしてもrun.shは起動状態を保つ。
これでVPSサーバーの構築完了です。

あとはMinecraft Launcherを起動させて、マルチプレイからVPSに接続すればMOD導入のMinecraftゲームが実施できます。
以上で終了です。お疲れ様でした。
## 結　言　
今回は、iMac及びVPSを使用して、Minecraftサーバー(NeoForge・JourneyMap MOD)を構築する方法について記述しました。
最後までお読みくださり、ありがとうございました。