驚くほど簡単だったのでメモ
javaの確認
おそらくデフォルトで入っていると思うんですが、一応確認。入っていない場合はsudo apt search openjdk-11-jre
とかで検索して新しめのを入れておきましょう。
which java
# /usr/bin/java
jave --version
# openjdk 11.0.5 2019-10-15
# OpenJDK Runtime Environment (build 11.0.5+10-post-Ubuntu-0ubuntu1.118.04)
# OpenJDK 64-Bit Server VM (build 11.0.5+10-post-Ubuntu-0ubuntu1.118.04, mixed mode, sharing)
minecraft-serverをダウンロードする
MINECRAFT: JAVA EDITIONのサーバーをダウンロードします
上から最新版のjar
を貰ってくる。今後のバージョン管理のため、リネームしてversion
を明記しておくと吉
cd /tmp
curl -LOS https://...
chmod 700 server.jar
mv server.jar minecraft_server_1_15_1.jar
とりあえず1回実行したろ
java -Xmx1024M -Xms1024M -jar minecraft_server_1_15_1.jar nogui
エラーで落ちるけど、eura.txt
とserver.properties
が生成される。要はEURA
に同意しないとダメだよっていうエラーなので、同意しましょう。
eura.txt
.
..
...
eura=false # trueに変更
server.properties
サーバーの設定ファイル。ip
とかport
とか変更出来る。デフォルトのport
はなんとなく怖いので変更してます。各々の環境に合わせて変更しましょう。
#Minecraft server properties
#Fri Jan 10 14:08:05 JST 2020
broadcast-rcon-to-ops=true
view-distance=10
max-build-height=256
server-ip=192.168.1.254 # default=
level-seed=
rcon.port=55575 # default=22275
gamemode=survival
server-port=55565 # default=22265
allow-nether=true
enable-command-block=false
enable-rcon=false
enable-query=false
op-permission-level=4
prevent-proxy-connections=false
generator-settings=
resource-pack=
level-name=world
rcon.password=
player-idle-timeout=0
motd=A Minecraft Server
query.port=55565 # default=22265
force-gamemode=false
hardcore=false
white-list=false
broadcast-console-to-ops=true
pvp=true
spawn-npcs=true
generate-structures=true
spawn-animals=true
snooper-enabled=true
difficulty=normal # default=easy
function-permission-level=2
network-compression-threshold=256
level-type=default
spawn-monsters=true
max-tick-time=60000
enforce-whitelist=false
use-native-transport=true
max-players=2 # default=20
resource-pack-sha1=
spawn-protection=16
online-mode=true
allow-flight=false
max-world-size=29999984
port開放
最後に、port
を開けます。Ubuntu
はufw
という超絶便利なツールがあるのでそれを使いましょう。
sudo ufw allow from 192.168.1.0/24 to any port 55565
sudo ufw allow from 192.168.1.0/24 to any port 55575
再度実行
なんかwarn
が流れてきますが、とりあえず動きます(解消法求む)
実際に運用する場合はもっと詰めて色々セキュアにしましょうね。
java -Xmx1024M -Xms1024M -jar minecraft_server_1_15_1.jar nogui
# 以下log
[15:15:42] [main/WARN]: Ambiguity between arguments [teleport, destination] and [teleport, targets] with inputs: [Player, 0123, @e, dd12be42-52a9-4a91-a8a1-11c01849e498]
[15:15:42] [main/WARN]: Ambiguity between arguments [teleport, location] and [teleport, destination] with inputs: [0.1 -0.5 .9, 0 0 0]
[15:15:42] [main/WARN]: Ambiguity between arguments [teleport, location] and [teleport, targets] with inputs: [0.1 -0.5 .9, 0 0 0]
[15:15:42] [main/WARN]: Ambiguity between arguments [teleport, targets] and [teleport, destination] with inputs: [Player, 0123, dd12be42-52a9-4a91-a8a1-11c01849e498]
[15:15:42] [main/WARN]: Ambiguity between arguments [teleport, targets, location] and [teleport, targets, destination] with inputs: [0.1 -0.5 .9, 0 0 0]
[15:15:42] [Server thread/INFO]: Starting minecraft server version 1.15.1
[15:15:42] [Server thread/INFO]: Loading properties
[15:15:42] [Server thread/INFO]: Default game type: SURVIVAL
[15:15:42] [Server thread/INFO]: Generating keypair
[15:15:43] [Server thread/INFO]: Starting Minecraft server on 192.168.1.254:55565
[15:15:43] [Server thread/INFO]: Using epoll channel type
[15:15:43] [Server thread/INFO]: Preparing level "world"
[15:15:43] [Server thread/INFO]: Reloading ResourceManager: Default
[15:16:48] [Server thread/INFO]: Loaded 6 recipes
[15:16:48] [Server thread/INFO]: Loaded 825 advancements
[15:16:49] [Server thread/INFO]: Preparing start region for dimension minecraft:overworld
[15:16:51] [Server thread/INFO]: Preparing spawn area: 0%
...
[15:17:06] [Server thread/INFO]: Preparing spawn area: 97%
[15:17:06] [Server thread/INFO]: Time elapsed: 16974 ms
[15:17:06] [Server thread/INFO]: Done (82.928s)! For help, type "help"
やったぜ。サーバー側の操作は終わり。
ただ、このやり方だとconsole
を閉じたりctrl-c
押したりするとserver
も落ちるので、バックグラウンドで動かしたり、systemctld
で管理させたほうが良いですね。
nohup java -Xmx1024M -Xms1024M -jar minecraft_server_1_15_1.jar nogui &
とりあえず動かすだけなら、上記のようにnohup ... &
で実行すると、バックグラウンドで動かせます。
ゲームから接続
実際にサーバーが動いたのを確認したら、マルチプレイヤーをやってみましょう。
- マルチプレイヤーを押す
- サーバーを追加
- ipアドレス:ポートを入力
- 接続!
終わり
お疲れさまでした。ところで、どなたかminecraft
を一緒にプレイして頂けるフレンズはいらっしゃいませんでしょうか??
私にはバグで未実装なようですので、よろしくお願いいたします。